Commit Graph

3125 Commits

Author SHA1 Message Date
stefan schippers bfd7895d4c edit_line_point() and edit_wire_point(): use mouse[xy]_snap instead of mouse[xy] for checking line/wire endpoint selection 2025-01-27 00:48:26 +01:00
stefan schippers 6669b4f177 renamed find_closest_net() to find_closest_wire() 2025-01-27 00:14:29 +01:00
stefan schippers f2cc1d0216 move_objects(RUBBER,...) and copy_objects(RUBBER): return immediately if snapped mouse coordinates not changed 2025-01-26 17:58:03 +01:00
stefan schippers bce1e652c6 refactored xctx->y_[12] to xctx->y[12] 2025-01-26 17:49:47 +01:00
stefan schippers 80a22c78a8 comments 2025-01-26 17:44:00 +01:00
stefan schippers 8086b5581e redraw_w_a_l_r_p_z_rubbers(): include zoom_rectangle(RUBBER), only execute if (snapped) coordinates changed, draw_crosshair(): only execute if (snapped) coordinates changed, find_closest_net_or_symbol_pin() is moved into draw_crosshair() so its calls are also minimized, do not allow z (zoom rectangle) if pending STARTWIRE, STARTLINE etc are in progress. 2025-01-26 15:19:22 +01:00
stefan schippers bbe8782bc0 more comments in callback(), add_wire_from_inst_pin() separated into add_wire_from_inst() and add_wire_from_wire(), changed the distance measurement for closest instance, works better with ituitive i/f, some edit shape point functions restricted to intuitive_interface only, to avoid too many combinations 2025-01-26 06:40:00 +01:00
stefan schippers ea5609dd0b more comments in callback() 2025-01-26 02:35:00 +01:00
stefan schippers 34f9ae73a0 more comments in callback() 2025-01-26 02:32:43 +01:00
stefan schippers 7e697672ce more comments in callback() 2025-01-26 02:00:07 +01:00
stefan schippers 70156a3bda intuitive interface, directly drag elements: default to wire stretch if enable_stretch is activated and normal move if using ctrl key and the other way around if enable_stretch is unset 2025-01-26 01:06:48 +01:00
stefan schippers 01989bba0c fix issue with previous fix, add enable_stretch parameter to select_inside() and select_rect() 2025-01-26 00:26:56 +01:00
stefan schippers 1bee3d766f included TheSUPERCD commit 260beff, if (full and only full) crosshair is displayed use snap mouse coordinates since mouse pointer is turned off; fixed an issue when selecting ridicolously small rectangles in find_closest_box() 2025-01-25 23:41:39 +01:00
stefan schippers dad3b78931 Add a line number in error report if failed sourced tcl scripts 2025-01-25 19:39:53 +01:00
stefan schippers 6cc7883e51 reduce overlap area when clearing crosshair, add return value to find_closest_net_or_symbol_pin() 2025-01-25 14:33:01 +01:00
stefan schippers 71aa4339bd add comment 2025-01-25 02:46:54 +01:00
stefan schippers 4700483fa4 draw_crosshair(): more logical what parameter values 2025-01-25 02:13:59 +01:00
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
stefan schippers 48264c0399 allow `xschem translate -1 string` to translate tokens that do not depend on specific instances; yet another change in wrap detection in graphs, always use simulator sweep-var instead of user specified sweep variable; simulated data will never wrap exactly to first value due to roundoff errors; -fast optionto `xschem hilight_netname` command 2025-01-24 03:52:20 +01:00
stefan schippers 7553222461 remove a piece of useless code in new_wire(), fix some MENUSTARTSNAPWIRE issues with crosshair drawing, enable no infix_interface operation for `W` command 2025-01-23 11:38:32 +01:00
stefan schippers 096eb126c1 comment in the code 2025-01-22 17:29:17 +01:00
stefan schippers 0824c1b9b8 fix garbage on screen due to crosshair cursor if copying by drag (Shift-click-drag) in intuitive interface (collision with snapped crosshair position) 2025-01-22 17:00:03 +01:00
stefan schippers 4e821586c2 replaced find_closest_net_or_symbol_pin() with new function that uses spatial hash table iterators for searching 2025-01-22 03:59:49 +01:00
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
stefan schippers ed2a4f61c8 code formatting cleanups 2025-01-22 00:22:02 +01:00
stefan schippers 1015a9d71e added command `xschem set crosshair_layer` to change layer used for crosshair drawing 2025-01-21 16:50:31 +01:00
stefan schippers 7ee11e8dbc various fixes related to crosshair mouse display 2025-01-21 16:07:23 +01:00
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
stefan schippers 99b0bba5b8 if big_grid_points is not set draw always thin axes and mouse crosshairs; dashed axes 2025-01-21 12:34:14 +01:00
stefan schippers 2b05b365e5 If opening a non existing xxxx.sym file euristically set netlist_type to symbol --> better implementation 2025-01-21 04:09:08 +01:00
stefan schippers d47747965f updates in autozero_comp.sch 2025-01-21 03:45:42 +01:00
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
stefan schippers 6adee35b89 update make_sym.awk to use a polyline instead of segments for the symbol box 2025-01-20 23:03:33 +01:00
stefan schippers c9f60ce1c8 clanup / better implementation of previous fix 2025-01-20 18:39:46 +01:00
stefan schippers c52ded63b0 complete previous fix 2025-01-20 18:21:12 +01:00
stefan schippers 7523c0015c correctly mangle generator calls with parameters containing forbidden characters. Transliterate to get valid SPICE identifiers 2025-01-20 17:54:06 +01:00
stefan schippers 724c264c9d allow Shift-T command (toggle spice_ignore attribute) to cycle through ignore-shorted-unset on selected elements 2025-01-20 16:48:31 +01:00
stefan schippers 0e53359ee0 update proc cellview 2025-01-20 14:52:30 +01:00
stefan schippers e17932d1e8 update hash for test_doublepin.sch netlist in xschemtest (bsource m param in netlist) 2025-01-20 03:27:39 +01:00
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
stefan schippers 16121b6e07 keep selection if aborting a move operation. This was probably a regression 2025-01-19 14:13:57 +01:00
stefan schippers 2bd1c79cd5 enhance drawing wires in intuitive_interface by dragging away from an instance pin or wire endpoint. Allow set manhattan/oblique direction as with w keybind 2025-01-19 13:59:18 +01:00
stefan schippers 17b09bc203 add pin net_name attributes to some devices/ symbols 2025-01-19 13:00:43 +01:00
stefan schippers 4759d58ad5 add a prepare_netlist_structs() in get_pin_attr() to update net names for @#pin tokens 2025-01-19 02:31:58 +01:00
stefan schippers 6dcc9fd7c5 allow Shift-Click to terminate snapped wire placement (in addition to Shift-W) 2025-01-18 23:50:04 +01:00
stefan schippers c41a8c28c0 add devices/stop.sym 2025-01-18 22:19:35 +01:00
stefan schippers ca1035eca1 add no-infix (set infix_interface 0) operation to move and copy operations 2025-01-18 21:59:04 +01:00
stefan schippers c96d5be7cd update bsource.sym (show m=@m) 2025-01-18 15:01:24 +01:00