Commit Graph

3059 Commits

Author SHA1 Message Date
stefan schippers 96d2e56b53 add expr_eng(...) in addition to expr(...) to return result in engineering notation (like 3.2u) 2025-05-30 00:37:27 +02:00
stefan schippers b4283563d0 fix from_eng proc (meg was not handled correctly) 2025-05-29 21:09:43 +02:00
stefan schippers d123768fed fix from_eng proc (a comment added breaks the switch construct) 2025-05-29 21:04:47 +02:00
stefan schippers dcc64636cf propagate highlighted global nets when navigating the hierarchy 2025-05-27 09:39:06 +02:00
stefan schippers 44cbe7a9fc if selecting an element in stretch mode ("y" key) attached nets will also be (partially) selected. However allow to descend into instance. 2025-05-26 21:18:26 +02:00
stefan schippers a534218c5a completion of previous fix 2025-05-26 00:25:59 +02:00
stefan schippers c2a3c48228 make raw file selector invoked from graphdialog always on top of it (use -parent option) 2025-05-26 00:09:23 +02:00
stefan schippers ac629b62be fix again parameter substitution in instance symbol specialization (schematic=... in instance) 2025-05-22 10:02:38 +02:00
stefan schippers ee693aa49c revert calculation of expressions and parameter resolution in instance based symbol specializations. So multiple instances with same schematic=... attribute and different parameters (like WN=... WP=.... etc) can be used. 2025-05-21 01:54:46 +02:00
stefan schippers adbb3cd58d Use has_token() instead of strstr when checking token against (parent_sym_extra 2025-05-20 10:18:11 +02:00
stefan schippers 28dd3f2013 print_spice_element(): do not substitute "extra" pins in format string (like @body) with body=xxx given in parent symbol instance attributes 2025-05-20 02:51:52 +02:00
stefan schippers 9990e1b9d8 Bump Head version to 3.4.8RC 2025-05-16 16:02:47 +02:00
stefan schippers 92dd8fe5f4 remove dbg message 2025-05-14 10:02:39 +02:00
stefan schippers 718f4c8112 prepare for 3.4.7 tag 2025-05-14 09:58:55 +02:00
stefan schippers b122a8abef fix a small memory leak in delete_schematic_data() 2025-05-07 16:11:21 +02:00
stefan schippers c5705e28fc resolved_net(): resolve multiple levels of port-by-attribute propagation 2025-05-03 12:02:22 +02:00
stefan schippers 0f49e3cda7 Make xschem build with configure option --CFLAGS="-std=c23" (prepare for gcc-15 issues) 2025-05-01 23:52:53 +02:00
stefan schippers 248fb1fd73 toggle_ignore(): add xctx->prep_hash_inst=0, xctx->prep_net_structs=0, xctx->prep_hi_structs=0 at end of operations 2025-04-30 01:04:12 +02:00
stefan schippers 281c38b32d register WM_DELETE_WINDOW action to correctly close bindkey window 2025-04-28 00:48:01 +02:00
stefan schippers d3b5e999f4 ps_embedded_graph(): variable declaration guarded inside if defined(HAS_LIBJPEG); xschem.h: avoid including ../config.h if manual Makefile used 2025-04-25 01:36:29 +02:00
stefan schippers 18e45abc69 sanity checks on results strings in token.c 2025-04-21 16:23:45 +02:00
stefan schippers 6b12969d6d complete change `draw text at end as done in draw() fo preserve stacking order of objects`, in draw_symbol(), svg_draw_symbol() and ps_draw_symbol() 2025-04-21 11:35:18 +02:00
stefan schippers d2e40a8605 fix missing label text highlights in symbols. still to handle if highlight layer set to last 2025-04-21 00:36:07 +02:00
stefan schippers afc3f1b724 move some X11 dependent code into draw(), circuit example updates 2025-04-20 09:48:40 +02:00
stefan schippers 6af59cb3fb reset alloc IDs 2025-04-18 02:02:15 +02:00
stefan schippers dbac25433c `/` command (show bindkeys) will use a toplevel window instead of fullscreen 2025-04-18 02:00:08 +02:00
stefan schippers 21dbd0e340 fix a small memory leak issue in waves_callback(), variable curr_sim_type, fix random clipping (due to uninitialized var instead of rect coordinates) in ps_filledrect() 2025-04-17 15:46:33 +02:00
stefan schippers c91aff2abd add (commented) lines in xschemrc to change specific widget font attributes 2025-04-16 23:36:58 +02:00
stefan schippers 29ad1e06e1 reduce size of ps exports by avoiding redundant set_ps_colors() calls 2025-04-16 16:25:38 +02:00
stefan schippers 1417c05658 fix possible unitialized value for c_for_text in draw_symbol(), ps_draw_symbol(), svg_draw_symbol(), fix ps/pdf export full (missing / wrong resetwin() calls) 2025-04-16 15:01:51 +02:00
stefan schippers 328f4443b5 add a missing restore linewidth after a ps/pdf print full 2025-04-16 11:26:16 +02:00
stefan schippers cf3fa993bd fix some regressions in text bbox calculation in no cairo mode 2025-04-16 02:54:56 +02:00
stefan schippers 9a937ecd70 Balloon help: also cancel scheduled future show window actions on Leave or FocusOut events 2025-04-16 00:41:43 +02:00
stefan schippers 2bd021328f add m param to pmos3.sym, kill balloon popup windows by FocusOut events to avoid Balloon helps sticking around on the screen 2025-04-16 00:29:45 +02:00
stefan schippers b74c0f4ac4 Honor `bus` attribute on lines / wires / polygons in svg and pdf exports 2025-04-14 12:31:59 +02:00
stefan schippers f22307afad `xschem raw clear` command: allow to specify a number `n`; delete the`n-th` raw file 2025-04-14 10:00:33 +02:00
stefan schippers 34c2927f4f add ngspice_verilog_cosim examples 2025-04-11 18:37:55 +02:00
stefan schippers 232384f8fb better zoom line width based on xctx->min_lw 2025-04-09 13:07:53 +02:00
stefan schippers d4fc6c96c1 set min_lw in xinit.c based on xschemrc line_width var 2025-04-09 12:20:06 +02:00
stefan schippers c3cb1218a1 set line width commands also set minimum allowed line width (good for UHD displays) 2025-04-09 11:47:19 +02:00
stefan schippers 8d0837d5e9 Add bindkey `Alt -` (specify line width) in addition to menu entry 2025-04-09 10:07:33 +02:00
stefan schippers b2e5a5235e add bus attribute (thick lines) for polygon, fix rubber display of wires and lines with bus=1 (missing rectorder() in XCopyArea) 2025-04-08 01:11:15 +02:00
stefan schippers 5ee8b862ea fix a keyboard focus problem in canvas window (regression) 2025-04-08 00:05:09 +02:00
stefan schippers 514b5be2c2 fix sym_txt (text display/hide) in symbols, add commands to place ipins and opins, move create_plot_cmd to ctrl-shift-X, grouped some menus in Symbol menu 2025-04-07 14:50:28 +02:00
stefan schippers 08d5669a66 command `/` (show_bindkeys) improved. Small color adjustements 2025-04-07 00:26:43 +02:00
stefan schippers 70aed29f7f fix ps/svg export of highlighted instances (text color) 2025-04-06 13:02:28 +02:00
stefan schippers 24f2af8c81 update keybinding documentation; add `/` command to show fullscreen image of keybindings also in Help menu) 2025-04-06 12:58:13 +02:00
stefan schippers 035794df47 preview_window: check xctx valid before calling resetwin() 2025-04-06 00:27:25 +02:00
stefan schippers 834d2c9757 draw_symbol(): draw text at end as done in draw() fo preserve stacking order of objects 2025-04-05 11:27:45 +02:00
stefan schippers 8e2748905a fix eval_expr not recognizing 1234e-12 (negative exponent),fix spice.awk (dangerous removal of `value=` patterns in spice netlists) 2025-04-05 02:07:48 +02:00
stefan schippers ff1c506b5d `xschem netlist`: do not clear keep_symbols if no -keep_symbol option is given 2025-04-04 10:12:12 +02:00
stefan schippers 4a1b1483b9 code cleanups ("schematic" attribute) 2025-04-04 00:35:54 +02:00
stefan schippers 795f89215e add bindkeys_cheatsheet.sch, moved shift-J to Ctrl-p (xplot creation) 2025-04-03 18:00:33 +02:00
stefan schippers d19ad57ee1 allow to change tcl flag `lvs_netlist` at runtime (just before netlist generation) , not only at xschem startup 2025-04-03 16:57:49 +02:00
stefan schippers 28aca824ed update docs for keybindings 2025-04-03 06:25:23 +02:00
stefan schippers f43273757d remove some no more existent keybinds in docs 2025-04-03 02:52:26 +02:00
stefan schippers 320aa96f98 fix regression: constrained move (V/H) when creating polygons 2025-04-03 01:54:21 +02:00
stefan schippers cd0a78d9ff cadence_compat: a Button **Release** (instead of **Press**) on a selected item will unselect everything but the item under the mouse. This allows click & drag in intuitive_interface + cadence_compat 2025-04-03 00:19:40 +02:00
stefan schippers 3941568804 further cleanups on event handling / window switching code 2025-04-02 13:26:46 +02:00
stefan schippers 36cbb84c04 refactor event code (FocusIn/Enter races) 2025-04-01 11:41:35 +02:00
stefan schippers 232ca9c58c followup of previous commit: do draw_selection in the right place in select_rect() 2025-03-29 19:16:40 +01:00
stefan schippers 859e39a579 select_rect(): remove redundant draw_selection() call 2025-03-29 12:22:25 +01:00
stefan schippers dc871f5227 area select: reverse effect of ctrl-modifier key depending on enable stretch: enable_stretch==1 and control -> NO stretch select; enable_stretch==0 and control -> Stretch select 2025-03-29 01:18:41 +01:00
stefan schippers 06632ffba5 fix proc dellview "Update" issue 2025-03-28 16:51:00 +01:00
stefan schippers 950c812080 bump version to 3.4.7RC (Release Candidate) (although lot of testing ahead before 3.4.7), mostly to avoid confusion with tagged 3.4.6 2025-03-28 15:30:12 +01:00
stefan schippers 9a6006c291 fix potential crash on close multiple windows / tabs (destroy_all_tabs(), destroy_all_windows() ) 2025-03-28 13:43:39 +01:00
stefan schippers 1d2bff5f9b cleanup FocusIn / window switching 2025-03-28 13:12:52 +01:00
stefan schippers 33050d406a do not show "no action on laucher is defined" when ctrl-click-release an object (with no mouse movement in intuitive interface) 2025-03-26 04:07:49 +01:00
stefan schippers dcb5689191 if an instance is selected with ctrl-shift-click in intuitive_interface mode, move instance creating new wires to pins connected to something. This was working as a plain stretch-move (stretch already attached nets instead of creating new ones) 2025-03-26 02:29:35 +01:00
stefan schippers 5e14ccf5a0 add a missing tclvareval("housekeeping_ctx", NULL); at the end of a new window creation 2025-03-26 02:11:31 +01:00
stefan schippers 2e86614c31 Esc destroys .ctxmenu 2025-03-26 01:18:31 +01:00
stefan schippers 8330f0f3c5 remove debug info 2025-03-25 23:44:54 +01:00
stefan schippers 1f4841b2b6 fix context switching in tabbed interface (regression) 2025-03-25 23:26:06 +01:00
stefan schippers 9e4b26b027 dont process Motion / ButtonPress events if done in wrong window without first focusing it 2025-03-24 16:21:01 +01:00
stefan schippers 3443e9aff5 even in click to focus mode allow switching to other window when copying stuff across windows 2025-03-24 15:32:37 +01:00
stefan schippers 5ac170f2a5 changes in event system to make window context switching (in no tab mode) less "automatic", requiring a FocusIn event to switch. Will work better when working with the new symbol browser. changed default value of autofocus_mainwindow to 0 (set to 1 explicitly in xschemrc if you need that) 2025-03-24 13:46:15 +01:00
stefan schippers 48beb76087 created handle_expose() event handler, offloaded from callback() 2025-03-23 16:10:58 +01:00
stefan schippers eadfe6511a further move statusbar code from callback() to update_statusbar() 2025-03-23 15:57:34 +01:00
stefan schippers 31a0712109 remove some redundant operations (housekeeping_ctx) when switching windows contexts for redraw_only 2025-03-23 12:16:01 +01:00
stefan schippers ed0d71c1ff move update statusbar stuff from callback() into separate function 2025-03-23 11:35:49 +01:00
stefan schippers d765f6ac4f in cadence_compat mode, when a selection is present, clicking on a selected item will unselect all others (default is do nothing) 2025-03-23 00:25:29 +01:00
stefan schippers 57a03c1c66 some small variable name refactor in xschem.tcl 2025-03-21 18:29:53 +01:00
stefan schippers 87325c6998 implement lassign command for tcl versions lacking it 2025-03-21 10:50:30 +01:00
stefan schippers 30d8789398 avoid lassign in xschem.tcl (not available pre-tcl8.5) 2025-03-20 12:07:49 +01:00
stefan schippers 08c613d3a8 fix regression (Shift-D not working) introduced after `Escape pressed while drawing polygon will cancel last segment instead of the whole poly` 2025-03-19 10:03:20 +01:00
stefan schippers baf80c3092 some comments added/removed 2025-03-19 02:15:52 +01:00
stefan schippers 8f0be37b16 do not skip texts with hide=instance attribute in calc_drawing_bbox() 2025-03-19 01:47:06 +01:00
stefan schippers 025cee31bb Add checkbutton description text in insert_symbol 2025-03-19 01:15:06 +01:00
stefan schippers 0b266d2bd0 merge in SuperChayan refactoring ( recompute_orthogonal_manhattanline() ) 2025-03-19 00:50:35 +01:00
stefan schippers ce8714acae add new_file_browser_* variables in xschemrc to allow new symbol browser to be used also to load files 2025-03-19 00:45:25 +01:00
stefan schippers 7e46ec6efb merge in SuperChayan changes for orthogonal wiring / manhattan move 2025-03-18 18:41:50 +01:00
stefan schippers e4d4c18b4c cleanups in insert_symbol procedures 2025-03-18 18:38:13 +01:00
stefan schippers 7cf84e9049 .processlist: update title based on current schematic 2025-03-18 17:17:20 +01:00
stefan schippers b4344360a9 better process list title 2025-03-18 16:31:07 +01:00
stefan schippers 53b90ee689 conversions from eng notation: add x in addition to meg as suffix for 1e6 (Xyce extension) 2025-03-18 15:53:47 +01:00
stefan schippers 0d2b57bfa5 use TkDefaultFont in right click context menu instead of a custom menu. This makes scaling with tk_scaling more consistent 2025-03-18 13:30:40 +01:00
stefan schippers c4b3e204a0 place_moved_wire(): in manhattan mode don`t store new wires if not needed (single point) 2025-03-18 12:36:46 +01:00
stefan schippers 2ea1294fb1 add toolbar_icon_zoom and ctxmenu_icon_zoom xschemrc (integer) variables to enlarge icons on XUHD displays 2025-03-18 10:51:34 +01:00
stefan schippers 0f9d201f0a (2) insert symbol preview. Fixed some race conditions 2025-03-18 03:31:37 +01:00
stefan schippers 172a001425 insert symbol preview. Fixed some race conditions 2025-03-18 03:07:48 +01:00
stefan schippers 4584c260ba new insert symbol: low-pass filter (200ms) on preview rendering to speed up quick listbox select events (arrow key autorepeat) 2025-03-18 01:58:55 +01:00
stefan schippers b348451160 new symbol browser: add Update button to refresh list of dirs and files; fix Alt-s (Reload) incorrectly moved in r keybind after handle_key_press() refactoring 2025-03-18 00:53:46 +01:00
stefan schippers abfa38b1e4 make move of wires with `manhattan_lines` consistent, keep last wire segment selected. TBD: fix orthogonal_wiring modes 2025-03-17 19:23:55 +01:00
stefan schippers f9546b6ebd add ORDER() before storing new wires (manhattan mode) in move operation 2025-03-17 13:08:37 +01:00
stefan schippers 42bd51e88b use drawtemp_manhattanline() also for new_line(). transform xctx->nl_xx[12] and xctx->nl_yy[12] used in some drawimg functions to local variables where global context is not needed. 2025-03-17 00:23:05 +01:00
stefan schippers caddf0f0dd fix indentation 2025-03-16 23:38:54 +01:00
stefan schippers 50321ae480 align callback.c with SuperCD fork 2025-03-16 19:56:57 +01:00
stefan schippers 33591fa41d applied recent additions from SuperCgayan 2025-03-16 11:35:30 +01:00
stefan schippers b415b8e889 fix regression in new_wire() (in manhattan mode) due to previous commit (courtesy SuperChayan) 2025-03-16 11:08:27 +01:00
stefan schippers a0a5d9876f drawtemp_manhattanline(): use local nl_xx[12] and nl_yy[12] variables, since xctx->nl_xx[12] and xctx->nl_yy[12] are used also in select_rect() which calls draw_selection() which calls drawtemp_manhattanline(). 2025-03-16 05:15:40 +01:00
stefan schippers 2f26544c45 dont assume a particular manhattan_lines when starting wires or lines. Keep last one set 2025-03-16 01:17:50 +01:00
stefan schippers e4cf179868 insert_symbol: Return Key binding for quick dialog close 2025-03-16 01:01:49 +01:00
stefan schippers c02b80c79d fixes in insert_symbol 2025-03-16 00:49:38 +01:00
stefan schippers 124d73ee64 fix regression (start new wires in manhattan orient) 2025-03-16 00:31:57 +01:00
stefan schippers cc90201b27 remove debug msgs in insert_symbol 2025-03-16 00:13:07 +01:00
stefan schippers ed8a6dbe11 little optimization in insert_symbol 2025-03-16 00:02:12 +01:00
stefan schippers d37c872a49 merge in a SuperChayan change in move.c 2025-03-15 23:47:18 +01:00
stefan schippers fd65c8876d cleanup and fixes in proc insert_symbol 2025-03-15 23:29:11 +01:00
stefan schippers 313acc8e29 further improvements to new_symbol_browser 2025-03-15 03:20:01 +01:00
stefan schippers 73a920ea41 xinit.c: eval user_startup_commands after sourcong tcl_files 2025-03-14 18:28:19 +01:00
stefan schippers 08397f7038 merge Chayan Deb changes for manhattan-style move objects and handle_key_press() refactor 2025-03-14 15:25:57 +01:00
stefan schippers 588ee1b8f4 do not call place_symbol() with relative symbol names. Initial draft fof proc get_list_of_dirs_with_symbols 2025-03-14 03:29:05 +01:00
stefan schippers 9cb435c43c remove implicit [pwd] prepending to relative paths given to rel_sym_path. this assumption is incorrect in some cases 2025-03-13 21:51:06 +01:00
stefan schippers e789988b05 add `user_startup_commands` variable that may contain tcl code to be executed after any new window creation. Useful to have custom bindings / menu / buttons in all windows. 2025-03-13 20:11:18 +01:00
stefan schippers 84ca35e6f5 add menu option Simulation->LVS->Upper case .SUBCKT and .ENDS 2025-03-13 11:57:09 +01:00
stefan schippers ac1f618030 clean up a bit the load_file_dialog pack order 2025-03-13 11:26:07 +01:00
stefan schippers 514b1f3789 insert_symbol: keep selected listbox item when leaving/entering the widget 2025-03-13 01:45:40 +01:00
stefan schippers 0c4c8f4d9f proc insert_symbol: select active listbox cell so symbol placement can start right away 2025-03-13 00:48:38 +01:00
stefan schippers 2a4ebe4b77 new (optional) symbol placement browser 2025-03-12 16:59:45 +01:00
stefan schippers 0f5c554e33 add command `xschem get ui_state`, improvements in proc insert_symbol 2025-03-12 02:00:45 +01:00
stefan schippers e1488da407 add `xschem rect gui`, `xschem line gui`, `xschem polygon gui`, `xschem wire gui` to start placement of these objects with 1st point set to mouse coordinates 2025-03-11 20:47:00 +01:00
stefan schippers 5e6ce2dce8 fix xschem.tcl proc traversal 2025-03-10 17:02:46 +01:00
stefan schippers c69c1b2687 better handling of snap cursor and snap wire creation (no cadence emulation) 2025-03-10 01:03:15 +01:00
stefan schippers d582fc98d8 proc load_file_dialog: allow multi selection (extended) only for load file, not for place instance 2025-03-09 13:53:18 +01:00
stefan schippers 7e5a36531b reduce max zoom in/out factors 2025-03-09 10:15:50 +01:00
stefan schippers de6434c941 allow multi-selections when loading a file; limit max line width in change_linewidth() to avoid strange artifacts at extreme zoom-ins 2025-03-09 02:46:58 +01:00
stefan schippers 2f1643368e add command `xschem raw rename old_node new_node` 2025-03-08 21:14:46 +01:00
stefan schippers f1901e055c clip graph point[].x values to prevent aliasing at absurdly deep zoom in values 2025-03-08 10:53:21 +01:00
stefan schippers d7d812c023 square grid points if grid_point_size is specified 2025-03-07 15:59:43 +01:00
stefan schippers 96eeef5a95 raw_read(): cleanup allocated `rawptr` if nothing loaded due to missing file 2025-03-07 15:34:19 +01:00
stefan schippers fafd48eb31 new tcl variable grid_point_size to set size of grid points (for 4K+ displays) 2025-03-07 14:45:13 +01:00
stefan schippers eb99123a49 `xschem load` command: allow multiple files to be loaded 2025-03-06 20:47:49 +01:00
stefan schippers fb9189018d avoid strdup on value in print_spice_element() 2025-03-04 09:58:56 +01:00
stefan schippers 56e0410047 fix a bug in eval_expr() usage in token.c (duplicate return string to avoid double free) 2025-03-04 09:43:26 +01:00
stefan schippers b449bb2728 revert: better detection of expr() in netlister functions 2025-03-04 09:07:55 +01:00
stefan schippers 0ea6af2c99 better detection of expr() in netlister functions (print_spice_element(), ...) 2025-03-04 00:33:27 +01:00
stefan schippers efdd45f414 revert wrong fix (fix typo in draw_graph()) not a typo... 2025-02-28 19:19:06 +01:00
stefan schippers aa68a3a0d2 fix spurious overwrite of xctx->graph_struct done in raw_read() called from draw_graph() which uses xctx->graph_struct 2025-02-28 18:51:35 +01:00
stefan schippers be1a0deb89 fix typo in draw_graph() 2025-02-28 18:04:56 +01:00
stefan schippers becbf7cf9c descend_schematic() return value indicates if descended into a valid schematic (1) or empty one (0) 2025-02-28 16:08:35 +01:00
stefan schippers bba3f434d5 fix an error in change_sch_path() (level check) and go_back() (no set title) 2025-02-27 13:04:57 +01:00
stefan schippers 028ca8cb5a proc editdata: added Copy (to Clipboard) button 2025-02-27 01:45:12 +01:00
stefan schippers c19c25873b (2)proc to_eng: return arg as is if not valid expression 2025-02-26 19:33:14 +01:00
stefan schippers 2d6b7c4fe1 revert previous 2025-02-26 16:03:36 +01:00
stefan schippers 43a8b62a24 proc to_eng: return arg as is if not valid expression 2025-02-26 16:01:32 +01:00
stefan schippers d3e0ca82b4 eval_expr.y: references to unknown identifiers cause the lexer to return an error so the expression is not evaluated and returned as is, instead of erroneously interpreting the unknown identifier as 0 2025-02-25 02:00:55 +01:00
stefan schippers f9ccf878c2 differential scope2.sym, current mwasure scope_ammeter.sym 2025-02-24 15:23:35 +01:00
stefan schippers b205b4a496 fix ui problem when ctrl-clicking a launcher (drag_elements remained set) 2025-02-23 23:49:31 +01:00
stefan schippers bd2c65bc1a embed graph inside scope symbol 2025-02-23 14:58:44 +01:00
stefan schippers 1d3c2dde59 fix regression: Cancel pressed when inserting new symbol 2025-02-23 14:03:53 +01:00
stefan schippers 6a75c8a6dd initial commit to add scope.sym symbol 2025-02-23 13:50:39 +01:00
stefan schippers c604a1f033 higher priority of `unlocked` sub-attribute in rect `graph` attribute. Do not propagate zoom / pan to any other graphs even if they are locked. 2025-02-23 12:39:59 +01:00
stefan schippers a306d97725 update docs (#pattern#@name tag) 2025-02-23 12:12:59 +01:00
stefan schippers 7144ead895 remove dbg messages 2025-02-22 19:49:43 +01:00
stefan schippers 81c3d64778 (2) changed some *attached*() function names for sonsistency 2025-02-22 19:40:04 +01:00
stefan schippers 6f0133a1b2 changed some *attached*() function names for sonsistency 2025-02-22 19:38:05 +01:00
stefan schippers e266642c2c lock attribute extended to all objects 2025-02-22 12:47:54 +01:00
stefan schippers a93fb64e12 better threshold detection for bezier selection 2025-02-22 11:37:19 +01:00
stefan schippers 0e438829c6 allow locked attached rectangles, so they can not be selected accidentally. Small resize of x/y graph axis labels 2025-02-22 10:33:13 +01:00
stefan schippers a592216c19 update solar_panel.sch (grouped aka attached floaters, scope meter object), better selection of left-y axis in small graphs 2025-02-22 02:18:27 +01:00
stefan schippers 935ec27772 floater objects: add command ctrl-u to unselect attached (so some instance with the attach=.. attribute) objects, that is objects (not element instances) with a non empty name=... atttribute. Extend upcate references of attached floaters to change instance name property and `xschem setprop instance name` command 2025-02-22 01:30:38 +01:00
stefan schippers 4e2af7ddb9 attach attribute: update copied objects 2025-02-21 17:49:38 +01:00
stefan schippers 3eab6bf2dc added attribute `attach="name1 name2 ..."` for components to designate other objects to be selected with it. Designated objects must have a matching `name=name1` attribute. This allows to create object groups 2025-02-21 14:31:30 +01:00
stefan schippers dc270aa029 resize a bit graph wave label / axis label sizes 2025-02-21 12:53:04 +01:00
stefan schippers 34fd430c13 svg_embedded_graph() and ps_embedded_graph() do not do a full redraw prior to graph rasterizing, draw only the current graph area. This avoid `overstrike` problems with superimposed text objects 2025-02-21 11:12:27 +01:00
stefan schippers 90bb42e7fa fix regression: no dashed graph bbox 2025-02-20 16:52:23 +01:00
stefan schippers afe058a25d comments typos 2025-02-20 16:30:40 +01:00
stefan schippers 62a2e6a367 refactored draw_crosshair() into smaller pieces. draw_snap_cursor executed much less frequently (only on snapped ouse change). Zooming with mouse wheel will not clear MENUSTART ui_state 2025-02-20 13:56:53 +01:00
stefan schippers f15520d01a start snapped wires in manhattan mode as done woth normal wires 2025-02-20 11:52:22 +01:00
stefan schippers 9dff3e1e3e refactor and fix small graphic glitches in draw_snap_cursor() 2025-02-20 11:42:26 +01:00
stefan schippers b7c6118288 add physical constants in eval_expr.y 2025-02-19 02:39:02 +01:00
stefan schippers fc3a3ed4e0 add proc cinv (complex inversion) 2025-02-18 17:45:09 +01:00
stefan schippers 936b72c7fc Escape pressed while drawing polygon will cancel last segment instead of the whole poly 2025-02-18 11:49:32 +01:00
stefan schippers 821aa77b0a fix svg fill rules 2025-02-18 02:45:24 +01:00
stefan schippers 25db8b8f9a ellipses rendered in ps/pdf export. Do not allow to select objects with mouse button press if a poligon insertion is ongoing. my_fopen() for read mode open, check for regular file. More checks for failed fopen()s. 2025-02-18 02:25:55 +01:00
stefan schippers 9eb012e6a3 fix image in symbols rotation/flip for svg exports 2025-02-17 17:53:49 +01:00
stefan schippers 4623b1c869 add ellipses/ellipse_arcs rendering in svg export 2025-02-17 16:10:44 +01:00
stefan schippers a7ae4eaca8 added some simple helper complex number procedures 2025-02-17 13:45:12 +01:00
stefan schippers 1e1c56801d when loading a raw file, if graphs are present and cursor2 is enabled in 1st graph setup annotation in the schematic (no need to move the cursor) 2025-02-16 14:08:31 +01:00
stefan schippers 51c6eded14 (2) integrated @georgtree proc symbolParse 2025-02-16 01:11:32 +01:00
stefan schippers 446f7949b4 integrated @georgtree proc symbolParse 2025-02-16 01:09:28 +01:00
stefan schippers cefd320ef6 complete previous `xschem load_symbol` command 2025-02-15 01:33:13 +01:00
stefan schippers 279d24288d proc rel_sym_path: resolve ~/... or relative paths (by prepending HOME or PWD) to input path before calculating relative symbol path. Added command `xschem load_symbol` 2025-02-15 00:50:02 +01:00
stefan schippers 5c4be8313b better xctx->save_netlist_type setting when navigating in the hierarchy (of LCC schematics specifically) 2025-02-14 14:40:56 +01:00
stefan schippers be643d5a92 remove here() dbg call 2025-02-14 14:00:34 +01:00
stefan schippers 26710d3bd0 fix setting netlist_type to CAD_SYMBOL_ATTRS when doing a descend symbol (`i` key) into a LCC schematic and setting back to previous netlist_type when going back 2025-02-14 13:58:36 +01:00
stefan schippers 05434cb5e4 fix @spice_get_*_*(...) regex 2025-02-14 13:32:17 +01:00
stefan schippers e9c927d882 default orientation for wire creation is manhattan (H-V). Lines still start oblique by default 2025-02-14 02:55:47 +01:00
stefan schippers 9fe67cd242 eval_expr.y: fix eval_expr_clear_table, remove unneeded unistd.h 2025-02-14 02:15:03 +01:00
stefan schippers afac3f7620 token.c: translate(): protect regex*() calls with #ifdef __unix__ 2025-02-13 22:18:23 +01:00