Commit Graph

835 Commits

Author SHA1 Message Date
stefan schippers daabf45a2c revert last commit (my fault) 2025-01-30 03:40:41 +01:00
stefan schippers 6a869a0078 reduce calls to find_closest_net_or_symbol_pin() in draw_crosshair() 2025-01-30 03:29:13 +01:00
Chayan Deb 753f5d24bc Changes made to reduce git diff with upstream repo 2025-01-29 11:54:25 +05:30
Chayan Deb bf53f99d28
Merge branch 'StefanSchippers:master' into master 2025-01-29 11:46:39 +05:30
stefan schippers 92bb16773c guard against trepassing max hierarchy level when descending, updates to cellview and traversal procs 2025-01-28 11:24:51 +01:00
Chayan Deb d2ee983318
Merge branch 'master' into upstream-clone 2025-01-25 12:15:55 +05:30
stefan schippers 26bfe7691b add `xschem draw_hilight_net [on_window]` for quick draw or hilighted objects; add `xschem get_sim_sch` to get the current schematic hierarchy path, stripping off levels above the level the raw file was loaded. Strip off also leading dot; `xschem hilight_instname`: move fast option as -fast option; list_nets(): expand vector ports ; optimize update_op() for speed 2025-01-24 18:57:35 +01:00
Chayan Deb ea7d0d94c5 [Snap Cursor Update (WIP)]: Added dynamically scaling snap cursor. 2025-01-23 22:58:35 +05:30
Chayan Deb 710f857765 [Snap Cursor Update (WIP)]: Added keybind to activate snap_cursor + new tcl-command to adjust 'snap_cursor_size'. Added grid-coordinate checks for better performance using the 'find_closest_net_or_symbol_pin()' function (by only running the search when the grid-snap position changes). Fixed xctx->prev_crossx and xctx->prev_crossy conflict between draw_crosshair() and draw_snap_cursor() by using the new globally accesible variables 'xctx->prev_gridx' and 'xctx->prev_gridy' in draw_snap_cursor(). 2025-01-23 17:45:49 +05:30
Chayan Deb 4b8a3c653b [New Experimental Functionality]: Added the functionality of terminating the wire-draw mode when the user clicks a component endpoint. This feature is currently on by default (if the user has the 'Display snap cursor' option enabled. 2025-01-22 19:01:48 +05:30
Chayan Deb c0f1d54d55
Merge branch 'StefanSchippers:master' into master 2025-01-22 14:59:38 +05:30
stefan schippers 0c8631a101 MotionNotify events with Shift key down (and draw_crosshair enabled) will position the crosshair to the closest available landing point (inst pin or wire endpoint) 2025-01-22 01:57:09 +01:00
Chayan Deb ad89151100
Merge branch 'StefanSchippers:master' into master 2025-01-21 21:37:30 +05:30
stefan schippers 49aab703b4 set default value for crosshair_size tcl var to 0 2025-01-21 15:40:59 +01:00
stefan schippers 72d961aacd fix a regression where a mouse wheel zoom or schematic pan unexpectedly end an ongoing wire placement. Add xschemrc variable crosshair_size; if set to 0 draw full crosshair, if set to a small integer draw a small square around the mouse snapped coordinate 2025-01-21 15:38:19 +01:00
Chayan Deb 73789df48c
Merge branch 'StefanSchippers:master' into master 2025-01-21 12:10:40 +05:30
stefan schippers 5d52d322b5 symbol_in_new_window(): if no symbol selected build file name for symbol of current schematic and open it in a new tab. If opening a non existing xxxx.sym file euristically set netlist_type to symbol. proc open_sub_schematic: if no symbol selected for subcircuit to open, open the corresponsing schematic of the symbol we are editing 2025-01-21 02:57:46 +01:00
Chayan Deb 4a5f31983b
Merge branch 'StefanSchippers:master' into master 2025-01-20 23:23:04 +05:30
Chayan Deb 320b8efc4b [Snap Cursor (WIP)]: Experimental feature 'snap_cursor' is now available to be selected from the Options menu (disabled by default). This is a work in progress and needs a lot more polishing to be properly usable. Currently only supports snapping to nearest component-endpoint. 2025-01-20 23:20:53 +05:30
stefan schippers 0e53359ee0 update proc cellview 2025-01-20 14:52:30 +01:00
Chayan Deb a1a598cf21
Merge branch 'StefanSchippers:master' into master 2025-01-20 13:43:15 +05:30
stefan schippers cb38deffa6 add -keep_symbols to `xschem load command`, options changed to have a leading dash, and moved at beginning of command arg list; `xschem netlist` command: add -keep_symbols option; `xschem setprop` command: move fast and fastundo to beginning of arg list with a leading dash; update proc cellview 2025-01-20 02:30:46 +01:00
stefan schippers 4f31c024c8 add option -noalert to `xschem netlist` command, update `proc cellview` 2025-01-19 23:29:41 +01:00
Chayan Deb 92428e4409 [Code Refactoring]: Modified the source code for compatibility with the upstream repo (due to 'infix_wire' feature integration with new name 'infix_interface') 2025-01-18 15:52:17 +05:30
Chayan Deb 3480d9767d [Code Refactoring]: Modified the source code for compatibility with the upstream repo (due to 'infix_wire' feature integration with new name 'infix_interface') 2025-01-18 15:42:43 +05:30
Chayan Deb 8ce32b73b7 [Code Refactoring]: Modified the source code for compatibility with the upstream repo (due to 'infix_wire' feature integration with new name 'infix_interface') 2025-01-18 14:05:29 +05:30
stefan schippers ac8db614c0 infix_interface xschemrc variable (default=1) can be set to 0 to disable infix (need to click a point after bindkey); disable warnings from graphs with autoload=1 if no raw file or matching analysis found; add m parameter (multiplicity) to bsource.sym, cmos_example.sch; remove dependency on external model file, use ngspice provided mos model 8 bsim3 models. 2025-01-17 17:15:48 +01:00
Chayan Deb 378c2ea115
Merge branch 'StefanSchippers:master' into master 2025-01-17 11:37:48 +05:30
stefan schippers c57c49fde8 Hiding the TEXT layer will disable only symbol texts on that layer, not all texts, `proc select_layers` make the widget non-modal 2025-01-16 20:37:19 +01:00
stefan schippers 10991e662c added `xschem symbol_base_name` command to get the base symbol a symbol defined by instance `schematic` attribute comes from; updated `celview` procedure 2025-01-15 00:44:39 +01:00
Chayan Deb 05a376e678
Merge branch 'StefanSchippers:master' into master 2025-01-12 12:59:02 +05:30
stefan schippers a7d5865ab8 fix erroneous `all pins disconnected` warning when netlisting pin-to-pin connected element chains 2025-01-11 20:16:01 +01:00
stefan schippers bca1110282 add option -nohier to `xschem netlist` command, correctly restore netlist_dir at end 2025-01-11 17:55:46 +01:00
stefan schippers 7484a6363c interpret `xschem symbols {}` as `xschem symbols` (simpler for scripts), update proc cellview 2025-01-11 15:30:22 +01:00
Chayan Deb a184d38007
Merge branch 'StefanSchippers:master' into master 2025-01-09 17:21:52 +05:30
stefan schippers 182b55adf8 fix some issues when setting numerical position of cursors (spurious activation of `GRAPHPAN`); proc input_line: return `preset` argument on Cancel 2025-01-08 01:21:05 +01:00
stefan schippers 9fda7e2f96 wip: put code in place for horiz cursors in graphs 2025-01-06 13:14:12 +01:00
Chayan Deb be202219a0 [Experimental Feature Update (orthogonal_wiring)]: Modified the last added orthogonal wiring mode to only draw either a horizontal, or a vertical component when a user-click event is detected. To get the best experience with this feature, 'persistent_commands' should also be enabled from the 'Options' menu. 2025-01-06 15:58:38 +05:30
Chayan Deb f020e45364 [Experimental Feature Update (orthogonal_wiring)]: Modified the last added orthogonal wiring mode to only draw either a horizontal, or a vertical component when a user-click event is detected. To get the best experience with this feature, 'persistent_commands' should also be enabled from the 'Options' menu. 2025-01-06 15:57:37 +05:30
stefan schippers 783fa04eb6 `xschem save` --> save_schematic(): added `fast` argument (do not update window/tab/sim button states for speed); `xschem select instance` --> select_element(): added `nodraw` argument in addition to existing `fast` (avoid drawing selected item for speed) 2025-01-05 13:27:49 +01:00
Chayan Deb 3a19d8c8ec
Merge branch 'StefanSchippers:master' into master 2025-01-05 13:23:03 +05:30
Chayan Deb 3b55410709 [Added New Feature]: New menu option 'Enable orthogonal wiring' is now accessible through the 'Options' menu. This option is kept ON-BY-DEFAULT and can be disabled through the menu, 'Shift+L'-keyboard-shortcut, or by editing the 'xschemrc' file to make xschem-editor revert back to it's old behavior - which was drawing wires in free-form mode (Unconstrained move). The functionality of the 'h' and 'v' keys are preserved, and they can still be used to force the editor to only draw horizontal or vertical wires respectively. 2025-01-05 13:20:52 +05:30
stefan schippers fd5fec64aa make uninstall: remove empty directories (share/xschem and share/doc/xschem); make command `xschem help` work also if running in src/ directory; use XSCHEM_SHAREDIR shell variable (if defined and directory existing), else set XCSCHEM_SHAREDIR to `pwd` if started from src/ dir, else set compile set XSCHEM_SHAREDIR. xschemrc can override this XSCHEM_SHAREDIR setting. 2025-01-05 01:29:04 +01:00
Chayan Deb 4e084d8cae
Merge branch 'StefanSchippers:master' into master 2025-01-04 17:35:16 +05:30
stefan schippers 09813f8e1e restrict `menu unpost by click` hack to 8.6+ tcl versions. the hack works on tcl8.4, but lets avoid potential problems on jurassic systems 2025-01-04 12:47:13 +01:00
stefan schippers f824f26c4f click on posted menu will unpost it. Now no more Motion event is needed to repost again the menu by another click 2025-01-04 12:39:22 +01:00
stefan schippers ee0de61220 add `2` and `3` argument to set_modify (do only clear/set modified flag), save() -> save_schematic(): do not update title/tab names if saving with same name. 2025-01-04 12:24:22 +01:00
stefan schippers 4e2584341c updates on cellview and traversal; hack on Menu Button event handler to allow a click on a posted menu to unpost it. 2025-01-04 04:16:43 +01:00
Chayan Deb 8981b47ed3 [Fixed an issue]: The bottom-statusbar now correctly indicates if the schematic editor is currently in wire-drawing-mode or not. The color of the indicator has been changed to a more visible and non-alerting green, and the text has been shortened to only display 'DRAW WIRE! ' instead of the previous message. 2025-01-03 18:35:15 +05:30
Chayan Deb 9aff371ffe
Merge branch 'StefanSchippers:master' into master 2025-01-03 18:19:54 +05:30