stefan schippers
|
f4560a0add
|
bezier shapes can be drawn (polygon with attribute `bezier=1`)
|
2024-02-29 03:40:08 +01:00 |
stefan schippers
|
0ab7affda2
|
restore_selection(): add line width to bounding box of selection to eliminate graphic artifacts
|
2024-02-27 16:43:49 +01:00 |
stefan schippers
|
6ac58eb880
|
fix regression in translate (check instances out of bound) affecting place_symbol()
|
2024-02-27 12:51:20 +01:00 |
stefan schippers
|
7a45497b45
|
add `xschem raw del node` command
|
2024-02-25 12:21:13 +01:00 |
stefan schippers
|
20add157c2
|
when double clcking (or hitting `q`) to edit attributes if instance has lab=... or value=... select the RHS and position insertion cursor, focus textbox. Add Shift-T bindkey for toggle *_ignore flag
|
2024-02-17 02:58:53 +01:00 |
stefan schippers
|
1cbbed77ba
|
first commit for parametric models in subckts --DO NOT USE--
|
2024-02-09 17:00:56 +01:00 |
stefan schippers
|
dcef3d4b9d
|
waves_callback(): do not set GRAPHPAN when setting cursor position numerically
|
2024-01-05 11:21:34 +01:00 |
stefan schippers
|
1fa490b066
|
some fixes on numerical cursor adjustments (for log X scales)
|
2024-01-05 03:13:51 +01:00 |
stefan schippers
|
90ce40da2c
|
Right click on a graph cursor allows to set the cursor position numerically
|
2024-01-05 02:08:13 +01:00 |
Stefan Schippers
|
cd6deb0bf9
|
xschem raw_read: allow specifying t1 and t2 to load only a portion of simulation file
|
2023-12-31 20:33:08 +01:00 |
stefan schippers
|
a95e3597bc
|
Implement vertical flip (shift-V) and vertical flip in place (alt-v), change netlisting mode command moved to bindkey ctrl-shift-V; when opening insert component dialog focus the File/Search entry box
|
2023-12-23 00:06:01 +01:00 |
stefan schippers
|
ed477b90a5
|
eps export
|
2023-12-12 01:14:40 +01:00 |
stefan schippers
|
1285ba0cd4
|
while opening a sub-schematic in another window propagate cursora/b/ annotate info
|
2023-12-09 13:26:18 +01:00 |
stefan schippers
|
eb471528f9
|
better cut wires inside symbols --> break_wires_at_pins(1)
|
2023-12-09 00:32:41 +01:00 |
stefan schippers
|
b8fecf997b
|
avoid showing alert box if enabling / disabling stretch mode by bindkey
|
2023-12-05 17:32:48 +01:00 |
stefan schippers
|
a797bc593f
|
when in `persistent command` wire or line placement mode, a first escape clear the ongoing placement, a second escape clears the wiring or line-ing command
|
2023-12-01 23:05:07 +01:00 |
stefan schippers
|
83c692caa9
|
copy between windows: allow to navigate between more than 2 windows
|
2023-11-28 18:41:38 +01:00 |
stefan schippers
|
8d155af82f
|
`Alt-e` does a true descend sub-schematic and opens it in another window
|
2023-11-20 17:53:28 +01:00 |
stefan schippers
|
d4cde62870
|
add draw option in schematic_in_new_window(), create_new_tab(), create_new_window()
|
2023-11-20 00:12:13 +01:00 |
stefan schippers
|
babd340da9
|
report previous netlist error also if doing current level only netlist
|
2023-11-15 00:32:41 +01:00 |
stefan schippers
|
5d3b7bd7d0
|
report error if trying to do a netlist and the file can not be written (example: broken simulation symlink)
|
2023-11-14 23:40:41 +01:00 |
stefan schippers
|
f4df48813f
|
copy_hierarchy_data() initial implementation for future hierarchy cloning. Alt-Shift-E and Alt-Shift-I to edit schematic / symbol in a new xschem process. `xschem raw switch`: allow also integer index (as returned by `xschem raw info`) instead of `file type` to switch raw file
|
2023-11-13 18:00:30 +01:00 |
stefan schippers
|
ecca0ba2be
|
better swap_windows() function (used when closing a window in multi-window(non-tabbed) interface, resolved_net() recognize global nodes. remove static data from record_global_node(), put in xctx. Remove dead code from translate() (@spice_get_voltage)
|
2023-11-12 13:01:11 +01:00 |
stefan schippers
|
7368344d85
|
waves callback(): absolute X panning will not switch raw file if no rawfile is specified in graph
|
2023-11-10 18:50:58 +01:00 |
stefan schippers
|
769c7d4663
|
Add incremental_select tcl variable. It is normally set. If set show selected objects while dragging a selection rectangle. If unset show selection at end of drag operation. Fix possible endless loop whiel zooming on X axis if raw file has only one point (OP). Also if graph specifies custom plot switch to that raw file to get correct x range.
|
2023-11-09 16:41:53 +01:00 |
stefan schippers
|
584f88fba1
|
object iterator, object spatial hash table for all objects. tbu in the future maybe. Fix crashing bug when copying ngspice_probe.sym if annotation is enabled
|
2023-11-09 13:57:58 +01:00 |
stefan schippers
|
35359aed20
|
backannotate_at_cursor_b_pos(): allow backannotating b cursor on graphs created from multiple OP points
|
2023-11-09 04:10:06 +01:00 |
stefan schippers
|
75c8376a04
|
fix draw_crosshair when xctx->semaphore not zero, fix tabs context menu issues with `open schematc/symbol`; set_modify: do not attempt to reconfigure menu buttons (Simulate-Netlist-Waves) if invoked from preview dialog
|
2023-11-08 22:45:31 +01:00 |
stefan schippers
|
98def78164
|
simulation button will go yellow while sim is running.Clicking a yellow simulate button will kill simulation.
|
2023-11-06 16:47:14 +01:00 |
stefan schippers
|
e5431d86c5
|
fix setting netlist button color code statwe variable (tctx::...._netlist)
|
2023-11-06 01:44:25 +01:00 |
stefan schippers
|
881d8a4ed9
|
various fixes for Simulator/Netlist button color codes
|
2023-11-05 14:13:20 +01:00 |
stefan schippers
|
3bd3956042
|
Netlist and Simulate buttons will be colored in red or green depending on the outcome of the associated operation
|
2023-11-05 00:14:55 +01:00 |
Stefan Schippers
|
a5f660e54a
|
improve drawing quality of crosshair with (now default) fix for broken gpu enabled
|
2023-11-04 18:29:15 +01:00 |
Stefan Schippers
|
fd5a1e0bdf
|
fix draw_crosshair() (dont get obscured by rubber placement)
|
2023-11-04 15:56:42 +01:00 |
stefan schippers
|
1955d6d386
|
setup_tcp_bespice: if port 0 is given let TCL find a free port
|
2023-11-01 02:23:21 +01:00 |
stefan schippers
|
52e36cc46b
|
add portable sleep_ms() function
|
2023-10-29 23:52:33 +01:00 |
stefan schippers
|
78981f2c2f
|
disabled testmode
|
2023-10-28 11:22:37 +02:00 |
stefan schippers
|
a2ed8fefb6
|
added an optional fix (fix_mouse_coord) that uses an alternative method for getting mouse coordinates in KeyPress/KeyRelease events. This should hopefully work around some remote desktop connection softwares that report wrong mouse coordinates (may be absolute vs relative to window?)
|
2023-10-28 11:19:23 +02:00 |
stefan schippers
|
b965fb0ba4
|
improvements in the `Fix for GPUs with broken tiled fill`, no more flickering in selections
|
2023-10-27 23:45:54 +02:00 |
stefan schippers
|
364fb55df1
|
avoid doing unselect_all() if nothing to unselect
|
2023-10-27 12:42:08 +02:00 |
stefan schippers
|
6362ebb214
|
add tanh() function in wave expression evaluator
|
2023-10-27 10:48:53 +02:00 |
stefan schippers
|
3d4113ad26
|
tabs bar context menu
|
2023-10-25 11:43:43 +02:00 |
stefan schippers
|
0819211bb0
|
when doing a select by area with shift pressed the object under the mouse will not be unselected if it was already selected (xctx->already_selected)
|
2023-10-23 23:41:39 +02:00 |
stefan schippers
|
2aeafac85c
|
if selecting a waweform dataset with `t` key update text floaters that might contain the dataset information. When closing the process list dialog also close the process status sub-dialog.
|
2023-10-23 16:03:27 +02:00 |
stefan schippers
|
8f3fedab1f
|
fix a bug when closing with ctrl-q (ie from callback(), calling proc quit_xschem) and there are multiple windows, some with changed data (switch_tab() was skipped due to xctx->semaphore). Process status dialog window will not be updated if vertical slider is not positioned to bottom
|
2023-10-22 02:53:03 +02:00 |
Stefan Schippers
|
73c4a17c2c
|
dragging to the right a selection rectangle will select objects fully enclosed. Dragging to the left will select all objects intersected by the select rectangle.
|
2023-10-21 19:09:17 +02:00 |
stefan schippers
|
1b7a035220
|
fix graph_fullxzoom in case of non monotonical sweep x axis variable
|
2023-10-18 16:10:08 +02:00 |
stefan schippers
|
8cfd51d8f9
|
add the ability to load multiple raw files with different analyses in a single schematic ( extra_rawfile() )
|
2023-10-17 00:42:31 +02:00 |
stefan schippers
|
f10555917e
|
optimized usage of interpolate_yval(), add raw->cursor_b_val[]
|
2023-10-16 09:53:03 +02:00 |
stefan schippers
|
a7bcfb7941
|
do interpolation when annotating "b" cursor values in schematic, as done with measurements with "a" cursor.
|
2023-10-15 12:05:48 +02:00 |
stefan schippers
|
25ab8a8b8a
|
cursor `a` measurements in graph match the %n dataset specified on nodes if any (or default to dataset 0)
|
2023-10-13 23:04:45 +02:00 |
stefan schippers
|
617e6b3b8d
|
update live backannotation if "a" and "b" cursors are swapped, syntax node%n is now allowed to plot only dataset "n" of the node. Update html docs and example autozero_comp circuit
|
2023-10-13 15:51:51 +02:00 |
stefan schippers
|
9b4bd44fd0
|
merged in fast_raw_read branch
|
2023-10-11 14:05:27 +02:00 |
stefan schippers
|
0204b7596b
|
first selected instance is now always the master (instead of the first in the xschem array order) when doing an edit attribute on a group of selected elements
|
2023-10-04 17:15:52 +02:00 |
stefan schippers
|
5ffc7bb5e4
|
select_object() returns sel instead of sel.type (more info on return)
|
2023-10-04 00:09:12 +02:00 |
stefan schippers
|
02086d76a7
|
revert from tclgetboolvar to tclgetvar for edit_symbol_prop_new_sel, as this is not a boolean
|
2023-10-03 15:28:42 +02:00 |
stefan schippers
|
3ed97b3df2
|
some code refactoring, more usage of tclgetboolvar()
|
2023-10-03 10:27:29 +02:00 |
stefan schippers
|
05c79febc2
|
better implementation of cursor reconfiguring if draw_crosshair enabled
|
2023-09-30 00:22:10 +02:00 |
stefan schippers
|
405d950412
|
add xctx->mouse_inside var to better decide if crosshair has to be drawn
|
2023-09-29 10:09:13 +02:00 |
stefan schippers
|
64cb20dab9
|
add crosshair_layer tcl variable, so user can change crosshair layer.Crosshair is deleted on LeaveNotify events.
|
2023-09-29 00:30:43 +02:00 |
stefan schippers
|
433ec84278
|
simpler state bits checking in callback() (use rstate to avoid redundant ShiftMask checks) . Enable loading SP Analysis raw files (they are equal as AC analyses) )
|
2023-09-28 21:03:28 +02:00 |
stefan schippers
|
5df9347533
|
removed tcl variable connect_by_kissing (to many options is a mess)
|
2023-09-28 12:34:10 +02:00 |
stefan schippers
|
5080c2c33f
|
fix unitialized vars (mostly false errors, but why not...)
|
2023-09-28 00:30:00 +02:00 |
stefan schippers
|
ba00ba2921
|
add #ifdef __unix__ around filter of bits 13 and above on state var in callback()
|
2023-09-27 21:00:02 +02:00 |
Stefan Schippers
|
e7c53b59b5
|
callback(): filter out any state value that uses bits above 12
|
2023-09-27 18:35:40 +02:00 |
stefan schippers
|
97e9b27bbd
|
fix garbage on screen if drawing something, go to another tab, return and move objects. Regression was introduced on repo.hu r3033
|
2023-09-27 13:13:15 +02:00 |
stefan schippers
|
f3230ceb42
|
FIX_BROKEN_TILED_FILL can now be changed runtime (fix_broken_tiled_fill)
|
2023-09-27 01:28:31 +02:00 |
stefan schippers
|
a4b597cfc2
|
add Alt-c command for copy object and create nets to connected terminals
|
2023-09-25 23:23:08 +02:00 |
stefan schippers
|
db9c014566
|
move "auto join/trim wires" to Options menu, "m" and "ctrl-m" move commands are swapped if enable_stretch is enabled. new_prop_string() now check for true uniqueness (all inst names are expanded with expandlabel() and all bits are hashed). Fixed regression in check_unique_names()
|
2023-09-25 15:28:40 +02:00 |
stefan schippers
|
152623f4aa
|
control-mouse drag select will negate the setting of enable_stretch tcl variable so drag and control-drag can be swapped vith Options->enable stretch
|
2023-09-24 00:29:15 +02:00 |
stefan schippers
|
4663a86da4
|
fix various regressions for handling instances with lock=true attribute
|
2023-09-24 00:17:48 +02:00 |
stefan schippers
|
6a0fcdae05
|
various optimizations (do not execute graphic ops with gctiled if FIX_BROKEN_TILED_FILL is defined, optimize XCopy Area blits
|
2023-09-23 01:46:39 +02:00 |
stefan schippers
|
aa75723446
|
fix MotionNotify events when crosshair is enabled and there is a selection and FIX_BROKEN_TILED_FILL not defined
|
2023-09-22 19:29:14 +02:00 |
stefan schippers
|
75e2efd5a7
|
filter unused bbox_set variable in draw_crosshair()
|
2023-09-22 19:15:26 +02:00 |
stefan schippers
|
426be0e68c
|
add !defined(__unix__) in all #if defined(FIX_BROKEN_TILED_FILL)
|
2023-09-22 18:33:16 +02:00 |
stefan schippers
|
288c053ec6
|
various FIX_BROKEN_TILED_FILL fixes
|
2023-09-22 18:26:18 +02:00 |
stefan schippers
|
3ba3bbc21a
|
remove dbg message
|
2023-09-22 15:58:21 +02:00 |
stefan schippers
|
1da34af531
|
allow to use the Windows keys (if present) as alternatives for "Alt"
|
2023-09-22 15:53:23 +02:00 |
stefan schippers
|
a2d3f68977
|
fix missing #if defined((FIX_BROKEN_TILED_FILL) in draw_crosshair()
|
2023-09-22 13:23:21 +02:00 |
stefan schippers
|
93291ed84b
|
add draw_crosshair() (if enabled) at end of any draw() operation
|
2023-09-22 13:13:35 +02:00 |
stefan schippers
|
8f0d920a96
|
add draw_crosshair setting in xschemrc: draw a crosshair at mouse coordinates
|
2023-09-22 12:48:22 +02:00 |
stefan schippers
|
a1fbbcfd80
|
add another command to cut wires without aligning cut point to snap (Alt-Shift-Right mouse button)
|
2023-09-22 10:40:57 +02:00 |
stefan schippers
|
fbe3064cf2
|
remove gctiled in MyXCopyArea() calls (use gc[0], background, any GC is ok as long as it does not have some strange logic operator)
|
2023-09-21 23:51:17 +02:00 |
stefan schippers
|
95e1c833c8
|
better pan operation if FIX_BROKEN_TILED_FILL is set
|
2023-09-21 23:01:09 +02:00 |
stefan schippers
|
301f9c4bdf
|
add experimental compile flag in xschem.h, FIX_BROKEN_TILED_FILL, if defined work around some graphic adapters/driver implemtations that dont honor the X11 specifications for drawing with a pixmap tile fill pattern
|
2023-09-21 21:52:24 +02:00 |
stefan schippers
|
98ffd177ce
|
improve connect by kissing: now 3 move operations are present: 1) just move selection, 2) move adding wires to connected pins/wire endpoints, 3) move by stretching wires attached to pins/endpoints to follow moving objects
|
2023-09-18 13:29:49 +02:00 |
stefan schippers
|
978d575e22
|
add tcl command "xschem change_elem_order n" add optional x0 and y0 coordinates as additional parameters to "xschem flip" and "xschem rotate" commands, add command "move_instance inst x y rot flip"
|
2023-09-17 00:13:52 +02:00 |
stefan schippers
|
e0bcc302c9
|
"xschem connected_nets" command now works for any selected instance, not only labels/probes/pins. Argument can be 0, 1, 2 (2-->select only wire segments drectly attached to selected net/instance)
|
2023-09-14 09:48:12 +02:00 |
stefan schippers
|
cf675be805
|
add "xschem print pdf_full" and "xschem print ps_full" commands to print full view properly fitting paper size, regardless of xschem window size, some fixes in circle postscript drawing (set newpath) and rectangle clipping. Add menu command "PDF/PS export full"
|
2023-07-13 13:24:17 +02:00 |
stefan schippers
|
5d9e0d3d8a
|
enable xschem to load multiple files even if started with "-x" (only CLI mode)
|
2023-06-25 23:33:26 +02:00 |
stefan schippers
|
31451e6be9
|
do not do a context switch on first invocation of callback() (set old_winpath = ".drw").
|
2023-06-24 07:38:55 +02:00 |
stefan schippers
|
89d90c21db
|
xctx->sch made an array of pointers instead of array of PATH_MAX strings (memory saver)
|
2023-06-17 23:58:35 +02:00 |
stefan schippers
|
c3d03cd6d2
|
show red dot when cuting a wire with new alt-right button click on a wire. Added also menu command in Tools
|
2023-06-14 10:08:50 +02:00 |
stefan schippers
|
4f08f0a6b6
|
added command Alt-RightButton to cut a wire at mouse position. Do a prepare_netlist_structs(0) at end of break_wires_at_pins() for connectivity consistency
|
2023-06-13 11:51:16 +02:00 |
stefan schippers
|
2b0655e3e9
|
improve `Shift-M` command by stretching nets that land on instance pins while moving instances
|
2023-06-10 23:41:02 +02:00 |
Stefan Schippers
|
3b3e723f8f
|
add new command `Shift-M`, move selected instances adding wires when separating overlapping instance pins (Connect by kissing)
|
2023-06-10 18:57:32 +02:00 |
Stefan Schippers
|
d5cc702fe8
|
Add command "Tools -> Remove wires running throuh selected inst. pins"
|
2023-06-10 17:24:12 +02:00 |
stefan schippers
|
de1f4f0d86
|
added commands `xschem switch [win_path|schname]`, `xschem destroy_all [force]`, added `[force]` option to xschem exit
|
2023-06-08 10:40:52 +02:00 |
stefan schippers
|
b6e9ab33cc
|
fix compare schematics if no file for schematic to compare with is given. In this case compare current schematic with saved version. Also issue a warning if swapping compare schematics if comparing schematic with disk version of itself.
|
2023-06-06 19:39:40 +02:00 |
stefan schippers
|
4f387f3bbe
|
disable displaying backannotation data if `b` cursor is hidden or `Simulation->Live annotation with b cursor` is disabled. Use resolved_net() in translate() when displaying @spice_get_voltage so it will work on sub block ports
|
2023-06-05 12:58:19 +02:00 |