Commit Graph

369 Commits

Author SHA1 Message Date
Stefan Frederik 3ef32a1eef try more upper/lower case combinations in get_raw_index() function, removed some debugging messages 2022-09-09 02:11:09 +02:00
Stefan Frederik 6baeb53a51 added template for parallel Xyce run in Configure simulators and tools dialog box, added sim_is_ngspice convenience procedure. This allows (together with sim_is_xyce and may be others) to differentiate commands depending on simulator type 2022-09-09 01:46:46 +02:00
Stefan Frederik f78fc5494d set_text_custom_font xctx->cairo_ctx can be NULL when netlisting without X with 0_examples_top.sch; net_name(..) doesnt work on duplicate pin for test_doublepin.sch so added back the condition in rev 2243; added HAS_CAIRO directive to compile on Windows that dont have CAIRO turned on.
remove some old unused variables
2022-09-08 20:58:12 +02:00
Stefan Frederik 503f080db1 balloon tooltip procedure made more general. Easy to reuse for any widget 2022-09-05 18:06:57 +02:00
Stefan Frederik ad152b24a3 fixed and simplified toggle_fullscreen() 2022-09-02 12:09:56 +02:00
Stefan Frederik b065986c87 reduce tcl global namespace pollution, better widget packing in main window (toolbar/tabs/menubar/statusbar) 2022-09-02 10:41:06 +02:00
Stefan Frederik f7336e9064 better placement and layout of the 5 main window parts: .menubar, .toolbar, .tabs, .drw and .statusbar, specifically w.r.t. runtime changes (toolbar H/V, toolbar on/off, tabs on/off ... 2022-09-02 01:21:51 +02:00
Stefan Frederik f5b0cd933c compacted a bit the ctxmenu 2022-08-29 18:06:56 +02:00
Stefan Frederik 11babab5cf faster toolbar creation, 2px reduction in toolbar height, better add_custom_button.tcl and add_custom_menu.tcl example codes 2022-08-29 13:24:43 +02:00
Stefan Frederik 75147ab8cc if solid pattern fill is selected globally do solid pattern fills in svg export too.; enforce 24 pixel toolbar button heights, remove border width to gain space. 2022-08-28 22:08:18 +02:00
Stefan Frederik 8be273b9f7 fix regression on menu fullscreen command 2022-08-28 11:23:51 +02:00
Stefan Frederik 3434331f2f add better error reporting in case of tcp port conflicts 2022-08-27 14:14:06 +02:00
Stefan Frederik 41acfd91dd some small code refactoring, allow multiple selected (bold) waves, one per graph, store the bold waves into file 2022-08-27 12:56:33 +02:00
Stefan Frederik d279783faa added menu entries to set and conmpare with schematic. 2022-08-25 13:59:36 +02:00
Stefan Frederik 86311f8d47 focus main window when mouse leaves SNAP or GRID text entries 2022-08-14 08:17:44 +02:00
Stefan Frederik fb8a1560c6 added xschemrc variable `autofocus_mainwindow` (default setting: enabled (1) ), if this variable is set moving the mouse to the main drawing area when a dialog box is open (typically while editing a component attribute list) will focus the main window, so user can move / zoom/pan the schematic using the usual commands, for example to look at a different part of the schematic while editing the component. If this variable is unset a click is needed to focus the main window. This will thus not allow to move / zoom, but allows to type into the dialog box if the mouse goes out of it. 2022-08-11 10:58:57 +02:00
Stefan Frederik ae0ffa926d set reasonable subdiv[xy] value when user switches from linear to log axis, as 8 subdivisions are used in log axes in 99.99% of the cases. 2022-08-08 12:37:44 +02:00
Stefan Frederik edf185616b Y log axis option in graphs 2022-08-08 01:18:42 +02:00
Stefan Frederik ecd006ad5d disable `Log Y scale` checkbutton in graph dialog box until function is implemented 2022-08-05 19:29:08 +02:00
Stefan Frederik 15e367ba73 user selectable log X scale instead of assiming log X for AC analyses only 2022-08-05 00:57:03 +02:00
Stefan Frederik 7a0b5f3589 fix ngspice_backannotate.tcl: correctly backannotate ammeter currents; correctly handle multipoint Operating point data in graphs 2022-08-04 11:39:41 +02:00
Stefan Frederik bd8c1fd6eb do not accept 0 in graph `X div` and `Y div` textboxes, as this will cause an endless loop 2022-08-03 10:44:34 +02:00
Stefan Frederik 31646cf357 Windows fix: run ngspice in $netlist_dir; add res3.sym into Windows package, update instructions for compiling Cairo`s debug version 2022-07-29 23:00:34 +02:00
Stefan Frederik 7d971f1f6c remove dbg message 2022-07-16 08:24:49 +02:00
Stefan Frederik e7f31cf3ee allow each window (in tabbed or window interface) to run its own simulation, preventing spawning another simulation process for same tab/window if previous not finished 2022-07-15 12:32:57 +02:00
Stefan Frederik b5662fe551 Added sweep textbox (linked to graph sweep attribute) in graph edit attributes dialog box 2022-07-12 10:57:56 +02:00
Stefan Frederik c9d16d6008 use 5 significant digits in graph (time) measures 2022-06-29 11:47:10 +02:00
Stefan Frederik cd7eb3ab54 update license info 2022-06-24 00:36:12 +02:00
Stefan Frederik 7401f1d8eb add menu "Symbol -> Search all search-paths for schematic associated to symbol". Default: not enabled. Variable: search_schematic. If enabled xschem does not assume the schematic is in the same directory of the symbol but looks in all libraries defined in XSCHEM_LIBRARY_PATH for a match. 2022-06-23 13:42:56 +02:00
Stefan Frederik be43fe41b0 added bit blasting option (default: disabled) in menu for verilog netlists: group bit slices in instance net assignments. Doc updates (FSiC-2022) 2022-06-14 10:20:06 +02:00
Stefan Frederik 4cb0eb0491 better check for availability of -justify option in listboxes 2022-05-29 00:36:19 +02:00
Stefan Frederik 19d9d8a8f1 global Options menu "show hidden texts" to show or not show texts with attribute "hide=true" 2022-03-09 00:29:16 +01:00
Stefan Frederik a3b7ec1810 do not crash on malformed recent_files 2022-03-07 11:05:20 +01:00
Stefan Frederik 069017e07c recursively resolve parameter passing throughout hierarchy and show resolved value in leaf cells if possible 2022-03-07 01:42:53 +01:00
Stefan Frederik a9987b9be2 better y label alignment in digital graphs 2022-02-15 23:50:50 +01:00
Stefan Frederik f66f81649d fix add nodes to graph (alt-G) if quoted nodes/expressions are in graph 2022-02-15 00:43:07 +01:00
Stefan Frederik 4ebf3ea601 allow wave alias naming, fix off-by-one errors in plot_raw_custom_data() calls 2022-02-14 17:51:18 +01:00
Stefan Frederik 1a1c6371cc better bg selectcolor in graph editprop dialog textbox 2022-02-13 03:32:06 +01:00
Stefan Frederik a6b4d998d1 better node color tagging in graph edit property dialog 2022-02-13 02:51:14 +01:00
Stefan Frederik e37d5a28b8 more flexible my_strtok_r (handle quoting and escapes), allow quoted expressions in graphs for doing math on vectors 2022-02-07 03:52:42 +01:00
Stefan Frederik 798e4a20b2 removed event handling code repetitions 2022-02-05 14:35:33 +01:00
Stefan Frederik d6d932e730 fix save simconf (thanks mkk). put template code for custom function plots 2022-02-05 00:28:06 +01:00
Stefan Frederik 6fb20b8c5e (only) on fat32 or similar case insensitive FS and if case_insensitive is set to 1 in xschemrc do not consider case in symbol lookup 2022-02-04 02:56:11 +01:00
Stefan Frederik 008b289e4f ac analysis in graphs (mag + phase, log axis) 2022-02-02 18:33:16 +01:00
Stefan Frederik a8e1a6c047 fix regression (tcl context was not saved/restored correctly) 2022-02-02 00:11:46 +01:00
Stefan Frederik 83f745accd doc updates for viewing simulation data inside xschem 2022-01-31 17:48:02 +01:00
Stefan Frederik e7ebb2c2af Xyce support for node/current probing to graph 2022-01-31 00:14:34 +01:00
Stefan Frederik faa210fb2f code cleanup, removed code redundancy, itoa(), dtoa() functions, removed unnecessary tcl graph_* global vars, mstrcat function. 2022-01-30 03:10:09 +01:00
Stefan Frederik 4ec5d2ce9e send selected nets to last selected graph if graph configure dialog not open 2022-01-29 12:27:54 +01:00
Stefan Frederik c083491738 probe nodes from xschem into its own wave viewer 2022-01-29 02:36:54 +01:00
Stefan Frederik 4c174d2311 Graph UI: unlock X-axis checkbox 2022-01-28 05:25:50 +01:00
Stefan Frederik 0b0e749801 Graph UI improvements. Persistent bold waves. Graph UI bug fixes 2022-01-28 04:44:07 +01:00
Stefan Frederik 038ef39bb5 UI improvements for graphs, change colors, insert waves etc 2022-01-27 20:47:27 +01:00
Stefan Frederik f5fd1ef352 use cairo png export if Xrender extensions present (alpha), editprop code for graph node list 2022-01-26 15:20:00 +01:00
Stefan Frederik 81a612d5a3 menu entry for adding pictures, added alpha parameter for opacity 2022-01-22 04:55:59 +01:00
Stefan Frederik 74ebc3d887 add "connect by kissing (edit menu)" option, whereas separating with a move operation touching pins creates a net in between 2022-01-18 00:58:53 +01:00
Stefan Frederik 159b362c9f removed useless global tcl var token 2022-01-17 12:10:06 +01:00
Stefan Frederik 264b602b8d fix initialfile handling in load_file_dialog 2022-01-16 22:18:06 +01:00
Stefan Frederik 51889e524a fix regression in zoom full with hidden graphs, reset globfilter if user clicks a file, so next directory listing will list all 2022-01-16 13:53:25 +01:00
Stefan Frederik ecf07e6761 better handling of glob patterns in save/load dialog, recognize floater label tags in files 2022-01-16 12:42:55 +01:00
Stefan Frederik c7b9e8206f various checks to prevent multiple file loading if no X or -x option used, put xpm header in icon.c so it can be opened by image viewers 2022-01-15 23:35:37 +01:00
Stefan Frederik 1167b97f2e fix regression in tabbed window WM_DELETE_WINDOW protocol handler 2022-01-15 03:09:18 +01:00
Stefan Frederik 158186a9c4 better WM_DELETE_WINDOW protocol handler in case of multiple windows 2022-01-14 19:37:01 +01:00
Stefan Frederik acae16d106 left anchor window title in tab buttons 2022-01-13 15:40:20 +01:00
Stefan Frederik 6c85ceaad8 "hide(=true)" attribute to hide specific text items in symbols 2022-01-13 12:46:55 +01:00
Stefan Frederik c3ad08fdd4 sourcing of user specified tcl scripts in xschemrc done after all graphics setup complete so we can autoload multiple tabs on startup, among other funny things 2022-01-13 02:08:36 +01:00
Stefan Frederik 54f3211d51 show modify status (*) in tab names, master tab has red foreground 2022-01-13 00:58:00 +01:00
Stefan Frederik 88945158e2 button press on a tab, hold button and drag onto another tab --> swap tabs 2022-01-12 23:44:52 +01:00
Stefan Frederik a8d3cb814b globpattern "pat" search in file selector implicitly assumed to be "*pat*" 2022-01-12 00:17:10 +01:00
Stefan Frederik 659217148d fix error if tabbed_interface variable set in xschemrc 2022-01-11 02:01:11 +01:00
Stefan Frederik 7d3c19441d cleanup in tabbed/multi-context code, remoevd redundant functions, more tests in xschemtest 2022-01-11 01:09:56 +01:00
Stefan Frederik d6b513e1e2 issue warning if opening same circuit in different tabs, if tabbed if is active edit sch/sym in new window will do in a new tab 2022-01-10 18:54:07 +01:00
Stefan Frederik b81ce64c0c ctrl-left arrow / ctrl-right arrow to quickly move between tabs 2022-01-10 04:30:51 +01:00
Stefan Frederik 01d9ba58c5 Tabbed windows: menu typo 2022-01-09 22:21:14 +01:00
Stefan Frederik 1360641d75 Tabbed windows interface option added 2022-01-09 22:19:58 +01:00
Stefan Frederik 84662451ae tabbed interface almost done 2022-01-09 14:58:45 +01:00
Stefan Frederik e238f571b0 code added for tabbed window interface 2022-01-09 05:14:25 +01:00
Stefan Frederik 0eaf884039 modularized usage of simconf`s scrollable frame so it can be reused 2022-01-07 12:45:18 +01:00
Stefan Frederik 71a98e78f5 don`t try bring up the info ERC window if xschem is used in cli mode without X; filter out some events from graph event callback 2022-01-06 22:38:00 +01:00
Stefan Frederik 31ba4ce0d6 added wave @ cursor measurement feature 2022-01-04 05:54:25 +01:00
Stefan Frederik 625495e27a measurement tooltip in graphs 2022-01-03 18:43:34 +01:00
Stefan Frederik 2c09982e5a resolve a race condition in context menu (mouse click and immediately destroy menu by exiting the area) 2022-01-03 01:38:15 +01:00
Stefan Frederik 66152c33a5 better vertical scrolling of digital graphs 2022-01-03 00:29:05 +01:00
Stefan Frederik 2bbf967729 remove dbg message 2022-01-02 00:06:22 +01:00
Stefan Frederik 01764bc929 reset globfilter to {*} after using it 2022-01-02 00:05:05 +01:00
Stefan Frederik 81a7041c9f faster graph drawing by direct graph->screen transformation, avoiding double graph->xschem->screen scaling. File entry box is also a glob-search pattern in file open dialog 2022-01-01 15:46:03 +01:00
Stefan Frederik d6c197d108 fix BadDrawable regression in free_rawfile(): after deleting data a draw() was called, but since this function is called also in exit handler all windows are already closed. Added digital waveforms and bussed signal display 2021-12-29 05:11:39 +01:00
Stefan Frederik 37575e9404 allow button1 in addition to button2 for panning / zooming waveforms, add menu commands to insert graph, display/hide empty graphs, load raw file 2021-12-26 04:09:55 +01:00
Stefan Frederik 8fb4c9ee55 Inutile stimuli translator integrated: some fixes 2021-12-26 00:41:21 +01:00
Stefan Frederik 163cdd72e5 Inutile stimuli translator integrated in xschem.tcl, no more EXEC-uted as external process 2021-12-26 00:35:56 +01:00
Stefan Frederik f3526a5a08 Inutile stimuli translator integrated in xschem.tcl, no more EXEC-uted as external process 2021-12-26 00:33:57 +01:00
Stefan Frederik d423545ccc fix: missing graph borders 2021-12-24 21:17:52 +01:00
Stefan Frederik 382cba1fda added missing quotes on return value in abs_sym_path 2021-12-19 10:11:54 +01:00
Stefan Frederik b0af12d529 better layout of load_file_dialog widget; better handling of (strange) pathnames in abs_sym_path 2021-12-19 00:20:20 +01:00
Stefan Frederik ead63f5c39 Fix regression: in load_file_dialog make "Current file dir" button work again 2021-12-18 13:11:21 +01:00
Stefan Frederik a397d936dc if a schematic references a symbol name as "./xxx.sym" (instead of just "xxx.sym")force searching in directory of current schematic first, then in XSCHEM_LIBRARY_PATH directories. 2021-12-18 12:29:17 +01:00
Stefan Frederik 72f365f995 fix regression in tclgetvar() not returning NULL for non existent variables (place text dialog box did not show text size) 2021-12-16 23:09:23 +01:00
Stefan Frederik 95ea920faf do not hash the comments containing absolute paths in xschemtest netlist check, since these vary on different systems 2021-12-14 12:40:32 +01:00
Stefan Frederik b7af31d38c fix regression in tcl execute procedure ("execute 0 prog" blocking if prog closes stdout/stderr file descriptors) 2021-12-13 01:52:18 +01:00
Stefan Frederik 31ff86557e single global array var `execute` instead of multiple execute_* arrays for `execute` process handling 2021-12-06 00:58:06 +01:00