Commit Graph

3158 Commits

Author SHA1 Message Date
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
stefan schippers cd0a78d9ff cadence_compat: a Button **Release** (instead of **Press**) on a selected item will unselect everything but the item under the mouse. This allows click & drag in intuitive_interface + cadence_compat 2025-04-03 00:19:40 +02:00
stefan schippers 3941568804 further cleanups on event handling / window switching code 2025-04-02 13:26:46 +02:00
stefan schippers 36cbb84c04 refactor event code (FocusIn/Enter races) 2025-04-01 11:41:35 +02:00
stefan schippers 232ca9c58c followup of previous commit: do draw_selection in the right place in select_rect() 2025-03-29 19:16:40 +01:00
stefan schippers 859e39a579 select_rect(): remove redundant draw_selection() call 2025-03-29 12:22:25 +01:00
stefan schippers dc871f5227 area select: reverse effect of ctrl-modifier key depending on enable stretch: enable_stretch==1 and control -> NO stretch select; enable_stretch==0 and control -> Stretch select 2025-03-29 01:18:41 +01:00
stefan schippers 06632ffba5 fix proc dellview "Update" issue 2025-03-28 16:51:00 +01:00
stefan schippers 950c812080 bump version to 3.4.7RC (Release Candidate) (although lot of testing ahead before 3.4.7), mostly to avoid confusion with tagged 3.4.6 2025-03-28 15:30:12 +01:00
stefan schippers 9a6006c291 fix potential crash on close multiple windows / tabs (destroy_all_tabs(), destroy_all_windows() ) 2025-03-28 13:43:39 +01:00
stefan schippers 1d2bff5f9b cleanup FocusIn / window switching 2025-03-28 13:12:52 +01:00
stefan schippers 33050d406a do not show "no action on laucher is defined" when ctrl-click-release an object (with no mouse movement in intuitive interface) 2025-03-26 04:07:49 +01:00
stefan schippers dcb5689191 if an instance is selected with ctrl-shift-click in intuitive_interface mode, move instance creating new wires to pins connected to something. This was working as a plain stretch-move (stretch already attached nets instead of creating new ones) 2025-03-26 02:29:35 +01:00
stefan schippers 5e14ccf5a0 add a missing tclvareval("housekeeping_ctx", NULL); at the end of a new window creation 2025-03-26 02:11:31 +01:00
stefan schippers 2e86614c31 Esc destroys .ctxmenu 2025-03-26 01:18:31 +01:00
stefan schippers 8330f0f3c5 remove debug info 2025-03-25 23:44:54 +01:00
stefan schippers 1f4841b2b6 fix context switching in tabbed interface (regression) 2025-03-25 23:26:06 +01:00
stefan schippers 9e4b26b027 dont process Motion / ButtonPress events if done in wrong window without first focusing it 2025-03-24 16:21:01 +01:00
stefan schippers 3443e9aff5 even in click to focus mode allow switching to other window when copying stuff across windows 2025-03-24 15:32:37 +01:00
stefan schippers 5ac170f2a5 changes in event system to make window context switching (in no tab mode) less "automatic", requiring a FocusIn event to switch. Will work better when working with the new symbol browser. changed default value of autofocus_mainwindow to 0 (set to 1 explicitly in xschemrc if you need that) 2025-03-24 13:46:15 +01:00
stefan schippers 48beb76087 created handle_expose() event handler, offloaded from callback() 2025-03-23 16:10:58 +01:00
stefan schippers eadfe6511a further move statusbar code from callback() to update_statusbar() 2025-03-23 15:57:34 +01:00
stefan schippers 31a0712109 remove some redundant operations (housekeeping_ctx) when switching windows contexts for redraw_only 2025-03-23 12:16:01 +01:00
stefan schippers ed0d71c1ff move update statusbar stuff from callback() into separate function 2025-03-23 11:35:49 +01:00
stefan schippers d765f6ac4f in cadence_compat mode, when a selection is present, clicking on a selected item will unselect all others (default is do nothing) 2025-03-23 00:25:29 +01:00
stefan schippers 57a03c1c66 some small variable name refactor in xschem.tcl 2025-03-21 18:29:53 +01:00
stefan schippers 87325c6998 implement lassign command for tcl versions lacking it 2025-03-21 10:50:30 +01:00
stefan schippers 30d8789398 avoid lassign in xschem.tcl (not available pre-tcl8.5) 2025-03-20 12:07:49 +01:00
stefan schippers 08c613d3a8 fix regression (Shift-D not working) introduced after `Escape pressed while drawing polygon will cancel last segment instead of the whole poly` 2025-03-19 10:03:20 +01:00
stefan schippers baf80c3092 some comments added/removed 2025-03-19 02:15:52 +01:00
stefan schippers 8f0be37b16 do not skip texts with hide=instance attribute in calc_drawing_bbox() 2025-03-19 01:47:06 +01:00
stefan schippers 025cee31bb Add checkbutton description text in insert_symbol 2025-03-19 01:15:06 +01:00
stefan schippers 0b266d2bd0 merge in SuperChayan refactoring ( recompute_orthogonal_manhattanline() ) 2025-03-19 00:50:35 +01:00
stefan schippers ce8714acae add new_file_browser_* variables in xschemrc to allow new symbol browser to be used also to load files 2025-03-19 00:45:25 +01:00
stefan schippers 7e46ec6efb merge in SuperChayan changes for orthogonal wiring / manhattan move 2025-03-18 18:41:50 +01:00
stefan schippers e4d4c18b4c cleanups in insert_symbol procedures 2025-03-18 18:38:13 +01:00
stefan schippers 7cf84e9049 .processlist: update title based on current schematic 2025-03-18 17:17:20 +01:00
stefan schippers b4344360a9 better process list title 2025-03-18 16:31:07 +01:00
stefan schippers 53b90ee689 conversions from eng notation: add x in addition to meg as suffix for 1e6 (Xyce extension) 2025-03-18 15:53:47 +01:00
stefan schippers 0d2b57bfa5 use TkDefaultFont in right click context menu instead of a custom menu. This makes scaling with tk_scaling more consistent 2025-03-18 13:30:40 +01:00
stefan schippers c4b3e204a0 place_moved_wire(): in manhattan mode don`t store new wires if not needed (single point) 2025-03-18 12:36:46 +01:00
stefan schippers 2ea1294fb1 add toolbar_icon_zoom and ctxmenu_icon_zoom xschemrc (integer) variables to enlarge icons on XUHD displays 2025-03-18 10:51:34 +01:00
stefan schippers 0f9d201f0a (2) insert symbol preview. Fixed some race conditions 2025-03-18 03:31:37 +01:00
stefan schippers 172a001425 insert symbol preview. Fixed some race conditions 2025-03-18 03:07:48 +01:00
stefan schippers 4584c260ba new insert symbol: low-pass filter (200ms) on preview rendering to speed up quick listbox select events (arrow key autorepeat) 2025-03-18 01:58:55 +01:00