Chayan Deb
|
ea7d0d94c5
|
[Snap Cursor Update (WIP)]: Added dynamically scaling snap cursor.
|
2025-01-23 22:58:35 +05:30 |
Chayan Deb
|
0a0ef228fe
|
[Bugfix]: Fixed a bug where drawing a wire in an empty canvas caused the snap-cursor to detect it's own endpoint as a snap-point and incorrectly terminate wire-drawing mode
|
2025-01-23 20:26:20 +05:30 |
Chayan Deb
|
935696ef81
|
[Revert changes]
|
2025-01-23 20:04:27 +05:30 |
Chayan Deb
|
3556f3599c
|
[Revert changes]
|
2025-01-23 20:03:12 +05:30 |
Chayan Deb
|
8c1bfc93f6
|
[Revert changes]
|
2025-01-23 20:00:59 +05:30 |
Chayan Deb
|
ffcbeaec66
|
[After merge-changes]: Re-introduced temporary bugfix and altered snap-cursor keybind to match pre-merge state of this fork.
|
2025-01-23 19:46:16 +05:30 |
Chayan Deb
|
a36150541d
|
Merge pull request #2 from StefanSchippers/master
Resolve merge conflicts and integrate upstream changes
|
2025-01-23 19:15:27 +05:30 |
Chayan Deb
|
783bccf8cf
|
Added changes to resolve merge conflicts
|
2025-01-23 19:14:58 +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 |
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 |
Chayan Deb
|
39e6999eeb
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-23 15:15:06 +05:30 |
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 |
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
|
248596f81c
|
[Refactoring]: Renamed variables and added inline code-comments for better code readability.
|
2025-01-22 17:30:14 +05:30 |
Chayan Deb
|
4c5421fdda
|
[Bugfix]: Fixed a bug where the non-persistent wire-draw mode didn't put down a new anchor-point when 'w'-key was pressed by user. This bug was introduced in the upstream-merge (commit 8ce32b7) after incorrectly adopting the upstream way of handling 'infix_interface' mode.
|
2025-01-22 17:08:16 +05:30 |
Chayan Deb
|
dc544f81fd
|
[Grid-Snap Cursor Update (WIP)]: The grid snap cursor is now drawn with constant-pixel-size, regardless of the schematic editor's zoom level. This behavior will be interchangeble with the upstream version's behavior via a menu-option or a custom tcl-command in the future.
|
2025-01-22 17:02:04 +05:30 |
Chayan Deb
|
4944279700
|
Some refactoring and cleanup to standardize the previously added code
|
2025-01-22 15:58:28 +05:30 |
Chayan Deb
|
196e0d737b
|
[After-Merge Modifications]: Changed default behavior for grid-snapping cursor, returning it to pre-merge state. Can be undone by the user if necessary from the 'src/xschemrc' file
|
2025-01-22 15:11:17 +05:30 |
Chayan Deb
|
c0f1d54d55
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-22 14:59:38 +05:30 |
Chayan Deb
|
2a97ca5716
|
[Prepare For Upstream Integration]: Changes made to integrate upstream adoption of default yellow-colored grid-snapping cursor.
|
2025-01-22 14:58:59 +05:30 |
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 |
Chayan Deb
|
634213d3c9
|
[Integrated Upstream + Temporary Bugfix]: Integrated the upstream changes for adding a custom rectangular grid-snap cursor, and re-implemented the temporary bugfix from commit ed1a471
|
2025-01-21 22:18:19 +05:30 |
Chayan Deb
|
ad89151100
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-21 21:37:30 +05:30 |
Chayan Deb
|
ea7341742a
|
[Undo Temporary Bugfix]: Discarded the temporary bugfix for commit ed1a471
|
2025-01-21 21:37:04 +05:30 |
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 |
Chayan Deb
|
1a7c9e11d1
|
[Snap Cursor (WIP)]: Experimental feature 'snap_cursor' is updated. Yellow cursor that snaps to the nearest grid point is now available (always active, unless user activates crosshair using ALT+X).
|
2025-01-21 16:37:26 +05:30 |
Chayan Deb
|
7f613294f4
|
[Snap Cursor (WIP)]: Experimental feature 'snap_cursor' is updated. It can be selected from the Options menu (disabled by default) and will take effect when the wire-drawing mode is active. This is a work in progress and needs a lot more polishing to be properly usable. Currently only supports snapping to nearest component-endpoint. Cursor to snap to nearest grid point is pending.
|
2025-01-21 15:49:52 +05:30 |
Chayan Deb
|
73789df48c
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-21 12:10:40 +05:30 |
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
|
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 |
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
|
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 |
Chayan Deb
|
ed1a471f5d
|
[Fixed Upstream Bug]: While the schematic editor is in intuitive-interface mode, drawing a wire would immediately terminate the endpoint of it when the LMB button is released (i.e. user click drew a point - when persistent_command was disabled). This behavior is now corrected, but a non-essential feature introduced in the last set of upstream commits had to be broken (end wire creation when dragging in intuitive interface mode). The broken feature will be fixed in a future commit.
|
2025-01-20 14:12:33 +05:30 |
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 |
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 |
Chayan Deb
|
eee26c9f3e
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-19 15:35:42 +05:30 |
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
|
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 |
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
|
26df8d7d21
|
[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:50:36 +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
|
7fe267842a
|
[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:08:44 +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
|
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
|
151241afc7
|
add new command `xschem get modified` (returns 1 if circuit needs to be saved)
|
2025-01-17 17:48:02 +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 |
Chayan Deb
|
24bfb5b363
|
[Bugfix]: Fixed an issue where the bottom statusbar showed the green zsh: command not found: Draw indicatior when the user enters and exits wire-drawing mode without actually drawing a wire.
|
2025-01-17 11:42:59 +05:30 |
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
|
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
|
bcca65da90
|
translate(), @spice_get_current, typo led to missing argument in printf()
|
2025-01-16 15:35:11 +01:00 |
stefan schippers
|
315c5bd600
|
added symbol attributes @spice_get_current_<param>, @spice_get_modelparam_<param>, @spice_get_modelvoltage_<param>
|
2025-01-16 02:52:52 +01:00 |
stefan schippers
|
f79f9ecf1d
|
removed dbg mesages
|
2025-01-15 19:12:30 +01:00 |
stefan schippers
|
f2b9d0c6f3
|
added attribute @spice_get_current<n> for retrieving current through terminal <n> of primitive device; example: @spice_get_current2 to get base current of BJT device
|
2025-01-15 17:39:59 +01:00 |
stefan schippers
|
7d6c3f4764
|
destroy_all_tabs() do a final redraw to avoid inconsistent screen after some tab removals
|
2025-01-15 03:11:12 +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
|
3081714ebf
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-14 18:08:10 +05:30 |
stefan schippers
|
a24145c16c
|
revert change `LCC symbols: make 1st LCC level pins display spice_get_voltage annotation data` (not working as expected)
|
2025-01-14 01:13:14 +01:00 |
stefan schippers
|
b0973ae8c0
|
add_pinlayer_boxes(): fix uninitialized bb[PINLAYER][i].fill, LCC symbols: make 1st LCC level pins display spice_get_voltage annotation data
|
2025-01-13 17:30:11 +01:00 |
stefan schippers
|
6cca3fefc4
|
add debug line in load_sym_def()
|
2025-01-13 13:30:15 +01:00 |
stefan schippers
|
0920c6804d
|
comments and indentation in save.c
|
2025-01-13 11:58:16 +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 |
Chayan Deb
|
05a376e678
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-12 12:59:02 +05:30 |
stefan schippers
|
8da888a119
|
fix uninitialized `raw` pointer in graph_fullxzoom() and graph_fullxzoom()
|
2025-01-12 00:08:41 +01:00 |
stefan schippers
|
66a6c913e3
|
removed warning msg
|
2025-01-11 22:45:42 +01:00 |
stefan schippers
|
7d0a0e82bf
|
name_unlabeled_instances() commented out redundant (never happens) check
|
2025-01-11 20:24:16 +01:00 |
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 |
stefan schippers
|
172ab4081d
|
changed `xschem is_symgen` to `xschem is_generator` as name is more appropriate
|
2025-01-11 14:17:30 +01:00 |
stefan schippers
|
02d992d2a6
|
fix error checks in get_sch_from_sym()
|
2025-01-11 14:10:02 +01:00 |
stefan schippers
|
5161f3dc0a
|
some doc updates and comments, error checks in get_sch_from_sym()
|
2025-01-11 14:08:23 +01:00 |
Chayan Deb
|
8b6f5c1b9d
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-11 11:33:44 +05:30 |
stefan schippers
|
9d54269d25
|
doc updates (@spice_get_node)
|
2025-01-11 01:34:41 +01:00 |
stefan schippers
|
69ddd2966c
|
get_sym_name(): use with_quotes=6 in extraction of schematic attribute as done in get_additional_symbols() and get_sch_from_sym()
|
2025-01-10 17:40:16 +01:00 |
stefan schippers
|
be76009a3c
|
remove dbg msg
|
2025-01-10 17:15:53 +01:00 |
stefan schippers
|
a0da5c7b51
|
fix resolution of symbol references like: symbolgen.tcl(buf), when descending into symbol correctly recognize generator and descend into generated symbol
|
2025-01-10 17:14:13 +01:00 |
stefan schippers
|
1d5ff21130
|
get_sch_from_sym() fix detection of empty instance `schematic` attribute
|
2025-01-10 16:51:20 +01:00 |
stefan schippers
|
aeb57781a8
|
fix some c89 violations (warnings)
|
2025-01-10 16:14:24 +01:00 |
stefan schippers
|
59e7872f67
|
reduce some pointer indirections to array subscripts (readability)
|
2025-01-10 16:00:47 +01:00 |
stefan schippers
|
0a3fd95e06
|
code formatting
|
2025-01-10 14:58:10 +01:00 |
stefan schippers
|
882e20397d
|
get_additional_symbols(), get_sch_from_sym(): allow to resolve schematic calls like: schematic=generator.tcl(@n\) --> let get_tok_value() return backslashes and remove surrounding "..." quotes
|
2025-01-10 14:12:05 +01:00 |
Chayan Deb
|
48b561b72c
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-10 17:08:28 +05:30 |
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 |
Chayan Deb
|
3746564468
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-09 21:13:37 +05:30 |
stefan schippers
|
aa36cbb897
|
@path expansion in translate(): remove path components above the level where raw file (if any) was loaded; added @spice_get_current in bsource.sym
|
2025-01-09 15:35:35 +01:00 |
Chayan Deb
|
a184d38007
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-09 17:21:52 +05:30 |
Chayan Deb
|
21d4abcfc0
|
[Experimental Feature Update (orthogonal_wiring)]: Modified the last added orthogonal wiring mode to only FINALIZE either a horizontal, or a vertical component when a user-click event is detected. HOWEVER, the full orthogonal wire is drawn on the canvas anyways. A double-click using LMB causes both the horizontal and vertical components to get finalized, and the wire-drawing mode is simultaneously terminated. To get the best experience with this feature, 'persistent_commands' should also be enabled from the 'Options' menu.
|
2025-01-09 15:56:29 +05:30 |
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
|
ff7c767c4d
|
propagate drawing graph Hcursor functions to SVG/PDF exports
|
2025-01-09 00:31:11 +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 |
stefan schippers
|
d2321f1eeb
|
cleanup code in waves_callback()
|
2025-01-07 13:04:41 +01:00 |
stefan schippers
|
15738bbf51
|
better drag waves in x direction (continue even if dragging outside of graph)
|
2025-01-07 12:03:49 +01:00 |
stefan schippers
|
a3e7610d83
|
horizontal cursors in graphs
|
2025-01-07 04:20:32 +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 |
stefan schippers
|
4d76708534
|
save_schematic(): remove set_modify(2) if same name. need to add a dedicated parameter for save without title update
|
2025-01-05 11:27:18 +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
|
69a23355fb
|
refactor some debug print messages for NULL strings
|
2025-01-04 11:33:58 +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 |
stefan schippers
|
0e63e1bfff
|
remove commented dirty hack
|
2025-01-03 13:48:23 +01:00 |
Chayan Deb
|
b1e4d14a80
|
[Changed behavior of a workflow action]: While the 'persistent-wire-draw' checkbox is ticked in the 'Options'-menu, pressing 'Esc' will immediately eject the user from wire-drawing-mode and end any multi-segment wire being drawn. Double click behavior remains the same as before.
|
2025-01-03 18:08:33 +05:30 |
stefan schippers
|
abc88e8819
|
Revert dirty hack to make a click on an open menu close it, still some issues
|
2025-01-03 13:15:30 +01:00 |
stefan schippers
|
ed1149edb2
|
dirty hack to make a click on an open menu close it
|
2025-01-03 13:09:18 +01:00 |
stefan schippers
|
e77cc334f4
|
has_included_subcircuit() and proc has_included_subcircuit: compare and reorder only ports with associated symbol pin. do not consider `extra` ports assigned via attributes
|
2025-01-03 00:49:54 +01:00 |
stefan schippers
|
294a10bd5a
|
go_back(): if a write of modified schematic is requested before going up but write fails (for example due to permission issues) then issue a warning and go ahead anyway. Previously xschem got stuck in the lower hierarchy with no way to escape. If xschem load is done with `noundoreset` option do not change some context data (xctx->currsch, xctx->sch_path, xctx->portmap, xctx->sch_inst_number, ...). Various fixes/enhancements in cellview and traversal procedures.
|
2025-01-02 22:38:40 +01:00 |
Chayan Deb
|
052d7e8793
|
[Added New Feature]: New menu option 'Enable infix wire' is now accessible through the 'Options' menu. This option is turned-off by default and can be enabled anytime through the menu or the 'xschemrc' file to make xschem-editor revert back to it's old behavior, prior to commit 96c3dde250
|
2025-01-02 20:03:42 +05:30 |
Chayan Deb
|
6e886ff448
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-02 18:55:36 +05:30 |
Chayan Deb
|
1ef5445353
|
Repo Merge
|
2025-01-02 18:54:37 +05:30 |
Chayan Deb
|
76e106563b
|
[UI/UX Enhancement]: When the 'w'-key is pressed to enter wire-drawing mode, until drawing begins with an LMB-click - a new bottom status-bar entry will appear in deep blue color along with the text {WIRE READY TO DRAW! } - indicating the current editor mode. Either pressing 'Esc'-key, or starting the wire-drawing process with an LMB-click will cause this new status-bar entry to disappear.
|
2025-01-02 18:46:46 +05:30 |
stefan schippers
|
45382d1b1d
|
fix `s` command (simulate) to work with new menu system
|
2025-01-02 13:22:34 +01:00 |
stefan schippers
|
2bd205427d
|
load_schematic(): do not set xctx->time_last_modify if called with reset_undo == 0; fix persistent command mode when started from menu; update traversal procedures
|
2025-01-02 12:52:51 +01:00 |
Chayan Deb
|
724f8e834e
|
Merge branch 'StefanSchippers:master' into master
|
2025-01-02 13:42:56 +05:30 |
Chayan Deb
|
96c3dde250
|
[Feature enhancement]: Pressing the 'w'-key now sets the schematic editor to wire-drawing mode, instead of immediately placing down the wire. Press LMB in this state to start drawing the wire.
|
2025-01-02 12:32:35 +05:30 |
stefan schippers
|
8fa2c9c22a
|
add all_hierarchy parameter to proc traversal
|
2025-01-01 11:48:33 +01:00 |
stefan schippers
|
041d90548d
|
xschem.tcl toolbar procs reordering
|
2024-12-31 22:57:28 +01:00 |
stefan schippers
|
3a8d36d0fe
|
update add_custom_menu.tcl to new menu system, some refactoring in xschem.tcl for toolbar (add_toolbuttons procedure)
|
2024-12-31 21:00:09 +01:00 |
stefan schippers
|
05dc1a4772
|
update add_custom_menu.tcl for new menu system
|
2024-12-31 13:05:48 +01:00 |
stefan schippers
|
b23b162f2c
|
rewritten the menu system using a menubar vs the menubuttons
|
2024-12-31 03:51:05 +01:00 |
stefan schippers
|
2c8468ee1c
|
add custom binding to MenuButton Button-1 events so clicking on a posted menubutton will unpost it
|
2024-12-30 19:03:06 +01:00 |
stefan schippers
|
1a14adaade
|
Hovering other menu titles while one is open will drop down the other menus, even wihout holding down mouse button1
|
2024-12-30 15:31:59 +01:00 |
stefan schippers
|
1e75d69dfe
|
remove unused variable mbg in menu system
|
2024-12-30 11:20:07 +01:00 |
stefan schippers
|
c45ae9248b
|
slightly bigger font for traversal
|
2024-12-30 01:11:37 +01:00 |
stefan schippers
|
724c67435c
|
updates in traversal proc, fix searching for xschem_man.html if clicking the link into the About dialog and running xschem from the src/ dir.
|
2024-12-30 01:04:40 +01:00 |
stefan schippers
|
0ba037894f
|
update keys.help
|
2024-12-29 21:37:17 +01:00 |
stefan schippers
|
135022a39d
|
removed src/traversal.tcl
|
2024-12-29 19:39:29 +01:00 |
stefan schippers
|
0b4cedbf05
|
add Button3 drag for rectangle zoom, move ctx menu to Button3Release, updates in traversal and cellview
|
2024-12-29 19:35:49 +01:00 |
stefan schippers
|
b68731481c
|
updated cellview and traversal procedures
|
2024-12-29 14:47:27 +01:00 |
stefan schippers
|
be39ce970b
|
remove traversal.tcl from src/Makefile.in
|
2024-12-29 12:52:28 +01:00 |
stefan schippers
|
0ffd327b85
|
do not do a rectangle zoom (`z` key) if no minimum area is given; added `xschem get symbols` command; added `derived_symbols` in `xschem symbols` command; added menu `simulations->Keep symbols when traversing hierarchy`; created `proc cellview` and integrated `traversal.tcl` into xschem.tcl
|
2024-12-29 12:38:26 +01:00 |
stefan schippers
|
61c4f72c15
|
some `xschem test` benchmarks added
|
2024-12-24 03:15:50 +01:00 |
stefan schippers
|
b16a5ef927
|
code comments
|
2024-12-23 12:24:06 +01:00 |
stefan schippers
|
3fecba878c
|
fix double push_undo() call when adding a wire in intuitive_interface (by click and drag from a wire endpoint or symbol pin). This led to inconsistencies (spurious connecting dots on wires) when doing an Undo operation
|
2024-12-23 02:22:40 +01:00 |
stefan schippers
|
712b985333
|
proc edit_prop: better selection of value=".... \" .... \" ...": dont get confused by escaped quotes
|
2024-12-23 00:51:52 +01:00 |
stefan schippers
|
7a8ab78d11
|
restore rotten intuitive interface command ctrl-shift-click-drag to move a component creating wires if pins attached to components or wires
|
2024-12-22 18:49:58 +01:00 |
stefan schippers
|
c4ebc92aa2
|
update xschem go_back command (pas integer notitle to go_back() function; simplify wrap handling vs sweep variable in draw_graph(), graph_fullyzoom(), calc_custom_data_yrange(), find_closest_wave()
|
2024-12-21 13:05:33 +01:00 |
stefan schippers
|
6682965dba
|
make @spice_get_current work for pnp and npn symbols
|
2024-12-21 00:49:44 +01:00 |
stefan schippers
|
b892ad8ac7
|
Make @spice_get_current report Id (drain current) for mos devices (defined as plain mosfets in model (ngspice syntax), may be to extend for Xyce)
|
2024-12-20 22:25:19 +01:00 |
stefan schippers
|
1ddafe3276
|
updated autozero_comp.sch to show saout histogram; xschem raw switch: do not call update_op() if not switching into a 1-point OP or DC sim
|
2024-12-20 11:56:53 +01:00 |
stefan schippers
|
47f0d2d57c
|
improvements in raw_get_pos(), fix test_backannotated_subckt.sch (was not simulating anymore)
|
2024-12-20 02:28:38 +01:00 |
stefan schippers
|
d9d75de337
|
remove dbg message
|
2024-12-20 01:19:02 +01:00 |
stefan schippers
|
d03f3b52e1
|
bars for hystograms use squared lines, not rounded lines, added command `xschem raw pos_at node value` to find position (in raw file) where node = value
|
2024-12-19 23:53:11 +01:00 |
stefan schippers
|
7402385a82
|
fix regression from commit `graphs: always plot one point before x1 and one point after x2 of simulation`: 2-dimensional dc-sweeps did miss first or last point
|
2024-12-18 01:55:05 +01:00 |
stefan schippers
|
da6532d8d8
|
doc updates (xschem image command)
|
2024-12-17 09:27:01 +01:00 |
stefan schippers
|
6b75aa62aa
|
avoid a redundant set_modify(-1) in review_window("destroy"...)
|
2024-12-17 01:07:36 +01:00 |
stefan schippers
|
158ed8decc
|
load_schematic(): do not invoke trim_wires (if enabled) if called non interactively with reset_undo == 0 (it will change name of top schematic in tab and window title while netlisting)
|
2024-12-16 16:44:56 +01:00 |
stefan schippers
|
5bc194f3a5
|
separated undo_initialized and mem_undo_initialized, so they can be used more interchangeably
|
2024-12-16 12:14:11 +01:00 |
stefan schippers
|
b4423126ea
|
add (disabled) debug message in proc set_tab_names
|
2024-12-16 09:09:39 +01:00 |
stefan schippers
|
8c4d5cb7b8
|
push_undo() correctly handle case when tmpdir can not be created (init_undo() fails)
|
2024-12-16 02:18:32 +01:00 |
stefan schippers
|
cac5392a45
|
proc set_tab_names: call [xschem get schname] only once
|
2024-12-16 01:24:36 +01:00 |
stefan schippers
|
538d3bf2ad
|
xschem raw values now returns full precision, no more 8 digit rounding, as this is undesirable for transient noise sims
|
2024-12-15 12:24:51 +01:00 |
stefan schippers
|
5eea0728c7
|
update in_memory_undo.c to be in sync with pop_undo(4, ...)
|
2024-12-14 22:39:13 +01:00 |
stefan schippers
|
e8e217591d
|
add verilator in addition to icarus verilog simulator
|
2024-12-12 12:45:24 +01:00 |
stefan schippers
|
a97b47623f
|
annotate_op: delete current raw file (to replace with new OP raw) ONLY if current loaded raw file is an OP simulation (npoints==1)
|
2024-12-11 01:54:31 +01:00 |
stefan schippers
|
13e38b803d
|
annotate_op command only deletes loaded OP raw file (if any), does no more delete all loaded raw files.
|
2024-12-10 23:31:09 +01:00 |
stefan schippers
|
4bdfa44575
|
use ttk::combobox instead of spinbox where available (tcl > 8.4) for graph Line/HistoH/HistoV selection
|
2024-12-10 11:41:35 +01:00 |
stefan schippers
|
48d7522a8c
|
remove debug messages
|
2024-12-10 00:37:26 +01:00 |
stefan schippers
|
893c48d7dd
|
fix some HistH graph draw artifacts when panning/zooming the graph
|
2024-12-10 00:07:33 +01:00 |
stefan schippers
|
8bb69b65e9
|
HistogramH and HistogramV graph modes
|
2024-12-09 17:25:40 +01:00 |
stefan schippers
|
2a7ee749ba
|
xschem raw add: add optional sweep_var parameter
|
2024-12-09 00:00:27 +01:00 |
stefan schippers
|
2ec8c61757
|
fix previous commit for digital graphs
|
2024-12-07 11:40:49 +01:00 |
stefan schippers
|
f73cf30452
|
added a fix in draw_graph_points() to avoid waves to be drawn outside of the graph box container on Windows, where there is no working XSetCLipRectangles()
|
2024-12-07 00:56:04 +01:00 |
stefan schippers
|
963e877497
|
Allow wave expressions with spaces on a single line without quotes ("...."). Quotes can be used for wave expression on multiple lines. Side effect: multiple nodes can no more be specified on a single line separated with spaces. Use newlines
|
2024-12-05 02:54:08 +01:00 |
stefan schippers
|
75b5cc13f4
|
added `-undo 1` to all text widgets. If text_replace_selection is enabled replace selection when pasting also in entry widgets as done with text widgets
|
2024-12-04 16:38:35 +01:00 |
stefan schippers
|
0734414bd7
|
simplify some regsub pattern substitutions in xschem.tcl
|
2024-12-04 13:41:52 +01:00 |
stefan schippers
|
ce99d093c4
|
screen grab: if draw crosshair is enabled and a screen grab is done show default mouse pointer
|
2024-12-01 11:55:46 +01:00 |
stefan schippers
|
5ae730a5fb
|
waves_selected(): do not check sch_waves_loaded() to return is_inside
|
2024-11-30 10:57:06 +01:00 |
stefan schippers
|
17a564062c
|
graphs: always plot one point before x1 and one point after x2 of simulation waves so they will extend to full graph area even if there are few simulation points.
|
2024-11-30 01:16:37 +01:00 |
stefan schippers
|
ebc4babdd4
|
add graph_use_ctrl_key variable (default 0) to force holding Control key to interact with graphs. This avoid graphs "stealing" events that are expected to work on the schematic
|
2024-11-29 22:52:36 +01:00 |
stefan schippers
|
7ca8857302
|
starting a move (m) or copy (c) operation when nothing is selected does not change ui_state. Clearly a bug
|
2024-11-29 01:30:38 +01:00 |
stefan schippers
|
8eb60ae32b
|
allow full specification of file selector window geometry and pane sizes. examples in xschemrc
|
2024-11-28 11:37:21 +01:00 |
stefan schippers
|
471675ad49
|
fully remember panedwindow (vertical and horizontal) sash positions in load_file_dialog
|
2024-11-28 10:06:37 +01:00 |
stefan schippers
|
e2f19d8b7c
|
better implementation of previous fix. if read_dataset() does not find a matching dataset, delete only current raw structure, not all loaded raw files.
|
2024-11-28 03:51:27 +01:00 |
stefan schippers
|
9c48617e4e
|
xschem annotate_op command: if no OP analysis is found in raw file try to load a DC sweep and use first point for schematic annotation. This is done because Xyce stores OP data as a 1-point DC sweep
|
2024-11-28 03:18:32 +01:00 |
stefan schippers
|
f9b341ef98
|
revert last changes in draw_graph_points(). Optimization was already done.
|
2024-11-28 00:51:38 +01:00 |
stefan schippers
|
b642d63215
|
avoid unneeded calls to draw_crosshair(1) if crosshair is not enabled. Double performance of draw_graph_points() (do not draw on xctx->window if XCopyArea drawing model (now the default) is enabled
|
2024-11-27 16:13:48 +01:00 |
stefan schippers
|
ca6fb60ce7
|
added `legend` checkbutton in graph dialog box to switch off signal legend in analog graphs
|
2024-11-25 14:29:19 +01:00 |
stefan schippers
|
cf7933b99d
|
save.c: do not assume complex data for `constants` raw file sections, deduce data type from Flags line (both complex and real constants sections exist)
|
2024-11-25 12:48:25 +01:00 |
stefan schippers
|
7fccc2eed1
|
better xschem bbox command
|
2024-11-22 03:12:57 +01:00 |
stefan schippers
|
4fff388f99
|
add `constants` plot type in graph sim type drop down menu
|
2024-11-22 00:11:37 +01:00 |
stefan schippers
|
893bd20901
|
remove a clipping condition in draw_graph_points() as graph-area clip is set in draw_graph()
|
2024-11-21 10:58:15 +01:00 |
stefan schippers
|
67a4407952
|
fix typo in condition (draw_pixmap instead of save_pixmap)
|
2024-11-16 10:19:34 +01:00 |
stefan schippers
|
7e699d94e5
|
indentations in xschem.tcl
|
2024-11-14 20:41:54 +01:00 |
stefan schippers
|
1c69848325
|
correctly handle `set_title & 2` in descend_schematic()
|
2024-11-14 00:35:21 +01:00 |
stefan schippers
|
819e2f0969
|
limit precision of (now unsnapped) selection rectangle dimensions in status line
|
2024-11-13 23:05:46 +01:00 |
stefan schippers
|
de9c40af65
|
allow file extension spec in tmpfile creation, update index.html
|
2024-11-13 12:04:56 +01:00 |
stefan schippers
|
4fca204e8d
|
improvement of previous commit. Sanitize paths ending with ////, like /aa/bb/cc///
|
2024-11-12 22:48:21 +01:00 |
stefan schippers
|
169d743b33
|
insert symbols should tolerate paths in XSCHEM_LIBRARY_PATH ending with `/`
|
2024-11-12 20:58:09 +01:00 |
stefan schippers
|
20359ed43e
|
update license info. Remove unneeded newline saving in version line of .sch/.sym files, remove c89 flag based on lib versions
|
2024-11-12 20:23:18 +01:00 |
stefan schippers
|
aa95f0ff9d
|
Small changes to allow build with tcl-tk 9.0
|
2024-11-12 01:16:43 +01:00 |
stefan schippers
|
127a2a0221
|
add needed include <stdarg.h> in scheduler.c (needed, probably some library or other include file was sourcing it).
|
2024-11-11 20:59:29 +01:00 |
stefan schippers
|
63ac9ccbb9
|
update Changelog for 3.4.6
|
2024-11-11 17:17:42 +01:00 |
stefan schippers
|
dd33a067de
|
select rectangles are unsnapped. much easier to select small objects
|
2024-11-10 09:53:37 +01:00 |
stefan schippers
|
346666e13d
|
draw_graph_grid(): handle NaN in y-data , avoid infinite loop
|
2024-11-07 00:39:53 +01:00 |
stefan schippers
|
b7e39700d4
|
add ability to read ASCII raw files
|
2024-11-06 11:59:00 +01:00 |
Stefan Schippers
|
bb49cc9b26
|
fix incomplete line in actions.c
|
2024-11-05 20:09:04 +01:00 |
stefan schippers
|
92c99c10f9
|
get_additional_symbols(): some sanity checks, descend_schematic() more options in set_title argument (avoid set title, avoid processing pins/nets, avoid descending into i-th xdec[3] instance, descend as a whole xdec[3:0], add `xschem get_additional_symbols what` command, allow `xschem get_sch_from_sym -1 inv.sym` to get schematic associated with symbol. hier_psprint(): avoid printing / listing duplicate schematics, improved traversal.tcl
|
2024-11-05 13:59:37 +01:00 |
stefan schippers
|
0bd6ccef86
|
select_element(): do not draw selection if fast argument given
|
2024-11-03 10:33:11 +01:00 |
stefan schippers
|
e26e03ff0b
|
comments on top of change_sch_path()
|
2024-11-03 00:23:49 +01:00 |
stefan schippers
|
94d5c44599
|
xschem change_sch_path command for changing the current path we are descended in; set_title parameter for xschem descend and xschem go_back (optimization for faster scripts). optimized utility procedure traversal.tcl. Catch glob pattern errors in proc setglob
|
2024-11-03 00:22:40 +01:00 |
stefan schippers
|
f3abdf2eb8
|
avoid another crash in case of malformed raw files (if raw->npoints not allocated return without attempting to read raw file)
|
2024-11-01 00:27:29 +01:00 |
stefan schippers
|
65bd4ce766
|
fix is_quoted() (reported "aaa\\\"bbb" as unquoted)
|
2024-10-31 11:06:19 +01:00 |
stefan schippers
|
71d5481dc8
|
move definition of my_memmem() outside of an #ifdef
|
2024-10-28 19:15:13 +01:00 |
stefan schippers
|
c342a1c41f
|
update svgdraw and psprint to recognize svg embedded images. svgdraw exports it as embedded svg
|
2024-10-28 18:55:13 +01:00 |
stefan schippers
|
76c1425180
|
get_surface_from_file(): better error checking
|
2024-10-28 12:45:50 +01:00 |
stefan schippers
|
17146a7cf7
|
get_surface_from_b64data() for svg images: create cairo surface only if filter_data() went successfully
|
2024-10-28 12:12:11 +01:00 |
stefan schippers
|
9894d31437
|
when inserting a svg image automatically set the filter attribute to rasterize svg to png (if tcl variable svg_to_png is set in xschemrc), "rsvg-convert" or "inkscape" or imagemagick "convert" can be used. see template xschemrc in src/
|
2024-10-27 13:06:49 +01:00 |
stefan schippers
|
2c82e26dcb
|
when importing svg images with a svg->png filter (like rsvg-convert) keep source svg data in the image_data attribute instead of the rasterized data. This will make these images scalable and schematics will be smaller (if using small vector SVGs)
|
2024-10-27 03:04:55 +01:00 |
Stefan Schippers
|
426cf9c33a
|
revert change "draw_image(): do RECTORDER() before taking *x1, *y1", as it messes up images in rotated /flipped symbols
|
2024-10-26 18:09:12 +02:00 |
stefan schippers
|
a7cded9f19
|
fix crash if multiple raw files are loaded and last one fails loading due to corrupt raw file
|
2024-10-24 22:16:46 +02:00 |
stefan schippers
|
f8a676aebf
|
avoid rasiing an error when typing a raw file with some tcl variables (like $netlist_dir/...) in Raw file textbox in graph dialog
|
2024-10-24 19:47:28 +02:00 |
stefan schippers
|
8de9004468
|
added operator "cph()" to transform discontinuous phase ph(xxx) in AC analyses to aontinuous phase, like ngspice cph() function. Usage: instead of ph(out) use "ph(out) cph()"
|
2024-10-16 17:02:36 +02:00 |
stefan schippers
|
fa699fe2f1
|
change_elem_order(): use input_line instead of text_line dialog
|
2024-10-14 21:59:39 +02:00 |
stefan schippers
|
30e407b743
|
add "Properties" menu for "Change selected object insertion order" (Shift-S)
|
2024-10-14 21:41:07 +02:00 |
stefan schippers
|
02a891b173
|
further streamlined hash lookup functions
|
2024-10-14 15:35:53 +02:00 |
stefan schippers
|
c0474a139d
|
simplified hash table lookup functions (indirect pointer)
|
2024-10-14 14:39:22 +02:00 |
stefan schippers
|
e4d9594065
|
small cosmetic changes in hash tables (initialization of next pointer)
|
2024-10-14 12:13:19 +02:00 |
stefan schippers
|
98475e328b
|
avoid triggering tclcommand -> launcher() when dragging mouse with ctrl key around objects with such attribute
|
2024-10-12 20:47:34 +02:00 |
stefan schippers
|
d387bb911d
|
add commented example for custom radiobutton menu entries in add_custom_menu.tcl
|
2024-10-10 14:28:36 +02:00 |
stefan schippers
|
baad052431
|
fix a potential crash (premature free() of pointer) when editing graph node names with % (dataset) specifier
|
2024-10-10 01:45:50 +02:00 |
stefan schippers
|
1b734d5202
|
fix refression (color of highlighted texts in only_probes view mode)
|
2024-10-07 15:50:29 +02:00 |
stefan schippers
|
835b05ce9f
|
subst_token(): if s is empty and tok, new_val are gien just set return string to tok=new_val (no newlines whatsoever)
|
2024-10-05 11:43:57 +02:00 |
stefan schippers
|
4311ac424a
|
handle NULL analysis type in debug messages (extra_rawfile()), recursive value substitution in symbol displayed strings: if translated text begins with @ search for recursive upper level definitions for text following @, example: @model symbol text, instance has model=@modeln, upper instance has modeln=nfet: resolve symbol text and display "@model" as "nfet", proc inutile: add optional wait argument to block xschem while dialog displayed
|
2024-10-03 13:08:32 +02:00 |
stefan schippers
|
95c7a68c92
|
enhance xschem print command (allow to specify bitmap size while using selection to indicate the boundbox to export)
|
2024-09-29 00:16:05 +02:00 |
stefan schippers
|
bb1a1557bc
|
svg and ps/pdf export: do not include data for offscreen graphs or images to reduce file size
|
2024-09-24 11:10:30 +02:00 |
stefan schippers
|
2372828c22
|
svgdraw and psprint: draw text after images as done in draw.c. Correct postscript / pdf image zoom factor from 0.97 to 1.0 to match scaling with other xschem elements.
|
2024-09-24 00:50:10 +02:00 |
stefan schippers
|
aaac47720f
|
draw_image(): add cairo_flush() to flush pending paints. In some cases a black square was exported instead of the image... Update Changelog for upcoming 3.4.6
|
2024-09-23 23:17:19 +02:00 |
stefan schippers
|
a79e4304d9
|
draw_image(): do RECTORDER() before taking *x1, *y1
|
2024-09-23 15:57:32 +02:00 |
Stefan Schippers
|
adb855db0b
|
do not reset xctx->netlist_name after doing `Netlist` from gui (xschem netlist -erc)
|
2024-09-17 20:31:28 +02:00 |
stefan schippers
|
f92dcfc49b
|
add "proc ev7" (same as "proc ev", 7 significant digits)
|
2024-09-17 16:55:26 +02:00 |
stefan schippers
|
0afa12c3fb
|
proc edit_prop: correctly set editprop_sympath when tcleval(...) is used
|
2024-09-16 16:55:09 +02:00 |
stefan schippers
|
2ef4b88146
|
sym_vs_sch_pins(): do tcl substitution on symbol references found in schematic being compared with symbol
|
2024-09-15 22:08:39 +02:00 |
stefan schippers
|
4ff7d0e2f8
|
load_sym_def(): process tcleval(....) (if present) in `name` argument (use tcl_hook2())
|
2024-09-14 23:31:26 +02:00 |
stefan schippers
|
88b44db333
|
node_hash.c optimization: use inst[].lab instead of get_tok_value(..., "lab"...)
|
2024-09-14 09:52:06 +02:00 |
stefan schippers
|
dfe2e05603
|
let symbol name entry box in component edit property dialog box expand in X direction if dialog box is enlarged
|
2024-09-12 00:36:52 +02:00 |
stefan schippers
|
ba7e50ccc1
|
update hash calculation in xschemtest.tcl for LCC_instances netlist (due to changes in schematic)
|
2024-09-10 22:38:44 +02:00 |
stefan schippers
|
1108a71263
|
replace "UNDEF" with "-" in backannotated nodes that have no value in raw file.
|
2024-09-09 23:15:05 +02:00 |
stefan schippers
|
a065fb93cc
|
draw node names in graphs even if specified file / analysis (graph rawfile or sim_type attributes) is not loaded
|
2024-09-09 13:20:02 +02:00 |
stefan schippers
|
ad96e222f1
|
if autoload is set in graph and a filename is given (rawfile graph attr) load raw file immediately when drawing graph. Don`t wait for user to load an intiial raw file to trigger auto loading
|
2024-09-08 13:43:29 +02:00 |
stefan schippers
|
e5015488f3
|
double clicking in the center of a graph will now bring up the graph edit attributes dialog box even if no raw file is loaded
|
2024-09-07 10:11:52 +02:00 |
stefan schippers
|
3f4004fdca
|
set verison to 3.4.6RC (Release Candidate) to avoid confusion
|
2024-09-07 00:01:39 +02:00 |
stefan schippers
|
1b6612669d
|
bump version to 3.4.6, will be next release when fully tested
|
2024-09-06 23:39:16 +02:00 |
stefan schippers
|
1dd3e28b32
|
remove memory tracking alloc IDs
|
2024-09-06 22:27:05 +02:00 |
stefan schippers
|
391464bab9
|
fix another small memory leak due to tclvareval("xschem exit...")--> use tcleval()
|
2024-09-06 22:19:36 +02:00 |
stefan schippers
|
882f7f7434
|
fix memory leaks introduced since introduction of my_expand()
|
2024-09-06 18:33:09 +02:00 |
stefan schippers
|
fddc4650d1
|
graphs will autoload (if autoload checked) raw data even if no raw file is specified in graph dialog box (use current loaded raw file, usually a different analysis)
|
2024-09-06 16:57:13 +02:00 |
stefan schippers
|
291ba02339
|
save 4 vars ( node, ph(node), re(node, im(node) ) instead of 2 ( node, ph(node )for ac plots
|
2024-09-06 10:24:12 +02:00 |
stefan schippers
|
27c0fd1622
|
use atof_spice() instead of atof() to read cursor position data from graph attributes
|
2024-09-05 14:53:36 +02:00 |
stefan schippers
|
a94e0363fd
|
Add "private cursor" check box in graph dialog box. This allow the related graph to have separate "a" and "b" cursors. These cursor positions are saved with the schematic and are thus persistent when reloading the schematic.
|
2024-09-05 00:51:15 +02:00 |
stefan schippers
|
d40a17df64
|
correctly set top_path and current_win_path in preview_window() when calling alloc_xschem_data(), don`t use fake window paths (alert_ proc uses parent win path)
|
2024-08-31 09:00:48 +02:00 |
stefan schippers
|
2b94e845c0
|
fix a bug in preview symbol displaying when inserting components. Toplevel .load widget was destroyed before cleaning preview data in preview_window(), so after some insertion preview was no more displayed.
|
2024-08-31 08:07:17 +02:00 |
stefan schippers
|
0e44462227
|
resolved_net(): correctly handle subschematic nets attached via port to upper global node. (return VCC instead of x1.VCC)
|
2024-08-29 22:10:06 +02:00 |
stefan schippers
|
1a2a925fbf
|
remove backslashes in translate3() call in draw_temp_symbol(), as done in draw_symbol()
|
2024-08-29 08:13:06 +02:00 |
stefan schippers
|
eb7b9ae018
|
removed pointless my_strcat() in translate3()
|
2024-08-29 07:56:22 +02:00 |
stefan schippers
|
d06e999daf
|
better backslash handling in translate3()
|
2024-08-28 23:37:43 +02:00 |
stefan schippers
|
a725838850
|
fix escape recognition in translate3(), so in symbol texts it is possible to write \\@name to an instance attribute to get literal @name in displayed text instead of the instance name. fix typo in tutorial_use_existing_subckt.html. some schematic updates (no more enable show_pin_net_names tcl variable)
|
2024-08-28 09:39:43 +02:00 |
stefan schippers
|
4f0c3afa23
|
port ordering for a schematic .subckt line will always be deduced from the symbol if it exists, even if the symbol type is not "subcircuit" (so it will be used for also "primitive" type symbols).
|
2024-08-24 08:21:08 +02:00 |
Stefan Schippers
|
652268c4d0
|
add tcl xschemrc variable "select_touch" that enables selecting objects touched by the selection rectangle if dragging to the left. Previously this behavior was enabled by "incremental_select" that shows selected elements while dragging. These two optional behaviors are now enabled/disabled by separate variables
|
2024-08-14 20:43:47 +02:00 |