stefan schippers
|
50321ae480
|
align callback.c with SuperCD fork
|
2025-03-16 19:56:57 +01:00 |
stefan schippers
|
33591fa41d
|
applied recent additions from SuperCgayan
|
2025-03-16 11:35:30 +01:00 |
stefan schippers
|
2f26544c45
|
dont assume a particular manhattan_lines when starting wires or lines. Keep last one set
|
2025-03-16 01:17:50 +01:00 |
stefan schippers
|
124d73ee64
|
fix regression (start new wires in manhattan orient)
|
2025-03-16 00:31:57 +01:00 |
stefan schippers
|
08397f7038
|
merge Chayan Deb changes for manhattan-style move objects and handle_key_press() refactor
|
2025-03-14 15:25:57 +01:00 |
stefan schippers
|
2a4ebe4b77
|
new (optional) symbol placement browser
|
2025-03-12 16:59:45 +01:00 |
stefan schippers
|
e1488da407
|
add `xschem rect gui`, `xschem line gui`, `xschem polygon gui`, `xschem wire gui` to start placement of these objects with 1st point set to mouse coordinates
|
2025-03-11 20:47:00 +01:00 |
stefan schippers
|
c69c1b2687
|
better handling of snap cursor and snap wire creation (no cadence emulation)
|
2025-03-10 01:03:15 +01:00 |
stefan schippers
|
de6434c941
|
allow multi-selections when loading a file; limit max line width in change_linewidth() to avoid strange artifacts at extreme zoom-ins
|
2025-03-09 02:46:58 +01:00 |
stefan schippers
|
be1a0deb89
|
fix typo in draw_graph()
|
2025-02-28 18:04:56 +01:00 |
stefan schippers
|
f9ccf878c2
|
differential scope2.sym, current mwasure scope_ammeter.sym
|
2025-02-24 15:23:35 +01:00 |
stefan schippers
|
b205b4a496
|
fix ui problem when ctrl-clicking a launcher (drag_elements remained set)
|
2025-02-23 23:49:31 +01:00 |
stefan schippers
|
c604a1f033
|
higher priority of `unlocked` sub-attribute in rect `graph` attribute. Do not propagate zoom / pan to any other graphs even if they are locked.
|
2025-02-23 12:39:59 +01:00 |
stefan schippers
|
e266642c2c
|
lock attribute extended to all objects
|
2025-02-22 12:47:54 +01:00 |
stefan schippers
|
0e438829c6
|
allow locked attached rectangles, so they can not be selected accidentally. Small resize of x/y graph axis labels
|
2025-02-22 10:33:13 +01:00 |
stefan schippers
|
a592216c19
|
update solar_panel.sch (grouped aka attached floaters, scope meter object), better selection of left-y axis in small graphs
|
2025-02-22 02:18:27 +01:00 |
stefan schippers
|
935ec27772
|
floater objects: add command ctrl-u to unselect attached (so some instance with the attach=.. attribute) objects, that is objects (not element instances) with a non empty name=... atttribute. Extend upcate references of attached floaters to change instance name property and `xschem setprop instance name` command
|
2025-02-22 01:30:38 +01:00 |
stefan schippers
|
62a2e6a367
|
refactored draw_crosshair() into smaller pieces. draw_snap_cursor executed much less frequently (only on snapped ouse change). Zooming with mouse wheel will not clear MENUSTART ui_state
|
2025-02-20 13:56:53 +01:00 |
stefan schippers
|
f15520d01a
|
start snapped wires in manhattan mode as done woth normal wires
|
2025-02-20 11:52:22 +01:00 |
stefan schippers
|
9dff3e1e3e
|
refactor and fix small graphic glitches in draw_snap_cursor()
|
2025-02-20 11:42:26 +01:00 |
stefan schippers
|
936b72c7fc
|
Escape pressed while drawing polygon will cancel last segment instead of the whole poly
|
2025-02-18 11:49:32 +01:00 |
stefan schippers
|
25db8b8f9a
|
ellipses rendered in ps/pdf export. Do not allow to select objects with mouse button press if a poligon insertion is ongoing. my_fopen() for read mode open, check for regular file. More checks for failed fopen()s.
|
2025-02-18 02:25:55 +01:00 |
stefan schippers
|
e9c927d882
|
default orientation for wire creation is manhattan (H-V). Lines still start oblique by default
|
2025-02-14 02:55:47 +01:00 |
stefan schippers
|
ed3190c9b1
|
complete previous fix
|
2025-02-13 02:44:26 +01:00 |
stefan schippers
|
7087ae5a2a
|
fix graphical artifacts when inserting objects and pressing Button3
|
2025-02-13 02:38:19 +01:00 |
stefan schippers
|
95cbd80767
|
merged in TheSUperChayan feature for displaying `Draw Wire` in status bar when in wiring mode.
|
2025-02-12 16:25:46 +01:00 |
stefan schippers
|
bc293a1d8f
|
fix some warnings (-Wdeprecated-non-prototype, -Wparentheses-equality)
|
2025-02-12 03:14:45 +01:00 |
stefan schippers
|
ffe0aba12e
|
indentation and spacing in callback.c
|
2025-02-12 01:22:36 +01:00 |
stefan schippers
|
1e23beabd3
|
c89 compliance and fix some double to int assignments, removed stdbool
|
2025-02-12 01:08:52 +01:00 |
Ananth
|
3adcf40bf7
|
added remaining edits from CD's repo. Tests ok.
|
2025-02-11 12:44:14 -07:00 |
Ananth
|
66ec47ccfb
|
only vars and fn defs (not calls) and inits added for ortho routing and snap cursor
|
2025-02-11 11:49:50 -07:00 |
Ananth
|
bf10a025d7
|
added CD's vars - ortho wiring, snap_cursor, snap_cur size, cadence_compat - all not yet used; use_cursor_for_selection - used; updated xschem.tcl to include in global list and set defaults; callback updated to use use_cursor_for_sel when mouse clicked
|
2025-02-11 10:55:29 -07:00 |
stefan schippers
|
8cad7daed5
|
removed `str` parameter to all handle_* functions in callback.c (write-only)
|
2025-02-11 11:11:20 +01:00 |
stefan schippers
|
a4e0471fcc
|
minor changes to callback() refactoring to remove compiler warnings
|
2025-02-11 00:16:06 +01:00 |
Ananth
|
b7515c9715
|
add handle_enter_notify for readability
|
2025-02-10 14:52:19 -07:00 |
Ananth
|
1753dc6723
|
add handle_double_click
|
2025-02-10 14:43:26 -07:00 |
Ananth
|
899e7f93d2
|
add handle_button_press/release
|
2025-02-10 14:34:20 -07:00 |
Ananth
|
04e7300f48
|
correct type for mx,my in handle_motion_notify; added handle_key_press
|
2025-02-10 13:52:57 -07:00 |
Ananth
|
bef19b7057
|
refactored : handle_motion_notify for readability
|
2025-02-10 13:42:28 -07:00 |
stefan schippers
|
6b090273fb
|
lock graphs only if they have the same simulation type loaded. So zooming/panning a tran plot will not affect dc or ac plots.
|
2025-02-10 15:18:01 +01:00 |
stefan schippers
|
b5eb81c107
|
updates in proc cellview
|
2025-02-10 13:44:12 +01:00 |
stefan schippers
|
a4ce2d1b64
|
subst_token(): better token removal (remove space or newline to avoid having many remaining blanks); `netlist_postprocess` xschemrc tcl variable to insert commands after netlist is created
|
2025-02-06 12:45:21 +01:00 |
stefan schippers
|
7926a833be
|
added `d` to unselect object under the mouse, `Shift-D` to unselect by area, both work with or without infix_interface, moved delete files to `Ctrl-d`, update keybinding docs
|
2025-02-06 04:20:57 +01:00 |
stefan schippers
|
0c4cdb3ea1
|
propagate changed key bindings to new opened windows (in no-tabs mode)
|
2025-02-06 01:11:11 +01:00 |
stefan schippers
|
752f794c96
|
remove dbg message
|
2025-01-31 15:59:23 +01:00 |
stefan schippers
|
eadd991651
|
reduce calls to find_closest_net_or_symbol_pin() in draw_crosshair()
|
2025-01-30 03:47:13 +01:00 |
Stefan Schippers
|
56777a2944
|
fix mouse cursor restore when exiting graph and crosshair (not full-size) enabled
|
2025-01-27 13:10:53 +01:00 |
stefan schippers
|
8df1aa9996
|
some comments, removed redundant modifier key checks in callback()
|
2025-01-27 12:51:32 +01:00 |
stefan schippers
|
500d2e2bed
|
some commentd added
|
2025-01-27 02:07:38 +01:00 |
stefan schippers
|
0d325f6957
|
force a crosshair draw at end of draw() (draw_crosshair(7,...)), intuitive interface direct drag of instances: fix some non-working combinations when stretch mode (y) is enabled.
|
2025-01-27 01:49:06 +01:00 |
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
|
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
|
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
|
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
|
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
|
7ee11e8dbc
|
various fixes related to crosshair mouse display
|
2025-01-21 16:07:23 +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
|
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
|
6dcc9fd7c5
|
allow Shift-Click to terminate snapped wire placement (in addition to Shift-W)
|
2025-01-18 23:50:04 +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
|
cfb491adb3
|
draw_crosshair(): parameter del renamed to what; @spice_get_current: special handling for resistors that are converted to b-sources: i(@r.x4.r1[i]) --> i(@b.x4.br1[i])
|
2025-01-18 12:38:12 +01:00 |
stefan schippers
|
025823f14c
|
`xschem go_back 0` allows to go up in hierarchy *NOT* saving a modified schematic
|
2025-01-17 18:11:35 +01:00 |
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 |
stefan schippers
|
ca6b8fe85b
|
end_shape_point_edit(): fix erroneous set_modify because comparing unsmapped mouse saved coords with snapped actual mouse coords
|
2025-01-16 17:19:42 +01:00 |
stefan schippers
|
f2225677cc
|
fix regression in (V) cursor movement when multiple side-by-side graphs are present
|
2025-01-16 16:03:34 +01:00 |
stefan schippers
|
d05b7fa389
|
update schematic backannotation on cursor2 position if setting it numerically (Right button click on cursor)
|
2025-01-12 17:06:44 +01:00 |
stefan schippers
|
a29814d728
|
get_additional_symbols(), get_sch_from_sym(): allow to resolve schematic calls like: schematic=generator.tcl( @n ) where n=11 is defined in instance attrs. some fixes in cursor movement in waves_callback()
|
2025-01-10 06:03:52 +01:00 |
stefan schippers
|
2c1e1c1fe7
|
refactoring and cleanup of wave_callback() -8-
|
2025-01-10 02:35:50 +01:00 |
stefan schippers
|
ef5d0e1b96
|
str_replace(): add parameter to specify number of substituitions (or all); replaced atof_spice() with atof_eng() in various parts related to numbers that do not come from spice netlists; fix numerical setting of cursors if log scale is set (wrong preset was shown); make wave labels in graph scale with gr->magx as X-axis labels; fix scaling roundoff issues in dtoa_eng(); add new `@spice_get_node <spice_node> ` token (where spice_node may contain @variables) in symbol texts to display indicated spice node value. Does not use TCL, thus faster and less "quoting hell" problems
|
2025-01-10 01:52:54 +01:00 |
stefan schippers
|
c6a4e8b942
|
refactoring and cleanup of wave_callback() -7-
|
2025-01-09 04:23:23 +01:00 |
stefan schippers
|
cd3eaf23ea
|
refactoring and cleanup of wave_callback() -6-
|
2025-01-09 04:11:30 +01:00 |
stefan schippers
|
52b9cc1ee6
|
refactoring and cleanup of wave_callback() -5-
|
2025-01-09 00:46:42 +01:00 |
stefan schippers
|
7d7b381b7b
|
refactoring and cleanup of wave_callback() -4-
|
2025-01-09 00:17:55 +01:00 |
stefan schippers
|
ed9dc9b211
|
disable debug msg
|
2025-01-09 00:12:07 +01:00 |
stefan schippers
|
45a0af8005
|
fix unwanted clear of GRAPHPAN bit in button3 operations in wave_callback()
|
2025-01-09 00:11:04 +01:00 |
stefan schippers
|
444eb47eb5
|
refactoring and cleanup of wave_callback() -3-
|
2025-01-08 22:19:58 +01:00 |
stefan schippers
|
d1e2328eb3
|
refactoring and cleanup of wave_callback() -2-
|
2025-01-08 21:12:59 +01:00 |
stefan schippers
|
bbdfd3c61a
|
refactoring and cleanup of wave_callback()
|
2025-01-08 16:36:45 +01:00 |
stefan schippers
|
0d7d1f5364
|
implemented drag with right-button pressed on left of Y axis to do a Y area zoom
|
2025-01-08 15:05:11 +01:00 |
stefan schippers
|
12a9276ee0
|
optimization in plotting routines: skip unwanted datasets, if no dc simulation there is no need to detect sweep variable wraps
|
2025-01-08 13:27:07 +01:00 |
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
|
149ee5fdc0
|
further refactoring of waves_callback() (reduce first loop over graphs to single iteration on graph_master)
|
2025-01-07 14:31:26 +01:00 |