Commit Graph

329 Commits

Author SHA1 Message Date
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