Commit Graph

3202 Commits

Author SHA1 Message Date
stefan schippers 136a61b4fc various enhancements / fixes in file_chooser; removed new_file_browser_paths 2025-10-05 12:38:24 +02:00
stefan schippers bbfe350e3f proc file_chooser_place: dont do anything if semaphore >0 2025-10-05 04:44:45 +02:00
stefan schippers 96293738ce new file browser (proc file_chooser): fix showing subdirs with spaces 2025-10-05 03:48:40 +02:00
stefan schippers 56019e3e31 new file browser (proc file_chooser) refactor with many improvements, enabled with "set new_file_browser 1" 2025-10-05 03:01:37 +02:00
stefan schippers 8552331961 refactor some procedure names and variables in proc insert_symbol 2025-10-01 23:21:37 +02:00
stefan schippers 0db270fd1e swap_windows(): hack to fix some window managers failing to set window to exact specified position 2025-10-01 16:35:08 +02:00
stefan schippers 273175b4ff proc get_list_of_dirs_with_files: do not return duplicate directories (this could happend if traversing a list of supplied paths with multiple descend levels the same directory is reached multiple times) 2025-10-01 11:12:09 +02:00
stefan schippers 77db999d35 process_options(): better error report if giving non existent short option(s) 2025-10-01 09:42:52 +02:00
stefan schippers b2e12251dc set_initial_dirs: do not reset INITIAL*DIR if already set 2025-09-30 09:38:19 +02:00
stefan schippers 15c141a480 removed unneeded Shift-Backspace and Ctrl-Backspace keybindings, add Ctrl-Shift-T for open last closed (Ctrl-Shift-O already opens most recent). Tcl var "open_in_new_window" will open in new tab/windows as does ctrl-o 2025-09-29 23:30:31 +02:00
stefan schippers 50c593ed65 various fixes about "lastopened" and "lastclosed" file load options 2025-09-29 13:38:52 +02:00
stefan schippers 8d2088edd5 avoid double "is already open" warning when doing Shift-Backspace or Ctrl-Backstapce when schematic already loaded 2025-09-29 10:23:43 +02:00
stefan schippers 9b6e0c697f avoid usage of tk / tk_scaling if no X 2025-09-29 09:43:54 +02:00
stefan schippers 2195596902 implement -lastclosed and -lastopened options in "xschem load" and "xschem load_new_window" commands 2025-09-29 09:28:24 +02:00
stefan schippers 5b1255654e if --lastopened or --lastclosed is specified any file specified on cmdline is considered an additional file to load 2025-09-29 01:21:48 +02:00
stefan schippers bdd09f2db2 add cli options --lastclosed and --lastopened, as well as gui commands Shift-Backspace and Ctrl-Backspace to load last closed or last opened schematic respectively 2025-09-28 23:47:45 +02:00
stefan schippers 94a0a6a2f9 save timestamp in .xschem/geometry and order (last closed first) 2025-09-28 11:39:46 +02:00
stefan schippers 00ad8c9b3b move a pending_fullzoom=1 before a set_geom to avoid missing drawing 2025-09-28 11:06:22 +02:00
stefan schippers cd2aed9e08 move an update instruction in proc set_geom to avoid yet another possible race condition 2025-09-28 10:49:48 +02:00
stefan schippers 87dc376df7 when closing all windows of xschem (in no tabbed mode) avoid unexpected context switches when the "unsaved data" alert is shown, possibly leading to segfault 2025-09-28 09:43:39 +02:00
stefan schippers 63d1897050 various fixes in persistent window geometry save 2025-09-27 03:15:43 +02:00
stefan schippers e8d29c9b42 avoid context switching when opening a new window until new window creation finished (use xctx->pending_fullzoom) 2025-09-27 01:02:36 +02:00
stefan schippers 8043c2af75 source $tcl_files *after* setting default bindings (set_bindings), otherwise additional bindings defined therein will stop working 2025-09-26 23:51:55 +02:00
stefan schippers bbfe761c18 initial_geometry if set in xschemrc has priority over persistent geometry placement 2025-09-26 23:39:50 +02:00
stefan schippers ed9f069752 better avoidance of race conditions between wm and Xevents when placing multiple windows (potential uncaught events) 2025-09-26 18:39:06 +02:00
stefan schippers 0fa05df6ab reset window placement geometry if it happens to be (too much) offscreen 2025-09-26 17:08:07 +02:00
stefan schippers 05e7f36148 replace const string literal XSCHEM_LIBRARY_PATH with array of const string literals, one per path, to get rid of C89 509 character limit 2025-09-26 15:57:40 +02:00
stefan schippers e1bb16ccf1 remove dbg info 2025-09-26 13:04:04 +02:00
stefan schippers a77a10523d allow "xschem switch" also if started without X 2025-09-26 12:59:38 +02:00
stefan schippers 921dcdd506 2 - more window focus / Xevent scheduling related issues, cleanups 2025-09-26 12:51:04 +02:00
stefan schippers 214d18d3df more window focus / Xevent scheduling related issues, cleanups 2025-09-26 12:27:05 +02:00
stefan schippers 5ee7af7b02 set focus inside topwin.drw in proc set_bindings 2025-09-26 11:20:44 +02:00
stefan schippers bd085d2e4f pressing "OK" in symbol editprop dialog box with no changed attributes will not mark schematic as modified 2025-09-26 03:24:32 +02:00
stefan schippers f6620bf6b2 some other fixes for set_geom 2025-09-26 03:05:34 +02:00
stefan schippers ee7e3a965e fix various focus issues in drawing canvas 2025-09-26 01:54:21 +02:00
stefan schippers de7e952f7e typo fix, add -takefocus 0 to toplevel schematic windows 2025-09-26 01:15:27 +02:00
stefan schippers 4fb9ffb766 small button syntax change for readability 2025-09-26 00:58:50 +02:00
stefan schippers 4767e5925e move procedure in different place (before MAIN in xschem.tcl) 2025-09-26 00:25:31 +02:00
stefan schippers 477b4bb37e some fixes about remembered window sizes 2025-09-25 19:37:03 +02:00
stefan schippers e5d933907a Visual Ngspice/VACASK analysis setup from arpadbuermen/master PR #426; remember window geometries of last closed schematics 2025-09-25 16:12:17 +02:00
stefan schippers acce159521 proc insert_symbol: remove sorting of directories. Use the order defined in XSCHEM_LIBRARY_PATH 2025-09-25 00:08:37 +02:00
stefan schippers 6be62c2693 move global var "recentfile" to tctx:: 2025-09-24 22:41:57 +02:00
stefan schippers 2493367140 better reload recent component list when changing search paths 2025-09-24 19:20:56 +02:00
stefan schippers 4155387e0d set_paths: correctly swap recent component list when changing search paths 2025-09-24 13:06:23 +02:00
stefan schippers ad31f65a61 move delay_flag global into tctx:: 2025-09-24 12:25:21 +02:00
stefan schippers 2f33d86f69 fix regression: Properties->Edit Header/License text; fix keybinding documentation for Shift-Tab, Ctrl-Shift-Tab and Ctrl-Tab (switch tabs) 2025-09-24 12:11:31 +02:00
StefanSchippers 2da2ad0cfb
Merge pull request #424 from arpadbuermen/master
Visual Ngspice/VACASK analysis setup.
2025-09-24 08:59:25 +02:00
stefan schippers 6a522a853b better source_user_tcl_files (do the [subst $tcl_files] at global scope so variables like pathlist can be used) 2025-09-23 23:36:44 +02:00
stefan schippers 49bed53ba1 tcl_files: do a tcl "subst" on tcl_files before sourcing file items, so xschem commands (like abs_sym_path) can be used 2025-09-23 22:40:05 +02:00
stefan schippers f3334cea27 evaluate xschemrc "postinit_commands" before loading schematics given on cmdline 2025-09-23 22:19:19 +02:00
Árpád Bűrmen aa72bed12b Visual Ngspice/VACASK analysis setup. 2025-09-23 10:19:06 +02:00
stefan schippers a2529cad5d allow backslash + newline as continuation of comma separated bus bit names in graphs 2025-09-23 03:19:57 +02:00
stefan schippers aa2d8b1b09 better implementation of previous commit 2025-09-23 02:42:13 +02:00
stefan schippers 6ca06347b6 when switching to a different tab/window the related schematic will be marked as dirty (asterisk) if underlying file is changed. 2025-09-23 02:08:17 +02:00
stefan schippers b5de718d63 fix an issue with compare schematics (set tcl compare_sch variable after calling xschem compare_schematics) 2025-09-23 01:39:59 +02:00
stefan schippers 916027ddba cleanup code for add and delete waves in graphdialog 2025-09-22 17:33:28 +02:00
stefan schippers 70ee45f812 add Del button in graphdialog: better undo handling 2025-09-22 16:56:32 +02:00
stefan schippers 9277a844e5 add Del button in graphdialog to delete a wave preserving colors of all others 2025-09-22 16:51:38 +02:00
stefan schippers c41d4a42ba make wave change color undoable 2025-09-22 15:37:20 +02:00
stefan schippers f6b05b15e1 in graphdialog move colors above Add: button 2025-09-22 15:18:56 +02:00
stefan schippers ac4e7fc7fb inserting a wave with Add button in graphdialog will preserve previous wave colors 2025-09-22 14:23:27 +02:00
stefan schippers bd0e07fbe7 proc graph_tag_nodes: better tagging of multi-line nodes that use escaped newlines 2025-09-22 12:06:12 +02:00
stefan schippers 65fe79e621 refactor proc graphdialog_set_raw_props to proc graph_set_raw_props 2025-09-22 10:56:05 +02:00
stefan schippers ba259b751d descend instance in case of vectored instances. Pressing Cancel when asked which instance to descend into aborts instead of descending into first instance 2025-09-22 10:21:50 +02:00
stefan schippers ad9ad03810 proc traversal: better show indentation of sub blocks 2025-09-21 23:42:04 +02:00
stefan schippers c67aa48c03 send_net_to_graph(): resolve ports of subcircuits to topmost net names 2025-09-21 23:02:17 +02:00
stefan schippers 356b9fb008 small layer color changes 2025-09-21 14:58:16 +02:00
stefan schippers e4dac334a9 show all layers (including layers 0,1,2,3) in wave dialog box 2025-09-21 08:07:16 +02:00
stefan schippers 9f11ff4924 minimum width of bold waveforms set to 2*tk_scaling, so will be visible even if zoomed out a lot 2025-09-20 21:58:36 +02:00
stefan schippers cfff96093d fix crash if doing alt-g on a subschematic port and no raw file loaded (send_net_to_graph()) 2025-09-20 09:28:33 +02:00
stefan schippers ca786b60ab fix error "invalid command name .processlist.f2.lib" in process list and status view 2025-09-19 23:34:35 +02:00
stefan schippers 4428c2ab67 find_closest_box(): allow selection of rectangles if clicking close (close-in or close-out) to the rectangle border. 2025-09-19 23:11:24 +02:00
stefan schippers 318323267c some comments in spice.awk 2025-09-19 18:42:47 +02:00
stefan schippers 2d81de2166 remove old stuff from spectre.awk (was from spice.awk, irrelevant for spectre) 2025-09-19 18:28:42 +02:00
stefan schippers 46ffdfcf8c preserve indentation (if present in spectre_forat attr) in spectre netlists 2025-09-19 18:03:19 +02:00
stefan schippers 92bc9cad34 some fixes for gcc-15 (-std=c23), smaller threshold for click & move that will abort move, added smaller verilog cosim example (tb_counter_wrapper.sch), arbitrary top level names allowed in create_new_window() and switch_window() (no tabbed interface) 2025-09-19 14:18:06 +02:00
stefan schippers 1f52d630f5 better distance threshold tuning for object selection 2025-09-15 09:18:25 +02:00
stefan schippers 987faa1a41 set tk_scaling C variable global, updated in draw(), caching tcl tk_scaling variable, add tk_scaling in threshold expression in find_closest_*() functions 2025-09-15 01:38:10 +02:00
stefan schippers ee920560ff update docs for new bindkeys 2025-09-13 11:06:00 +02:00
stefan schippers dbdfb3015e implement Alt-o and menu "File->Open in new window" 2025-09-13 10:46:14 +02:00
stefan schippers 17c5d229db fix Tab key moving focus (as per tk default action) to avoid having focus changed (keyboard not working any more in canvas) if Ctrl-Tab is pressed to switch to previous tab 2025-09-13 10:16:23 +02:00
stefan schippers 44a80ed200 rename open_in_new_window_or_tab to open_in_new_window 2025-09-12 12:47:05 +02:00
stefan schippers 2bd0cd3e4b fix: open_in_new_window_or_tab TCL var should be unique (no one per window context) 2025-09-12 12:41:09 +02:00
stefan schippers 1b3d0dd9f6 add xschemrc variable open_in_new_window_or_tab (default: 0) to let File->Open open in a new tab/window 2025-09-12 12:16:47 +02:00
stefan schippers 60f5f7f291 when closing a tab switch to previous instead of first tab 2025-09-12 11:23:41 +02:00
stefan schippers c87b6aeb2e fix typo in eval_expr.y: add tan() function (was exp() due to copy/paste error) 2025-09-11 09:02:28 +02:00
stefan schippers e37aed78c9 global namespace cleanup (retval, retval_orig) 2025-09-11 00:23:03 +02:00
stefan schippers 20bccdc589 global attribute editing: add a Mode: combobox to select the global attribute to change: spice/vhdl/verilog/symbol/.... 2025-09-10 19:26:25 +02:00
stefan schippers e5a3ac19b8 move.c: better debug msg 2025-09-10 15:06:15 +02:00
stefan schippers 37d41151bc right use of tk_scaling in sticky click + move 2025-09-10 13:49:27 +02:00
stefan schippers c301a5ed67 increase debug level of some unimportant messages 2025-09-10 13:04:07 +02:00
stefan schippers 43109725fd remove debug event printouts 2025-09-10 10:31:36 +02:00
stefan schippers bd477bcf23 tcl 8.4: avoid -nolinestop, do not pack combobox labels in dialogs 2025-09-10 09:53:12 +02:00
stefan schippers e7ed61a6b0 avoid use of -tabstyle for tcl-tk 8.4 2025-09-10 08:09:09 +02:00
stefan schippers 1a898f63ef proc is_xschem_file: if symbol contains instances of "logo" or "launcher" type do not consider it as a schematic. add "xschem get_sym_type" command 2025-09-09 11:24:39 +02:00
stefan schippers 3efe7bfbec button3 right click on signal names in graphs works now better, no context menu in the way. 2025-09-09 00:09:29 +02:00
stefan schippers aa493783ac better inner border selection area for graphs, easier to right click on signal names 2025-09-08 09:54:57 +02:00
stefan schippers b72c6885b9 xschem show_unconnected_pins: hilight unconnecteds even if netlist not extrated or hilights cleared after netlisting 2025-09-07 15:42:43 +02:00
stefan schippers 458de325cc add command "xschem attach_labels 2" to attach lab_show.sym on selected component with unconnected pins, add command "xschem show_unconnected_pins" to add to all instances, added also in Highlight menu 2025-09-07 13:06:47 +02:00
stefan schippers 04f2586c9c fix previous commit: do not affect ctrl-shift drag (move adding wires in separated pins) 2025-09-07 00:27:12 +02:00
stefan schippers f6565977dc intuitive interface. Set xctx->mouse_moved if movement is above a certain threshold in *screen* units (actally 10pixels * tk_scaling). This avoids unintended click + move, when user just wants to click an instance. 2025-09-06 12:42:53 +02:00
stefan schippers 78fdab27fc fix typo in "".menubar entryconfigure Simulate -background" in actions.c:set_modify() 2025-09-02 21:31:08 +02:00
stefan schippers 37d74d4470 comment out a focus line in "proc set_bindings" as it prevents from focusing snap and grid entries. Will check if someone has issues with main canvas focus 2025-09-02 15:25:36 +02:00
stefan schippers 649eae6ac3 hierarchical ps/pdf export: fix embedded images rendering in sub schematics down in hierarchy 2025-09-02 02:12:47 +02:00
stefan schippers 465e715e48 add info (*BUSY*) in status bar if xschem is busy (for now: when doing logic simulation) 2025-08-28 10:00:21 +02:00
stefan schippers 7c013d2fee allow to add attribute select=attr_name also in instances to override symbol setting, will pre-select attr_name value when editing component attributes 2025-08-26 10:57:57 +02:00
stefan schippers 3e3f4bfef1 adding select=attr_name in a symbol will select the text of attr_name value when editing attributes of a placed instance of the symbol. Specifying select=* will select all the text. If select attribute in symbol is not present try to select "value, lab, name" in this order, if found. Also select all text in text objects when editing their content. 2025-08-26 10:46:50 +02:00
stefan schippers 48968f0e71 Fix: aborting a ctrl-v (paste) with escape did leave copied objects on top of previous if no second Esc was pressed 2025-08-25 09:43:34 +02:00
stefan schippers 010a31d779 easier selection of graph rectangles (click inner border), add graph resize in intuitive_interface_cheatsheet.sch 2025-08-24 17:41:00 +02:00
stefan schippers 5338deac78 add erc_open_net_is_error and erc_shorted_output_is_error xschemrc variables to turn related ERC warnings into errors (force popup ERC window) 2025-08-23 00:35:27 +02:00
stefan schippers a9e4bc1300 add `y`or `Return` and `n` hotkeys to dismiss ask save confirmation dialog 2025-08-23 00:11:10 +02:00
stefan schippers 3b08bf8f7c add Esc binding for closing view data dialogs. Add no_ask_simulate variable to avoid asking confirmation to simulate 2025-08-22 23:55:40 +02:00
stefan schippers d6d39bdb5f proc swap_tabs: fix B1-Motion event clear 2025-08-22 15:44:15 +02:00
stefan schippers f27d4b9773 ctrl-Tab: toggle to previously active tab: make it work also after new tab creation 2025-08-22 15:39:19 +02:00
stefan schippers fc6fefff35 ctrl-Tab: toggle to previously active tab (only tabbed i/f) 2025-08-22 12:09:04 +02:00
stefan schippers 61517b388f remove debug msg 2025-08-22 10:05:48 +02:00
stefan schippers d6c8ab2efc add visual feedback when dragging tabs 2025-08-22 10:04:53 +02:00
stefan schippers e64f76a4fd avoid additional "escape char eating" when rendering symbol texts (translate() + translate3() ) 2025-08-22 00:08:22 +02:00
stefan schippers 3c65268de6 do not backannotate if cursor_b is not enabled when swapping or setting with CLI the cursor_b position 2025-08-21 21:18:35 +02:00
stefan schippers 3b104995fc check if cursor-b is enabled before annotating cursor-b position after descending schematic 2025-08-21 20:49:57 +02:00
stefan schippers 07e79908f1 add Ctrl-Tab and Ctrl-Shift-Tab as aliases to ctrl-Right and ctrl-Left (switch tabs), also add wrap around (last->first or first->last). 2025-08-21 10:23:58 +02:00
stefan schippers d778a738b2 add "Waves->Load first analysis found" so xschem will load first section found in raw file (and matching following ones if any) 2025-08-20 08:53:50 +02:00
stefan schippers 0657c44e02 select by area or select by touch: select also attached objects as done in select by click or select all 2025-08-20 08:37:47 +02:00
stefan schippers 854b0969a7 fix "xschem get netlist_name" command for spectre (.spectre ext instead of .sim) 2025-08-19 12:04:20 +02:00
stefan schippers 059ac92695 fix catch command in tclvareval(....menubar entryconfigure ...) commands 2025-08-19 09:00:09 +02:00
stefan schippers cd41540c5d record_global_node(): handle ground nodes (spectre netlist only); use global=ground for nodes that need to be declared as ground nodes. Ground nodes in Spectre netlist are also considered global 2025-08-19 08:37:33 +02:00
stefan schippers 7e20ea0127 catch all calls to .menubar entruconfigure commands to change bg color of buttons to avoid errors if buttons are removed 2025-08-09 10:57:17 +02:00
stefan schippers 24ff9ab8f0 xinit.c: source tcl_files before calling load_schematic(), so "load_file_postprocess" (that is triggered by load_schematic() will work (supplied scripts are already loaded) when starting xschem 2025-08-09 10:41:03 +02:00
stefan schippers 6bf4fd4da6 vector unnamed nets are set as net%d_[%d..0] instead of net%d[%d:0] so they are compatible with spice and Vacask 2025-08-03 00:15:57 +02:00
stefan schippers 46fdeb2fd4 additions for VACASK backannotation (vsource currents). nmos4.sym updated to support Spectre netlist (Vacask simulation) 2025-08-02 12:40:43 +02:00
stefan schippers 4cf22d61a5 bump file_version to 1.3 from 1.2 (Spectre global attribute F {...}) 2025-08-01 10:37:18 +02:00
stefan schippers 06dfef3876 fix spectre.awk postprocessor (subckt instead of spice .subckt) 2025-08-01 09:52:41 +02:00
stefan schippers 68f84ea9f2 other small improvements in XSCHEM_SHAREDIR buildup in xinit.c 2025-07-28 00:12:21 +02:00
stefan schippers 9e22068651 small improvements in XSCHEM_SHAREDIR path building ( Check installed location (/path/to/bin/../share/xschem -> /path/to/share/xschem)) 2025-07-28 00:04:38 +02:00
stefan schippers 957dba4c30 if src/xschem is invoked do in-src execution even if called outside teh src/ dir 2025-07-27 10:34:24 +02:00
stefan schippers edcd141a22 updates for Vacask netlister 2025-07-25 14:53:15 +02:00
stefan schippers 6f6f4a3028 allow @model as alternative to @symname in format strings (format and spectre_format) of subcircuit symbols, where "model=something" is given in symbol template string. This allows to use subcircuit with name that is different from the filename. 2025-07-21 08:31:42 +02:00
stefan schippers aa99f1b174 add "spectre_device_model" attr in spectre netlister code 2025-07-21 07:57:14 +02:00
stefan schippers 5a3c97d64e add vccs_limit.sym and vcvs_limit.sym that use the XSPICE limit code model (saturated controlled sources). [WIP] support for spectre netlist format (for the VACASK simulator) - still incomplete 2025-07-16 00:12:26 +02:00
stefan schippers f5bd459082 add new xschemrc global variable "load_file_postprocess" that might contain tcl commands to be executed whenever a new file is loaded. 2025-07-09 10:37:18 +02:00
stefan schippers 8fe82cf4ce set netlist_dir if unset or empty before netlisting, add env(PDK) and env(PDK_ROOT) to list of tcl preserved globals in ctx switch 2025-07-02 11:18:20 +02:00
stefan schippers 2300597ca3 propagate hilight nets when descending with "Alt-e" (in new window or tab) - ***needs some testing*** 2025-06-23 09:39:46 +02:00
stefan schippers ec57806816 spice.awk: allow to expand nodes placed after an = sign as in some cdl netlists: $SUB=@@B --> $SUB=?1 B --> spice.awk --> $SUB=B 2025-05-30 21:16:48 +02:00
stefan schippers 96d2e56b53 add expr_eng(...) in addition to expr(...) to return result in engineering notation (like 3.2u) 2025-05-30 00:37:27 +02:00
stefan schippers b4283563d0 fix from_eng proc (meg was not handled correctly) 2025-05-29 21:09:43 +02:00
stefan schippers d123768fed fix from_eng proc (a comment added breaks the switch construct) 2025-05-29 21:04:47 +02:00
stefan schippers dcc64636cf propagate highlighted global nets when navigating the hierarchy 2025-05-27 09:39:06 +02:00
stefan schippers 44cbe7a9fc if selecting an element in stretch mode ("y" key) attached nets will also be (partially) selected. However allow to descend into instance. 2025-05-26 21:18:26 +02:00
stefan schippers a534218c5a completion of previous fix 2025-05-26 00:25:59 +02:00
stefan schippers c2a3c48228 make raw file selector invoked from graphdialog always on top of it (use -parent option) 2025-05-26 00:09:23 +02:00
stefan schippers ac629b62be fix again parameter substitution in instance symbol specialization (schematic=... in instance) 2025-05-22 10:02:38 +02:00
stefan schippers ee693aa49c revert calculation of expressions and parameter resolution in instance based symbol specializations. So multiple instances with same schematic=... attribute and different parameters (like WN=... WP=.... etc) can be used. 2025-05-21 01:54:46 +02:00
stefan schippers adbb3cd58d Use has_token() instead of strstr when checking token against (parent_sym_extra 2025-05-20 10:18:11 +02:00
stefan schippers 28dd3f2013 print_spice_element(): do not substitute "extra" pins in format string (like @body) with body=xxx given in parent symbol instance attributes 2025-05-20 02:51:52 +02:00
stefan schippers 9990e1b9d8 Bump Head version to 3.4.8RC 2025-05-16 16:02:47 +02:00
stefan schippers 92dd8fe5f4 remove dbg message 2025-05-14 10:02:39 +02:00
stefan schippers 718f4c8112 prepare for 3.4.7 tag 2025-05-14 09:58:55 +02:00
stefan schippers b122a8abef fix a small memory leak in delete_schematic_data() 2025-05-07 16:11:21 +02:00
stefan schippers c5705e28fc resolved_net(): resolve multiple levels of port-by-attribute propagation 2025-05-03 12:02:22 +02:00
stefan schippers 0f49e3cda7 Make xschem build with configure option --CFLAGS="-std=c23" (prepare for gcc-15 issues) 2025-05-01 23:52:53 +02:00
stefan schippers 248fb1fd73 toggle_ignore(): add xctx->prep_hash_inst=0, xctx->prep_net_structs=0, xctx->prep_hi_structs=0 at end of operations 2025-04-30 01:04:12 +02:00
stefan schippers 281c38b32d register WM_DELETE_WINDOW action to correctly close bindkey window 2025-04-28 00:48:01 +02:00
stefan schippers d3b5e999f4 ps_embedded_graph(): variable declaration guarded inside if defined(HAS_LIBJPEG); xschem.h: avoid including ../config.h if manual Makefile used 2025-04-25 01:36:29 +02:00
stefan schippers 18e45abc69 sanity checks on results strings in token.c 2025-04-21 16:23:45 +02:00
stefan schippers 6b12969d6d complete change `draw text at end as done in draw() fo preserve stacking order of objects`, in draw_symbol(), svg_draw_symbol() and ps_draw_symbol() 2025-04-21 11:35:18 +02:00
stefan schippers d2e40a8605 fix missing label text highlights in symbols. still to handle if highlight layer set to last 2025-04-21 00:36:07 +02:00
stefan schippers afc3f1b724 move some X11 dependent code into draw(), circuit example updates 2025-04-20 09:48:40 +02:00
stefan schippers 6af59cb3fb reset alloc IDs 2025-04-18 02:02:15 +02:00
stefan schippers dbac25433c `/` command (show bindkeys) will use a toplevel window instead of fullscreen 2025-04-18 02:00:08 +02:00
stefan schippers 21dbd0e340 fix a small memory leak issue in waves_callback(), variable curr_sim_type, fix random clipping (due to uninitialized var instead of rect coordinates) in ps_filledrect() 2025-04-17 15:46:33 +02:00
stefan schippers c91aff2abd add (commented) lines in xschemrc to change specific widget font attributes 2025-04-16 23:36:58 +02:00
stefan schippers 29ad1e06e1 reduce size of ps exports by avoiding redundant set_ps_colors() calls 2025-04-16 16:25:38 +02:00
stefan schippers 1417c05658 fix possible unitialized value for c_for_text in draw_symbol(), ps_draw_symbol(), svg_draw_symbol(), fix ps/pdf export full (missing / wrong resetwin() calls) 2025-04-16 15:01:51 +02:00
stefan schippers 328f4443b5 add a missing restore linewidth after a ps/pdf print full 2025-04-16 11:26:16 +02:00
stefan schippers cf3fa993bd fix some regressions in text bbox calculation in no cairo mode 2025-04-16 02:54:56 +02:00
stefan schippers 9a937ecd70 Balloon help: also cancel scheduled future show window actions on Leave or FocusOut events 2025-04-16 00:41:43 +02:00
stefan schippers 2bd021328f add m param to pmos3.sym, kill balloon popup windows by FocusOut events to avoid Balloon helps sticking around on the screen 2025-04-16 00:29:45 +02:00
stefan schippers b74c0f4ac4 Honor `bus` attribute on lines / wires / polygons in svg and pdf exports 2025-04-14 12:31:59 +02:00
stefan schippers f22307afad `xschem raw clear` command: allow to specify a number `n`; delete the`n-th` raw file 2025-04-14 10:00:33 +02:00
stefan schippers 34c2927f4f add ngspice_verilog_cosim examples 2025-04-11 18:37:55 +02:00
stefan schippers 232384f8fb better zoom line width based on xctx->min_lw 2025-04-09 13:07:53 +02:00
stefan schippers d4fc6c96c1 set min_lw in xinit.c based on xschemrc line_width var 2025-04-09 12:20:06 +02:00
stefan schippers c3cb1218a1 set line width commands also set minimum allowed line width (good for UHD displays) 2025-04-09 11:47:19 +02:00
stefan schippers 8d0837d5e9 Add bindkey `Alt -` (specify line width) in addition to menu entry 2025-04-09 10:07:33 +02:00
stefan schippers b2e5a5235e add bus attribute (thick lines) for polygon, fix rubber display of wires and lines with bus=1 (missing rectorder() in XCopyArea) 2025-04-08 01:11:15 +02:00
stefan schippers 5ee8b862ea fix a keyboard focus problem in canvas window (regression) 2025-04-08 00:05:09 +02:00
stefan schippers 514b5be2c2 fix sym_txt (text display/hide) in symbols, add commands to place ipins and opins, move create_plot_cmd to ctrl-shift-X, grouped some menus in Symbol menu 2025-04-07 14:50:28 +02:00
stefan schippers 08d5669a66 command `/` (show_bindkeys) improved. Small color adjustements 2025-04-07 00:26:43 +02:00
stefan schippers 70aed29f7f fix ps/svg export of highlighted instances (text color) 2025-04-06 13:02:28 +02:00
stefan schippers 24f2af8c81 update keybinding documentation; add `/` command to show fullscreen image of keybindings also in Help menu) 2025-04-06 12:58:13 +02:00
stefan schippers 035794df47 preview_window: check xctx valid before calling resetwin() 2025-04-06 00:27:25 +02:00
stefan schippers 834d2c9757 draw_symbol(): draw text at end as done in draw() fo preserve stacking order of objects 2025-04-05 11:27:45 +02:00
stefan schippers 8e2748905a fix eval_expr not recognizing 1234e-12 (negative exponent),fix spice.awk (dangerous removal of `value=` patterns in spice netlists) 2025-04-05 02:07:48 +02:00
stefan schippers ff1c506b5d `xschem netlist`: do not clear keep_symbols if no -keep_symbol option is given 2025-04-04 10:12:12 +02:00
stefan schippers 4a1b1483b9 code cleanups ("schematic" attribute) 2025-04-04 00:35:54 +02:00
stefan schippers 795f89215e add bindkeys_cheatsheet.sch, moved shift-J to Ctrl-p (xplot creation) 2025-04-03 18:00:33 +02:00
stefan schippers d19ad57ee1 allow to change tcl flag `lvs_netlist` at runtime (just before netlist generation) , not only at xschem startup 2025-04-03 16:57:49 +02:00
stefan schippers 28aca824ed update docs for keybindings 2025-04-03 06:25:23 +02:00
stefan schippers f43273757d remove some no more existent keybinds in docs 2025-04-03 02:52:26 +02:00
stefan schippers 320aa96f98 fix regression: constrained move (V/H) when creating polygons 2025-04-03 01:54:21 +02:00