Commit Graph

490 Commits

Author SHA1 Message Date
stefan schippers 60c5230727 resolved_net(): resolve nets passed to symbols via attributes, avoid using dtoa_eng() in returned spice voltages, use dtoa(), since it may be used further in tcl expressions. 2024-05-03 15:00:51 +02:00
stefan schippers 00d367ae0c Add xctx->mouse_moved state var to better handle ctrl-clicks (launcher() trigger) 2024-04-18 20:47:06 +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 b004618c25 explicit parameters to interpolate_yval() 2024-04-01 23:23:45 +02:00
stefan schippers d9871edb13 update LCC_instances.sch 2024-04-01 02:23:30 +02:00
stefan schippers 318c52cd0f cursor positions always saved in true x values (no log taken for logx axes) avoid too many log10() / pow(10, ...) conversions 2024-04-01 00:25:50 +02:00
stefan schippers 8eecd73c50 removed impossible if() condition in backannotate_at_cursor_b_pos() 2024-03-31 13:36:35 +02:00
stefan schippers 9c5a1a9816 handle cursor drawing in multiple graphs, some with log scale some others without 2024-03-31 13:27:12 +02:00
Stefan Schippers 731a265dcf removed some dead code 2024-03-30 20:16:47 +01:00
Stefan Schippers cab89d03d9 revert to commit 2024-03-26 18:48:48 2024-03-30 19:20:51 +01:00
stefan schippers 547bdec018 avoid rouding to 0 wave measures in show_node_measures() 2024-03-30 13:00:39 +01:00
stefan schippers 27c065327e improve cursor display and move with multiple graphs with different sweep variables (2) 2024-03-30 02:20:38 +01:00
Stefan Schippers ba76f42277 improve cursor display and move with multiple graphs with different sweep variables 2024-03-29 19:58:54 +01:00
stefan schippers fdeca4646a cursor a and b: when draging in a graph with default sweep var correctly map cursor in other graphs with different sweep vars 2024-03-29 13:57:06 +01:00
stefan schippers 642ee525ac fix grab screen window pathname calculation 2024-03-21 22:37:39 +01:00
stefan schippers 751c965e9f waves_selected(): better checking of mouse `is_inside` graph 2024-03-21 22:28:32 +01:00
stefan schippers 5417392357 grab screen make it work if initiated from additional tabs / windows 2024-03-21 22:10:27 +01:00
stefan schippers e55c8294c2 fix ctrl-click in launchers if no intuitive interface is set 2024-03-20 18:43:25 +01:00
stefan schippers 3e722d217d remove dgb message 2024-03-20 11:55:36 +01:00
stefan schippers 61b1c0b368 add `Tools->Grab screen area` function (unix only) 2024-03-20 03:53:56 +01:00
stefan schippers cfccb64026 remove dbg msgs 2024-03-18 03:10:00 +01:00
stefan schippers f68cb6c18a start launcher commands on mouse button release (if no mouse movement has occurred) to allow ctrl-button1 drags 2024-03-18 02:39:54 +01:00
stefan schippers 6c0398a8b6 fix unintended move operation start when clicking a launcher that starts a new schematic and returning to the originating schematic containing the launcher. Added support for direct JPG image import (no JPG->PNG filters) 2024-03-14 11:09:49 +01:00
stefan schippers 90241d2463 Alt-x to toggle crosshair display, removed alt-x and ctrl-shift-X for compare schematic functions (seldom used) improved calculation of `delta` in drawgrid, improved search() (added missing arcs and polygon attribute searches) 2024-03-10 12:11:51 +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 0611c7a6e7 allow select and drag graphs by clicking the upper border too 2024-03-08 15:08:47 +01:00
stefan schippers 336a132219 update inst_sch_select.sch, fix constrained move reset in intuitive_interface 2024-03-08 00:48:05 +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 71b1b52384 fix some unwanted persistency of constrained move (now renamed to constr_mv and moved into xctx struct), not being reset at end of command 2024-03-07 17:48:41 +01:00
stefan schippers f57f09ee12 allow rotate/flip objects while moving in intuitive interface (Button1 pressed) 2024-03-07 12:31:18 +01:00
stefan schippers 76678ab8b6 drag wires from pins: improvements on previous commit 2024-03-07 00:08:47 +01:00
stefan schippers 022a0ebb5e drag wires from pins: if instance is selected can drag wire from pin even if there are already other wires attached 2024-03-06 20:04:15 +01:00
stefan schippers a7034ce2d1 directly create new wires by clicking and dragging from unconnected instance pins (if intuitive_interface is enabled) 2024-03-06 16:27:14 +01:00
stefan schippers 4d3af62ee1 intuitive_interface: if clicking without shift all other selected objects will be unselected 2024-03-06 13:02:53 +01:00
stefan schippers f663a6486d intuitive_interface: if clicking without shift all other selected objects will be unselected 2024-03-06 12:58:29 +01:00
stefan schippers 174d590ad1 fix some regressions (place wires/lines/polys/rectangles from context menu), restore selection when creating a new arc 2024-03-06 12:53:49 +01:00
stefan schippers 72e613785a fix some graphical artifacts when moving crosshair over partially selected objects (missing rebuild_selected_array()) 2024-03-05 23:17:42 +01:00
stefan schippers 3cdd6526c6 add xschem closest_object command, improve intuitive_interface (dont full-select already partially selected item when dragging) 2024-03-05 11:57:15 +01:00
stefan schippers ceafdedbbd intuitive_interface fix bug(3): cleanup 2024-03-05 10:04:39 +01:00
stefan schippers 02247d13bb intuitive_interface fix bug(2) (did unselect all when clicking on a new instance) 2024-03-05 09:58:48 +01:00
stefan schippers 733d5a9bb1 intuitive_interface fix bug (did unselect all when clicking on a new instance) 2024-03-05 09:55:35 +01:00
stefan schippers 99e2c9e503 various improvements in intuitive_interface and shape point selection 2024-03-05 02:54:35 +01:00
Stefan Schippers 5be402ea22 add Option menu `draw crosshair`, some fixes for crosshair restoring when unselecting 2024-03-04 20:42:29 +01:00
stefan schippers 73ab9de8da better threshold for selecting rectangle vertices 2024-03-04 17:44:35 +01:00
stefan schippers 4a418924eb add line and wire direct endpoint editing 2024-03-04 17:13:36 +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 5d9de6a697 refactor some variable names in callback() (Button1 events) 2024-03-04 01:25:29 +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 3fac387e62 Intuitive interface: do not start move operations if clicking with SHift key pressed. Too many side effects. 2024-03-03 12:34:15 +01:00
stefan schippers d529f21d88 do not start xctx->drag_elements if xctx->poly_point_selected is set 2024-03-03 05:15:51 +01:00
stefan schippers 55ac6bb396 further fix previous regression 2024-03-03 04:21:49 +01:00
stefan schippers c07871d4ee fix position of if(waves_selected(event, key, state, button)) in callback ButtonRelease 2024-03-03 02:24:38 +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 825c671660 fix intuitive_interface: selecting other objects with mouse srea select + shift will not start a move operation 2024-03-02 16:03:37 +01:00
stefan schippers 77cd3eec56 added intuitive_interface xschemrc and menu option: click and drag to quickly move objects without keyboard commands 2024-03-02 14:15:30 +01:00
stefan schippers 731dd91018 do a change linewidth before redrawing after invoking set_snap(), before draw() 2024-03-02 03:46:08 +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 7ca9819e13 when locating polygon point to be dragged select first found if there are overlaping points 2024-03-01 19:13:29 +01:00
stefan schippers 2f9d9e1755 dont allow recursive polygon placements (complete or abort before starting new) 2024-03-01 12:19:15 +01:00
stefan schippers a554ee0afa fix a typo in callback.c, remember size of text attribute set dialog box 2024-03-01 02:33:32 +01:00
stefan schippers 724449a1b3 comments in code about polygon point dragging 2024-03-01 00:48:04 +01:00
stefan schippers 28aec3fad8 fix error in set_snap(): should not do a redraw (draw() ) here, causing a segfault if x11/tk structures are not ready yet. add draw() in places where this function is called if there is something to draw/ 2024-03-01 00:39:24 +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 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