Commit Graph

3091 Commits

Author SHA1 Message Date
stefan schippers 59e7872f67 reduce some pointer indirections to array subscripts (readability) 2025-01-10 16:00:47 +01:00
stefan schippers 0a3fd95e06 code formatting 2025-01-10 14:58:10 +01:00
stefan schippers 882e20397d get_additional_symbols(), get_sch_from_sym(): allow to resolve schematic calls like: schematic=generator.tcl(@n\) --> let get_tok_value() return backslashes and remove surrounding "..." quotes 2025-01-10 14:12:05 +01:00
stefan schippers a29814d728 get_additional_symbols(), get_sch_from_sym(): allow to resolve schematic calls like: schematic=generator.tcl( @n ) where n=11 is defined in instance attrs. some fixes in cursor movement in waves_callback() 2025-01-10 06:03:52 +01:00
stefan schippers 2c1e1c1fe7 refactoring and cleanup of wave_callback() -8- 2025-01-10 02:35:50 +01:00
stefan schippers ef5d0e1b96 str_replace(): add parameter to specify number of substituitions (or all); replaced atof_spice() with atof_eng() in various parts related to numbers that do not come from spice netlists; fix numerical setting of cursors if log scale is set (wrong preset was shown); make wave labels in graph scale with gr->magx as X-axis labels; fix scaling roundoff issues in dtoa_eng(); add new `@spice_get_node <spice_node> ` token (where spice_node may contain @variables) in symbol texts to display indicated spice node value. Does not use TCL, thus faster and less "quoting hell" problems 2025-01-10 01:52:54 +01:00
stefan schippers aa36cbb897 @path expansion in translate(): remove path components above the level where raw file (if any) was loaded; added @spice_get_current in bsource.sym 2025-01-09 15:35:35 +01:00
stefan schippers c6a4e8b942 refactoring and cleanup of wave_callback() -7- 2025-01-09 04:23:23 +01:00
stefan schippers cd3eaf23ea refactoring and cleanup of wave_callback() -6- 2025-01-09 04:11:30 +01:00
stefan schippers 52b9cc1ee6 refactoring and cleanup of wave_callback() -5- 2025-01-09 00:46:42 +01:00
stefan schippers ff7c767c4d propagate drawing graph Hcursor functions to SVG/PDF exports 2025-01-09 00:31:11 +01:00
stefan schippers 7d7b381b7b refactoring and cleanup of wave_callback() -4- 2025-01-09 00:17:55 +01:00
stefan schippers ed9dc9b211 disable debug msg 2025-01-09 00:12:07 +01:00
stefan schippers 45a0af8005 fix unwanted clear of GRAPHPAN bit in button3 operations in wave_callback() 2025-01-09 00:11:04 +01:00
stefan schippers 444eb47eb5 refactoring and cleanup of wave_callback() -3- 2025-01-08 22:19:58 +01:00
stefan schippers d1e2328eb3 refactoring and cleanup of wave_callback() -2- 2025-01-08 21:12:59 +01:00
stefan schippers bbdfd3c61a refactoring and cleanup of wave_callback() 2025-01-08 16:36:45 +01:00
stefan schippers e6e135049b update docs on graphs y-zoom 2025-01-08 15:31:00 +01:00
stefan schippers 0d7d1f5364 implemented drag with right-button pressed on left of Y axis to do a Y area zoom 2025-01-08 15:05:11 +01:00
stefan schippers 12a9276ee0 optimization in plotting routines: skip unwanted datasets, if no dc simulation there is no need to detect sweep variable wraps 2025-01-08 13:27:07 +01:00
stefan schippers 182b55adf8 fix some issues when setting numerical position of cursors (spurious activation of `GRAPHPAN`); proc input_line: return `preset` argument on Cancel 2025-01-08 01:21:05 +01:00
stefan schippers 149ee5fdc0 further refactoring of waves_callback() (reduce first loop over graphs to single iteration on graph_master) 2025-01-07 14:31:26 +01:00
stefan schippers d2321f1eeb cleanup code in waves_callback() 2025-01-07 13:04:41 +01:00
stefan schippers 15738bbf51 better drag waves in x direction (continue even if dragging outside of graph) 2025-01-07 12:03:49 +01:00
stefan schippers a3e7610d83 horizontal cursors in graphs 2025-01-07 04:20:32 +01:00
stefan schippers 9fda7e2f96 wip: put code in place for horiz cursors in graphs 2025-01-06 13:14:12 +01:00
stefan schippers 783fa04eb6 `xschem save` --> save_schematic(): added `fast` argument (do not update window/tab/sim button states for speed); `xschem select instance` --> select_element(): added `nodraw` argument in addition to existing `fast` (avoid drawing selected item for speed) 2025-01-05 13:27:49 +01:00
stefan schippers 4d76708534 save_schematic(): remove set_modify(2) if same name. need to add a dedicated parameter for save without title update 2025-01-05 11:27:18 +01:00
stefan schippers fd5fec64aa make uninstall: remove empty directories (share/xschem and share/doc/xschem); make command `xschem help` work also if running in src/ directory; use XSCHEM_SHAREDIR shell variable (if defined and directory existing), else set XCSCHEM_SHAREDIR to `pwd` if started from src/ dir, else set compile set XSCHEM_SHAREDIR. xschemrc can override this XSCHEM_SHAREDIR setting. 2025-01-05 01:29:04 +01:00
stefan schippers 09813f8e1e restrict `menu unpost by click` hack to 8.6+ tcl versions. the hack works on tcl8.4, but lets avoid potential problems on jurassic systems 2025-01-04 12:47:13 +01:00
stefan schippers f824f26c4f click on posted menu will unpost it. Now no more Motion event is needed to repost again the menu by another click 2025-01-04 12:39:22 +01:00
stefan schippers ee0de61220 add `2` and `3` argument to set_modify (do only clear/set modified flag), save() -> save_schematic(): do not update title/tab names if saving with same name. 2025-01-04 12:24:22 +01:00
stefan schippers 69a23355fb refactor some debug print messages for NULL strings 2025-01-04 11:33:58 +01:00
stefan schippers 4e2584341c updates on cellview and traversal; hack on Menu Button event handler to allow a click on a posted menu to unpost it. 2025-01-04 04:16:43 +01:00
stefan schippers 0e63e1bfff remove commented dirty hack 2025-01-03 13:48:23 +01:00
stefan schippers abc88e8819 Revert dirty hack to make a click on an open menu close it, still some issues 2025-01-03 13:15:30 +01:00
stefan schippers ed1149edb2 dirty hack to make a click on an open menu close it 2025-01-03 13:09:18 +01:00
stefan schippers 09e93b5e0f fix documentation (scripts.html) 2025-01-03 11:58:36 +01:00
stefan schippers 2dfee2bfac fix documentation href 2025-01-03 11:46:17 +01:00
stefan schippers 0af6155b5b add scripts.html manual page 2025-01-03 11:43:00 +01:00
stefan schippers e77cc334f4 has_included_subcircuit() and proc has_included_subcircuit: compare and reorder only ports with associated symbol pin. do not consider `extra` ports assigned via attributes 2025-01-03 00:49:54 +01:00
stefan schippers 294a10bd5a go_back(): if a write of modified schematic is requested before going up but write fails (for example due to permission issues) then issue a warning and go ahead anyway. Previously xschem got stuck in the lower hierarchy with no way to escape. If xschem load is done with `noundoreset` option do not change some context data (xctx->currsch, xctx->sch_path, xctx->portmap, xctx->sch_inst_number, ...). Various fixes/enhancements in cellview and traversal procedures. 2025-01-02 22:38:40 +01:00
stefan schippers 45382d1b1d fix `s` command (simulate) to work with new menu system 2025-01-02 13:22:34 +01:00
stefan schippers 2bd205427d load_schematic(): do not set xctx->time_last_modify if called with reset_undo == 0; fix persistent command mode when started from menu; update traversal procedures 2025-01-02 12:52:51 +01:00
stefan schippers 8fa2c9c22a add all_hierarchy parameter to proc traversal 2025-01-01 11:48:33 +01:00
stefan schippers 041d90548d xschem.tcl toolbar procs reordering 2024-12-31 22:57:28 +01:00
stefan schippers 3a8d36d0fe update add_custom_menu.tcl to new menu system, some refactoring in xschem.tcl for toolbar (add_toolbuttons procedure) 2024-12-31 21:00:09 +01:00
stefan schippers 05dc1a4772 update add_custom_menu.tcl for new menu system 2024-12-31 13:05:48 +01:00
stefan schippers b23b162f2c rewritten the menu system using a menubar vs the menubuttons 2024-12-31 03:51:05 +01:00
stefan schippers 2c8468ee1c add custom binding to MenuButton Button-1 events so clicking on a posted menubutton will unpost it 2024-12-30 19:03:06 +01:00