Commit Graph

2036 Commits

Author SHA1 Message Date
stefan schippers 4be10f1707 remove dbg message 2023-11-04 15:07:09 +01:00
stefan schippers 7022fbf073 xschem simulate sets the Simulate button color. removed redundant proc simulate_button 2023-11-04 14:49:15 +01:00
stefan schippers bd43be9be6 rename a local variable to make tcc happy 2023-11-04 12:03:41 +01:00
stefan schippers 0b93634fee Better Simulation->Graphs-> Load raw file (ask filename) 2023-11-03 23:37:09 +01:00
stefan schippers a5ee182d59 add some Symbol menu entries (place net label / change instance texts to floaters) 2023-11-03 15:10:22 +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 b7e5af9b4b add inherited_pin[] in make_sym_from_spice.awk 2023-11-02 19:39:01 +01:00
stefan schippers 234a70d0a3 fix version print in make_sch_from_spice.awk and make_sym_from_spice.awk 2023-11-02 19:29:00 +01:00
stefan schippers e86857d410 code cleanup in make_sch_from_spice.awk and make_sym_from_spice.awk 2023-11-02 19:23:11 +01:00
stefan schippers 794df4dfc3 add make_sym_from_spice.awk, cut down from make_sch_from_spice.awk 2023-11-02 19:07:15 +01:00
stefan schippers 7727a9f924 add necessary comment in edit_text_property() 2023-11-02 13:30:03 +01:00
stefan schippers 722b1f4575 small improvements in edit_text_property() and get_instance() 2023-11-02 13:24:15 +01:00
stefan schippers 0a4c59cc30 xschem selected_set, search: include text objects. xschem getprop: allow to retrie the text value with txt_ptr 2023-11-01 14:19:26 +01:00
stefan schippers 240db67df2 add comments in xschemrc for bespice_listen_port 2023-11-01 02:27:23 +01:00
stefan schippers 1955d6d386 setup_tcp_bespice: if port 0 is given let TCL find a free port 2023-11-01 02:23:21 +01:00
stefan schippers 18f337734d setup_tcp_bespice: use stderr for messages 2023-11-01 00:31:35 +01:00
stefan schippers b60a5a4c4b Add command `xschem setprop text n txt_ptr value` to change a text object text field, set stdout in line buffer mode if used in a pipe, better protect some commands against no X connection 2023-10-31 18:39:42 +01:00
stefan schippers ff24678fec draw_temp_symbol(): update symbol bbox before doing XCopyArea (fix_broken_tiled_fill && gctiled) 2023-10-31 13:10:16 +01:00
stefan schippers 7842890f0c select_rect(): no more direct usage of fix_restore_rect() (now done in drawtemprect(xctx->gctiled,...). Some dialogs no more transient (having always on top is a hassle for some). The fix_broken_tiled_fill is now set to 1, make this alternate drawing method the default 2023-10-30 22:47:25 +01:00
stefan schippers e282abb5f1 optimized XCopyArea for draw_graph(flags & 1), removed redundant OUTSIDE macro 2023-10-30 18:03:52 +01:00
stefan schippers 11c8c47ad3 faster draw_temp_symbol() if fix_broken_tiled_fill and gc==gctiled 2023-10-30 17:17:00 +01:00
stefan schippers d7247d55e6 fix `destroy_all_windows()` not destroying windows in non tabbed interface (late usage of tclresult()) 2023-10-30 02:09:49 +01:00
stefan schippers 814839a132 fix `destroy_window()` not destroying window in non tabbed interface (late usage of tclresult()) 2023-10-30 02:02:03 +01:00
stefan schippers 8f2af6803a remove some dead code, fix redrawing in `xschem move_instance` command 2023-10-30 00:57:28 +01:00
stefan schippers 36b1a9f9e7 fix delete_only_rect_line_arc_poly() (used in change_layer) 2023-10-30 00:22:25 +01:00
stefan schippers 52e36cc46b add portable sleep_ms() function 2023-10-29 23:52:33 +01:00
stefan schippers 391a744302 xschem setprop command: redraw all viewport if show_pin_net_names is enabled 2023-10-29 22:22:05 +01:00
Stefan Schippers 958c5a1525 set_modify() returns now # of floaters, use this info to redraw all viewport in `xschn setprop` commands 2023-10-29 20:02:23 +01:00
stefan schippers d776d6a351 better handle operating point clear / update when switching / reading / clearing raw files. dont use operating point data (ngspice::ngspice) above the hierarchy level where raw file has been loaded. 2023-10-29 14:04:52 +01:00
stefan schippers b680f5da20 redraw screen if executing `xschem raw_read` (and raw file already loaded, thus unloading waves) 2023-10-29 12:54:55 +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 d5fd026196 xschem raw command: delete also last (base) raw file in clear subcommand 2023-10-28 17:12:32 +02:00
stefan schippers a76dca4f29 add menu entry in Options for fix_mouse_coord 2023-10-28 11:51:21 +02:00
stefan schippers 78981f2c2f disabled testmode 2023-10-28 11:22:37 +02:00
stefan schippers a2ed8fefb6 added an optional fix (fix_mouse_coord) that uses an alternative method for getting mouse coordinates in KeyPress/KeyRelease events. This should hopefully work around some remote desktop connection softwares that report wrong mouse coordinates (may be absolute vs relative to window?) 2023-10-28 11:19:23 +02:00
stefan schippers 8ac4c6030d getpgrp() tcgetpgrp() are unix specific: protect with #ifdef __unix__ 2023-10-28 01:20:51 +02: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 364fb55df1 avoid doing unselect_all() if nothing to unselect 2023-10-27 12:42:08 +02:00
stefan schippers 6362ebb214 add tanh() function in wave expression evaluator 2023-10-27 10:48:53 +02:00
stefan schippers 9f1b447c16 previous fix did not fix. Fix the fix 2023-10-26 19:38:25 +02:00
stefan schippers 4985fb6e61 fix crash if extra_rawfile(2, ...) is called when no initial raw file is loaded 2023-10-26 19:27:11 +02:00
stefan schippers c68866c994 add `wm transient .dialog .` to all toplevel dialogs to prevent focus robbery on cinnamon/mate desktops when some other app is always-on-top 2023-10-26 19:13:49 +02:00
stefan schippers bfc60add06 tab context menu: Do not use saved file to decide if symbol or schematic. Use netlist_type 2023-10-26 08:29:52 +02:00
Stefan Schippers 34113c1c5f added tab ctx menu `Save` 2023-10-25 20:30:20 +02:00
stefan schippers 2fec681728 puntuation in texts 2023-10-25 18:13:48 +02:00
stefan schippers f9d3661c15 fix tab context menu close (invalid switching after deletion) 2023-10-25 16:47:11 +02:00
stefan schippers 8e844ff913 remove (unneeded) `edit file` tab-bar context menu entry 2023-10-25 16:33:24 +02:00
stefan schippers 27488a1020 add tabs ctx menu `open term in sim directory` 2023-10-25 16:28:10 +02:00
stefan schippers b31358a468 New thumbnails for tabs ctxmenu 2023-10-25 13:01:00 +02:00
stefan schippers 9a0375cc4b do not add `Edit netlist` ctx menu button for symbol tabs 2023-10-25 12:14:48 +02:00
stefan schippers 3d4113ad26 tabs bar context menu 2023-10-25 11:43:43 +02:00
stefan schippers d83acf710d add `xschem text_string` command, update displayed floaters if a text object is changed 2023-10-24 18:47:58 +02:00
stefan schippers 94b43d41ed add double click in process list to get status, add Simulation menu entries to display data and stderr of last completed job 2023-10-24 14:28:59 +02:00
stefan schippers 82387c7f2f remove unneeded grab set in property_search 2023-10-24 11:45:13 +02:00
stefan schippers 0819211bb0 when doing a select by area with shift pressed the object under the mouse will not be unselected if it was already selected (xctx->already_selected) 2023-10-23 23:41:39 +02:00
stefan schippers 512b297e35 add validity checks for xctx->inst[n].ptr < 0 (unresolved instance) 2023-10-23 22:49:52 +02:00
stefan schippers fec9c1b7e3 fix fullxzoom if a single curve is selected with find_closest_wave() (returns a dataset number) in a double variable DC sweep (there are no multiple datasets, just sweep var wrapping) 2023-10-23 17:20:51 +02:00
stefan schippers 2aeafac85c if selecting a waweform dataset with `t` key update text floaters that might contain the dataset information. When closing the process list dialog also close the process status sub-dialog. 2023-10-23 16:03:27 +02:00
stefan schippers 4f4872fa7b execute_fileevent: use exit status instead of stderr data in status report 2023-10-23 10:33:08 +02:00
stefan schippers d82ad002e8 better fill nodes listbox when selecting in-graph raw file, simulation->graph menu reordering 2023-10-23 09:28:29 +02:00
stefan schippers 447a5b8ae6 add ngspice interactive/control/batch simulation modes 2023-10-23 01:00:09 +02:00
stefan schippers 6e776262e6 remove debug msg 2023-10-23 00:05:34 +02:00
stefan schippers 10857629e1 add option --pipe (alias for -r / ----no_readline) 2023-10-22 22:16:17 +02:00
stefan schippers 2a8b0b40d8 add some additional help text in simulator config dialog 2023-10-22 12:14:49 +02:00
stefan schippers 8f3fedab1f fix a bug when closing with ctrl-q (ie from callback(), calling proc quit_xschem) and there are multiple windows, some with changed data (switch_tab() was skipped due to xctx->semaphore). Process status dialog window will not be updated if vertical slider is not positioned to bottom 2023-10-22 02:53:03 +02:00
stefan schippers d5d090afc0 better line-rectangle touch check for backward rectangle selection (intersection select) 2023-10-21 23:48:56 +02:00
stefan schippers 5c27e48ccf fix rectangle intersection checker macro (RECT_TOUCH) 2023-10-21 22:37:01 +02:00
Stefan Schippers 73c4a17c2c dragging to the right a selection rectangle will select objects fully enclosed. Dragging to the left will select all objects intersected by the select rectangle. 2023-10-21 19:09:17 +02:00
stefan schippers 109cef6c52 detect if program started in background and detach from console 2023-10-21 11:37:59 +02:00
stefan schippers f2fd7e6e48 remove debug messages 2023-10-21 11:05:47 +02:00
stefan schippers 99f31e4535 periodic update of process status dialog, updated delta_sigma and rom8k examples for allowing batch mode ngspice run 2023-10-21 10:58:02 +02:00
stefan schippers e603a71651 fix typo 2023-10-21 10:07:31 +02:00
stefan schippers 8a8d9f0148 added comments for sub-process management, disabled list sub-processes on windows (need specialized version) 2023-10-21 09:47:37 +02:00
stefan schippers 2e4e754a3e add context menu entries for rotate and flip selection, add basic sub-process control in Simulation menu, enabled again Rotate and Flip from Edit menu, fix svg export from CLI (was resetting line width), add cascade menus in Simulation 2023-10-21 09:27:02 +02:00
stefan schippers 8e1df1b157 add proc sim_cmd to substitute variables in simulator commands and return the resulting command 2023-10-19 18:18:20 +02:00
stefan schippers 0e583cfac1 add tooltip showing full path of schematic when hovering the mouse over a tab 2023-10-19 15:14:29 +02:00
stefan schippers 0325b14499 add `none` i/o buffering mode (in addition to `line`) in execute `status` argument 2023-10-19 13:01:25 +02:00
stefan schippers efb0351812 fix fullxzoom when selecting more (unlocked) graphs, graphs have a custom rawfile specified and current loaded sim is not of the same type (for example OP) 2023-10-19 10:47:01 +02:00
stefan schippers 1b7a035220 fix graph_fullxzoom in case of non monotonical sweep x axis variable 2023-10-18 16:10:08 +02:00
stefan schippers 0178e1c287 add @symref attribute that resolves to the full symbol reference as specified in instance: example: "sky130_fd_pr/pfet_01v8_lvt.sym" 2023-10-18 13:18:29 +02:00
stefan schippers f9114a0888 proc graph_fill_listbox : use "xschem raw read" instead of "xschem raw switch" so if user enters a new file it will be immediately loaded 2023-10-18 10:48:23 +02:00
stefan schippers cc5864e12f fix 2 bugs in extra_rawfile(): xctx->extra_idx assignment in extra_rawfile "read" subcommand and return value if no command executed. Add "file_exists "procedure to be used in graph_edit_properties for rawentry resolution 2023-10-18 10:15:39 +02:00
stefan schippers a41a0bf9fd add noise analysis recognition in raw files 2023-10-18 02:56:06 +02:00
stefan schippers ad07999dd3 do not use text widget -selectbackground on tcl8.4 2023-10-17 23:35:16 +02:00
stefan schippers ecbbb68447 replace text widget "count -displaylines" with alternative tcl8.4 compatible 2023-10-17 23:31:13 +02:00
stefan schippers 8e8145a241 fix regression on input_line tcl procedure. buggy if empty cmd ws passed as argument 2023-10-17 23:06:49 +02:00
stefan schippers 52572a6ca4 update cmos_example.sch 2023-10-17 18:16:48 +02:00
stefan schippers 9917c8276b revert to KeyRelease events (instead of FocusOut) for various widgets in graphdialog (better feedback), fix premature deallocation of data in child process in filter_data() 2023-10-17 17:05:10 +02:00
stefan schippers 025454e79e fix a regression in graph_fullyzoom() if graph contains more than one expression 2023-10-17 16:39:25 +02:00
stefan schippers 306c5d0d15 fix two small memory leaks, doc updates (xschem raw command) Raw.filename renamed to Raw.rawfile 2023-10-17 16:08:27 +02:00
stefan schippers 9fda2adccb fix graph_fullxzoom if displaying multiple op (transformed to dc sweep) sims 2023-10-17 14:20:34 +02:00
stefan schippers b165720bc8 allow loading more and different analyses from the same raw file. Implied tcleval() in rawfile given in graphdialog, transform multiple saved OP sims into a dc sweep. 2023-10-17 14:00:43 +02:00
stefan schippers 8cfd51d8f9 add the ability to load multiple raw files with different analyses in a single schematic ( extra_rawfile() ) 2023-10-17 00:42:31 +02:00
stefan schippers 5da81a7aea shut down some gcc false warnings (uninitialized vars), add read_more_rawfile() 2023-10-16 11:16:12 +02:00
stefan schippers f10555917e optimized usage of interpolate_yval(), add raw->cursor_b_val[] 2023-10-16 09:53:03 +02:00
stefan schippers d1309a8a47 fix uninitialized var in interpolate_yval() 2023-10-15 13:24:19 +02:00
stefan schippers a7bcfb7941 do interpolation when annotating "b" cursor values in schematic, as done with measurements with "a" cursor. 2023-10-15 12:05:48 +02:00
stefan schippers f87ab46310 refactor table_read(), less pointer indirections 2023-10-15 10:24:13 +02:00
stefan schippers 53286346e1 doc updates, tcl rawfile variable in place for future per-graph raw file 2023-10-14 23:41:19 +02:00
stefan schippers 663991ce70 add "filename" member in Raw (raw file) struct 2023-10-14 23:09:40 +02:00
stefan schippers 537cedbafe better graphdialog layout, remove tcl redundant raw_level var 2023-10-14 22:43:58 +02:00
stefan schippers 8ceb4b6b41 fix false wcnt warning in draw_graph() 2023-10-13 23:09:27 +02:00
stefan schippers 25ab8a8b8a cursor `a` measurements in graph match the %n dataset specified on nodes if any (or default to dataset 0) 2023-10-13 23:04:45 +02:00
Stefan Schippers c6a3880b9d fix a bug in draw_graph_points() changing and not restoring linewidths if called with idx==-1 2023-10-13 18:46:15 +02:00
stefan schippers 617e6b3b8d update live backannotation if "a" and "b" cursors are swapped, syntax node%n is now allowed to plot only dataset "n" of the node. Update html docs and example autozero_comp circuit 2023-10-13 15:51:51 +02:00
stefan schippers 6ad282a3df remove some global tcl vars 2023-10-13 09:41:34 +02:00
stefan schippers cd01e5d314 in digital graphs use gr->magy (ylabmag attribute) to rescale node names on Y axix, as done in analog graphs on Y axis labels 2023-10-13 00:25:40 +02:00
stefan schippers c86d48f321 expandlabel(): do bus_char substitution even if taking the shortcut 2023-10-13 00:04:58 +02:00
stefan schippers ae58077447 move replace_key to global_array_list (it is an array var) 2023-10-12 21:09:45 +02:00
stefan schippers 88a5befbf2 add some cascade menus for less frequently used entries. better description of xschem unselect_all command 2023-10-12 19:37:22 +02:00
stefan schippers 676ce4fe3d lock attribute for rectangles: work the same as for instances (can only double click to reset attributes, not selectable until lock reset to 0), add commands "xschem selected_set rect" and "xschem select_inside x1 y1 x2 y2" 2023-10-12 11:15:12 +02:00
stefan schippers a5545c3dbf fix keybinding doc typo 2023-10-11 23:56:36 +02:00
stefan schippers f1cb655a7a ERC: symbols with pass-through pins by definition do not match with schematic so do not check 2023-10-11 22:57:44 +02:00
stefan schippers c9a2bca5d7 add local manual link in xschem about dialog 2023-10-11 17:10:06 +02:00
stefan schippers e457292e04 trim_chars() function for various string operations 2023-10-11 16:31:42 +02:00
stefan schippers 9b4bd44fd0 merged in fast_raw_read branch 2023-10-11 14:05:27 +02:00
stefan schippers 3a25109fe1 fix compile error with CAIRO on Windows: dest_x and dest_y should be idx1 and idy1, respectively in my_cairo_fill 2023-10-11 13:59:08 +02:00
stefan schippers 6305b52d91 add safety check for null string in edit_text_property() 2023-10-09 13:53:57 +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 94bccc08d9 do not duplicate empty strings as NULLs in hash tables 2023-10-09 12:49:11 +02:00
stefan schippers bb4f296211 use "2" instead of "X" for default return state in xschem logic_get_net command 2023-10-09 00:11:17 +02:00
stefan schippers 6b00a88f28 fix xschem simulator "mux" operator (M) to handle unknown selector state 2023-10-08 11:45:22 +02:00
stefan schippers 58af2567e6 fix initialization of default value for "xschem get_logic_net" 2023-10-08 11:32:56 +02:00
stefan schippers 62bc3759f0 add (disabled, should be done with keyboard shortcuts) Edit menu entries: rotate, flip, rotate_in_place, flip_in_place 2023-10-06 13:17:06 +02:00
stefan schippers 4f0377f1e9 expandlabel(): if empty node name is given return empty string instead of NULL 2023-10-06 11:24:00 +02:00
stefan schippers 3e4f49dbea further fix expandlabel() potentially returning its string argument (instead of a copy) in case of weird and wrong node syntax 2023-10-06 11:11:17 +02:00
stefan schippers 42781f8456 fix a regression in expandlabel() returning it string argument without making a copy 2023-10-06 00:08:16 +02:00
stefan schippers c4e1fb6a31 fix a memory leak in translate() 2023-10-05 20:15:47 +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 9ecc5859b2 fix new_prop_string() when doing a name change on multiple selected instances 2023-10-04 00:44:43 +02:00
stefan schippers 5ffc7bb5e4 select_object() returns sel instead of sel.type (more info on return) 2023-10-04 00:09:12 +02:00
stefan schippers 822910fce7 strboolcmp(): remove debug message 2023-10-03 20:46:18 +02:00
stefan schippers d613bcc47a fix strboolcmp() (return false anyway if str="") 2023-10-03 20:44:44 +02:00
stefan schippers 02086d76a7 revert from tclgetboolvar to tclgetvar for edit_symbol_prop_new_sel, as this is not a boolean 2023-10-03 15:28:42 +02:00
stefan schippers 5c7abfa048 optimization for new_prop_string() done. doc updates for instance hide_texts=true attribute, align strboolcmp() to tcl allowed boolean values (1, true, on, yes) 2023-10-03 15:20:30 +02:00
stefan schippers d441ba6966 fix missing update of name_is_used() call 2023-10-03 13:24:54 +02:00
stefan schippers 24bc44ad0c doc updates (text attributes), prepare improvements for new_prop_string() 2023-10-03 13:21:04 +02:00
stefan schippers e49f9902a7 remove redundant actions in toggle_colorscheme 2023-10-03 10:45:11 +02:00
stefan schippers 3ed97b3df2 some code refactoring, more usage of tclgetboolvar() 2023-10-03 10:27:29 +02:00
stefan schippers b613d65fd9 read_dataset(): better set return codes on errors and cleanup allocated memory 2023-10-02 19:18:12 +02:00
stefan schippers 9fee9610ab vsource.sym and ammeter.sym: add "savecurrent=1|0|true|false" attribute do decide if a .save I(...) is to be printed in netlist. default is 1 for ammeter.sym and 0 for vsource.sym. Add "deltax deltay rot flip" optional parameters for xschem "copy_objects" command to make copy operation scriptable (lot more efficient than using clipboard) 2023-10-02 12:11:05 +02:00
stefan schippers 05c79febc2 better implementation of cursor reconfiguring if draw_crosshair enabled 2023-09-30 00:22:10 +02:00
stefan schippers c25a9f9d85 if crosshair is displayed and xschem blocked by a tk_messageBox restore pointer to default, so it will be visible. Do not parse labels if not vectored labels (shortcut) 2023-09-30 00:13:33 +02:00
stefan schippers 00ef95c90e fix regression: hilight nets not incrementing color (if nets are singlebits) 2023-09-29 10:39:25 +02:00
stefan schippers 405d950412 add xctx->mouse_inside var to better decide if crosshair has to be drawn 2023-09-29 10:09:13 +02:00
stefan schippers c569f93a65 added commands xschem get schprop|schvhdprop|schverilogprop|schtedaxprop|schsymbolprop, "xschem create_text" renamed to "xschem text" for syntax consistency 2023-09-29 09:46:31 +02:00
stefan schippers 64cb20dab9 add crosshair_layer tcl variable, so user can change crosshair layer.Crosshair is deleted on LeaveNotify events. 2023-09-29 00:30:43 +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 433ec84278 simpler state bits checking in callback() (use rstate to avoid redundant ShiftMask checks) . Enable loading SP Analysis raw files (they are equal as AC analyses) ) 2023-09-28 21:03:28 +02:00
stefan schippers 8fe4f2fd11 add src/place_pins.tcl, src/place_sym_pins.tcl 2023-09-28 16:09:06 +02:00
stefan schippers 3a020b4305 add installation of place_sym_pins.tcl, place_pins.tcl scripts in XSCHEM_SHAREDIR 2023-09-28 16:07:01 +02:00
stefan schippers 31492b3955 added xschem set [schsymbolprop|schprop|schverilogprop|schvhdlprop|schtedaxprop] <value> commands for setting global schematic/symbol attributes 2023-09-28 15:45:07 +02:00
stefan schippers cfe97c2ccf extend "xschem rect" and "xschem line" commands, add "xschem get rects n" and "xschem get lines n" 2023-09-28 15:24:23 +02:00
stefan schippers ff2f0477a6 remove dbg message 2023-09-28 13:34:47 +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 14a674b6f4 fix a random segfault due to out of bound array ref in find_pass_through_symbols() 2023-09-28 01:06:07 +02:00
stefan schippers 5080c2c33f fix unitialized vars (mostly false errors, but why not...) 2023-09-28 00:30:00 +02:00
stefan schippers 6c4c8b3a50 handle Windows key on windows (Mod4Mask) 2023-09-27 21:15:25 +02:00
stefan schippers ba00ba2921 add #ifdef __unix__ around filter of bits 13 and above on state var in callback() 2023-09-27 21:00:02 +02:00
Stefan Schippers e7c53b59b5 callback(): filter out any state value that uses bits above 12 2023-09-27 18:35:40 +02:00
stefan schippers 0f29b53d25 remove an extra change_linewidth() in svg_embedded_graph() (now already done in resetwin()) 2023-09-27 13:22:46 +02:00
stefan schippers 97e9b27bbd fix garbage on screen if drawing something, go to another tab, return and move objects. Regression was introduced on repo.hu r3033 2023-09-27 13:13:15 +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 9316878559 fix a bug in hilight_net(): example: if a bus 3*A was highlighted hilight color was not incremented and highlighting another net gave the same color. added xctx->some_nets_added for that 2023-09-26 12:51:41 +02:00
stefan schippers 87da969b16 don`t break "** sch_path:" / "** sym_path:" lines in spice netlists 2023-09-26 09:20:04 +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 cfc87392d2 select_attached_nets() do not select wires attached to partially selected wires when doing a stretch move 2023-09-25 17:15:15 +02:00
stefan schippers 9af33003bc rearranged menu entries. "Persistet wire/line place command" goes to Options, "Show net names on symbol pins" goes to Symbol, "Show netlist after netlist command" goes to simulation 2023-09-25 16:26:57 +02:00
stefan schippers be8324293c move "Options->Set symbol width" to "Symbol" menu 2023-09-25 15:56:17 +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
stefan schippers 6c7d7080b9 some code refactoring (inst_table -> inst_name_table) 2023-09-25 09:05:10 +02:00
stefan schippers 03003ab7bf fix redraw of move operation abort when done with "connect by kissing" (adding new wires) 2023-09-25 00:03:02 +02:00
stefan schippers 37f2edcc7e if $USER_CONF_DIR (~/.xschem) is not existing create it and also place the template xschemrc into it 2023-09-24 21:27:27 +02:00
stefan schippers 2ec4b1c8b3 added a helper command "create_user_xschemrc" that copies system xschemrc to user xschem config dir (~/.xschem/xschemrc usually) if such file is not existing. After some thinking i came to the conclusion i wont do this automatically, as there might be use cases where a user does not want such a file. 2023-09-24 12:27:14 +02:00
stefan schippers ba5eb149a8 small xschemrc edits 2023-09-24 10:55:38 +02:00
stefan schippers 41d9759953 xschem select instance given from CLI will select instances regardless of their lock attribute 2023-09-24 04:01:56 +02:00
stefan schippers db1049d469 formatting, updated create_graph.tcl 2023-09-24 03:34:01 +02:00
stefan schippers 75526cacbe add "xschem create_text" command for placing text objects with CLI 2023-09-24 03:16:53 +02:00
stefan schippers abd5f75ef5 added enable_stretch tcl variable description in xschemrc 2023-09-24 01:26:45 +02:00
stefan schippers 152623f4aa control-mouse drag select will negate the setting of enable_stretch tcl variable so drag and control-drag can be swapped vith Options->enable stretch 2023-09-24 00:29:15 +02:00
stefan schippers 4663a86da4 fix various regressions for handling instances with lock=true attribute 2023-09-24 00:17:48 +02:00
stefan schippers 112a12a87b add tcl variable no_ask_save: if set to 1 xschem will not ask to save modified schematics 2023-09-23 11:47:11 +02:00
stefan schippers 6a0fcdae05 various optimizations (do not execute graphic ops with gctiled if FIX_BROKEN_TILED_FILL is defined, optimize XCopy Area blits 2023-09-23 01:46:39 +02:00
stefan schippers aa75723446 fix MotionNotify events when crosshair is enabled and there is a selection and FIX_BROKEN_TILED_FILL not defined 2023-09-22 19:29:14 +02:00
stefan schippers 75e2efd5a7 filter unused bbox_set variable in draw_crosshair() 2023-09-22 19:15:26 +02:00
stefan schippers 274b4da441 xschem(): print an error if trying to execute commands that require schematic data structs (xctx) and xctx is not yet allocated 2023-09-22 19:13:13 +02:00
stefan schippers 426be0e68c add !defined(__unix__) in all #if defined(FIX_BROKEN_TILED_FILL) 2023-09-22 18:33:16 +02:00
stefan schippers 288c053ec6 various FIX_BROKEN_TILED_FILL fixes 2023-09-22 18:26:18 +02:00
stefan schippers 42c76c9693 doc updates (cut wires) 2023-09-22 16:13:25 +02:00
stefan schippers 3ba3bbc21a remove dbg message 2023-09-22 15:58:21 +02:00
stefan schippers 1da34af531 allow to use the Windows keys (if present) as alternatives for "Alt" 2023-09-22 15:53:23 +02:00
stefan schippers fbffeec673 some minor fixes in src/xschemrc (order of libs, avoid referencing specific install paths) 2023-09-22 13:43:43 +02:00
stefan schippers a2d3f68977 fix missing #if defined((FIX_BROKEN_TILED_FILL) in draw_crosshair() 2023-09-22 13:23:21 +02:00
stefan schippers 93291ed84b add draw_crosshair() (if enabled) at end of any draw() operation 2023-09-22 13:13:35 +02:00
stefan schippers eb91c8bbea draw crosshair at end of copy/move ops if enabled 2023-09-22 13:02:51 +02:00
stefan schippers 8f0d920a96 add draw_crosshair setting in xschemrc: draw a crosshair at mouse coordinates 2023-09-22 12:48:22 +02:00