Commit Graph

190 Commits

Author SHA1 Message Date
stefan schippers f2cc1d0216 move_objects(RUBBER,...) and copy_objects(RUBBER): return immediately if snapped mouse coordinates not changed 2025-01-26 17:58:03 +01:00
stefan schippers bce1e652c6 refactored xctx->y_[12] to xctx->y[12] 2025-01-26 17:49:47 +01:00
stefan schippers 80a22c78a8 comments 2025-01-26 17:44:00 +01:00
stefan schippers 8086b5581e redraw_w_a_l_r_p_z_rubbers(): include zoom_rectangle(RUBBER), only execute if (snapped) coordinates changed, draw_crosshair(): only execute if (snapped) coordinates changed, find_closest_net_or_symbol_pin() is moved into draw_crosshair() so its calls are also minimized, do not allow z (zoom rectangle) if pending STARTWIRE, STARTLINE etc are in progress. 2025-01-26 15:19:22 +01:00
stefan schippers 4700483fa4 draw_crosshair(): more logical what parameter values 2025-01-25 02:13:59 +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 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 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 2060ca8871 update all text_bbox() calls to account for tabs in bbox calculation 2024-05-24 18:05:37 +02:00
stefan schippers 69ecb82750 in intuitive_interface allow to trigger laucher() by ctrl-click (if no mouse is moved), do not clear set_first_sel() data in intuitive_interface when clicking (without moving) multiple objects, better recognize .subckr or .model name in device_model attributes 2024-04-18 11:40:51 +02:00
stefan schippers 6a4131699a improve `xschem add_symbol_pin` command, add create_symbol.tcl procedure 2024-04-12 00:06:36 +02:00
stefan schippers 60e55212d5 handle rot/flip transfofmations for ellipses inside symbols 2024-04-06 23:13:14 +02:00
stefan schippers 059badaccd fix flip / rotation of ellipses (no absolute angles) 2024-04-06 11:31:36 +02:00
stefan schippers 092f111925 intuitive_interface fix: only clicking on an instance (no drag) does not push to undo state 2024-03-15 15:53:38 +01:00
stefan schippers a855f732c9 fix redundant push_undo() in shape_point_selected ops 2024-03-09 06:16:41 +01:00
stefan schippers 3a412e8e6f fix redundant push_undo() in drag_elements 2024-03-09 06:08:22 +01:00
stefan schippers 132d335757 fix a regression in merge_file(0,...) from user provided file being aborted 2024-03-07 18:32:42 +01:00
stefan schippers 1fc335cec2 cleanup expression for tmp_rot in draw_selection() 2024-03-07 15:27:13 +01:00
stefan schippers 943c8f4453 fix a regression in the display of rttaing/flipping objects while moving 2024-03-07 13:28:47 +01:00
stefan schippers b3a52015f1 add rectangle point editing (vertices can be drag directly) 2024-03-04 16:33:20 +01:00
stefan schippers 973d2c7415 remove dbg mesages 2024-03-04 15:33:11 +01:00
stefan schippers 7daea289a2 refactored callback() (more sub-functions), some fixes in copy between windows 2024-03-04 14:38:32 +01:00
Stefan Schippers 6d7a4ab377 Intuitive interface: Shift-click and drag will duplicate objectt instead of moving and creating wires. cleanup polygon point editing (removed redundant code) 2024-03-03 20:13:43 +01:00
stefan schippers 55ac6bb396 further fix previous regression 2024-03-03 04:21:49 +01:00
stefan schippers 48e93c4e37 added dark_gui_colorscheme (default: 0) for dark widget colorscheme configuration. Enabled again partial select (resize) of arcs 2024-03-03 00:40:51 +01:00
Stefan Schippers c49fd0bfc9 various fixes for intuitive_interface / drag_elements 2024-03-02 16:28:22 +01:00
stefan schippers 9f167f9568 allow launcher style behaviourrt (tclcommand / url attributes) on all objects. Add (shift + but1 click) and Delete (Ctrl+ But1 click) polygon points. fixed some graphical artifacs when adding new object while some selection is present 2024-03-02 02:29:03 +01:00
stefan schippers 9f04c22aa0 UI cleanups related to polygon point dragging. Prepare for polygon add/delete points 2024-03-01 20:05:45 +01:00
stefan schippers f903a018b2 removed partial select of arcs, will be replaced in the future by bound box resizing and ability to draw ellipses 2024-03-01 15:04:38 +01:00
stefan schippers e946a729f8 add ability to click and drag directly polygon/bezier points 2024-03-01 00:12:44 +01:00
stefan schippers 8515f25e25 fix regression in translate (check instances out of bound) affecting copy_objects() 2024-02-27 13:06:19 +01:00
stefan schippers 1e3ac96085 table_read(): read csv files 2024-02-27 10:24:21 +01:00
stefan schippers a0237b59b3 eliminated some redundant operations on instance flags (set_inst_flags() does the job) 2023-12-07 18:07:42 +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 8c29d0e812 fix error in capa-2.sym and missing check for null xctx->inst[].instname in get_pin_attr() 2023-11-11 20:03:20 +01:00
stefan schippers 2c26bfbaa9 fix some garbage while moving / copying and zooming. faster draw_selection(gctiled) if big selection (use a single XCopyArea), do not allow to descend/go_back if other UI action is pending, initial implementation of `xschem floaters_from_selected_inst` command, get_tok_val() allow quotes in tokens, like a"22"33=123 even if with_quotes unset (it is intended for token values not for tokens themselves) 2023-11-03 14:36:35 +01:00
stefan schippers a19020ed78 removed find_inst_to_be_redrawn() and related code (not worth doing) 2023-10-29 11:11:45 +01:00
stefan schippers 8b784d01d9 fix unrestored bbox coordinates in draw_selection() 2023-10-28 01:03:21 +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 b56ee2c998 use my_strdup2() in all text object copies(txt_ptr, prop_ptr, floater_ptr, ...) to better handle corrupted input data 2023-10-09 13:39:45 +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 db1bf8818a cleanup in usage of new_prop_string() and hash_names() 2023-09-28 23:19:14 +02:00
stefan schippers e13922e94f simplify place_symbol(), hash newly placed component name, so successive placements will not clash instance name. hash_all_names() renamed to hash_names() 2023-09-28 13:28:16 +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 f3230ceb42 FIX_BROKEN_TILED_FILL can now be changed runtime (fix_broken_tiled_fill) 2023-09-27 01:28:31 +02:00
stefan schippers 576a7e329b improve stretch move operations when auto trim is enabled 2023-09-26 02:19:37 +02:00
stefan schippers 983f6d9d6b add tcl variable "unselect_partial_sel_wires" and related options menu entry to unselect partially selected wires attached to component pins after a stretch move command 2023-09-26 01:38:48 +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