Commit Graph

397 Commits

Author SHA1 Message Date
stefan schippers 85abc67c89 fix arc placement if moving mouse to the left for second point 2024-03-21 01:28:01 +01:00
stefan schippers 8329720848 hash_file(): skip also .include lines if skip_path_lines parameter is set 2024-03-20 10:45:28 +01:00
stefan schippers bef157aacf More return codes when something goes wrong, like loading failure of a file given on cmdline 2024-03-15 11:56:35 +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 56af3bf427 cleanup in in-memory cairo_ctx creation for text_bbox() when no X used 2024-03-12 12:46:15 +01:00
stefan schippers e4ef7d4dc1 replace cairo_image_surface_create_for_data with cairo_image_surface_create in create_memory_cairo_ctx 2024-03-12 12:03:53 +01:00
stefan schippers 9b8015b437 in_memory cairo_ctx for better font rendering when no X available 2024-03-12 11:48:18 +01:00
stefan schippers 65ba2e1cc4 svg_draw(): if xschem started with -x but cairo is available use a temporary X connection (if X available) to create a cairo context so we get more precise font metricx for text bbox calculations 2024-03-12 02:36:32 +01:00
stefan schippers 05c6f4770b cleanup the use of set_netlist_dir(), never use simuldir directly, updated intuitive_interface_cheatsheet 2024-03-10 23:50:38 +01:00
stefan schippers 218d4ad3f2 fill=solid in addition to fill=1 (stippled fill) or fill=0 (no fill) for rectangles, polygon/beziers and circles 2024-03-09 03:12:25 +01:00
stefan schippers ddcac8c69c fix some race conditions and execution order of callbacks given in simulate commands inside postinit_commands at startup 2024-03-08 19:19:30 +01:00
stefan schippers 93722e8a21 comment typo, add one more example in inst_sch_select.sch 2024-03-08 00:08:48 +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 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 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 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 41d126b3c6 revert: don`t print rectangle bboxes around circles as this createed a black sinkhole and a chain-reaction of issues 2024-03-02 03:31:24 +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 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 263b72de03 add tcl in addition to sch and sym in default search filter in load_file_dialog 2024-03-01 00:29:23 +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 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 1e3ac96085 table_read(): read csv files 2024-02-27 10:24:21 +01:00
stefan schippers 354f027b9b call translate(-1, ..) for text objects containing @... and referencing no valid instance (floater=true) so non instance-related @vars are resolved. translate(): resolve @spice_get_voltage(net) without trying to calculated fqnet from net if no valid inst (-1) is given 2024-02-26 16:05:11 +01:00
stefan schippers 203cf38e1e add option `keep_symbols in xschemrc to avoid purging symbols when netlisting /descending hierarchy. Add functions atan, asin,acos, cosh, sinh, atanh,acosh,asinh in wave processor 2024-02-24 13:15:43 +01:00
stefan schippers d1bd5140fe various bug fixes for `xschem raw new` command 2024-02-23 04:19:29 +01:00
stefan schippers 965bf381ea fix regression in xschem raw_read_from_attr when invoked from launcher 2024-02-22 14:36:34 +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 a176f99db5 svgdraw.c: avoid setting stroke-width to excessively small (invisible) values; print_spice_element(): in format string if @param is given and in instance atttributes param=value@tag do a round of resolution of @tag looking in instance attributes, then in parent symbol instance attributes (in case of per-instance implementation (schematic=... attr) and finally in parent symbol template string. Doc udpades 2024-02-16 16:44:33 +01:00
stefan schippers 5f4401258f spice.awk: handle per-instance .model lines of vector instances 2024-02-11 15:15:46 +01:00
stefan schippers 81f22b8bb2 symbol texts: do a double translate() if symbol text `@model` resolves to `xxx@name`, so `xxxN1` will be returned. This will not happen if `@model` resolves to xxx\@name` 2024-02-10 13:59:27 +01:00
stefan schippers 8aa62f2efa parametric models in subcircuits (model=@mod in instances, mod=xxx in parent instantiation) 2024-02-09 18:39:09 +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 c06a896d4f instance based schematic selection: if instance specified schematic=... not existing use base schematic (symbolname.sch) 2024-02-09 02:37:53 +01:00
stefan schippers 8ec3e52122 allow parametric models in subcircuits. Symbol inv.sym contains template="... modp=cmos_p_10 ...", pmos instance in inv.sch contains model=@modp, instance format string contains format="@name @pinlist @model w=@w l=@l, result is: "m2 y a VCCPIN VCCPIN cmos_p_10 w=wp l=lp" 2024-02-03 13:43:18 +01:00
stefan schippers 8c55f3a99e add `hide=instance` attribute for in-symbol text objects (in addition to hide=true or hide=false). If set the text is invisible in instantiated symbols, but is visible if descending into the symbol 2024-01-08 15:47:01 +01:00
stefan schippers 0597bae9dc various improvements for automatic port order detection from included subcircuit via spice_sym_def and @pinlist in format string, documentation updates in tutorial_use_existing_subckt.html 2024-01-08 14:57:21 +01:00
stefan schippers f042b940c2 add xschemrc option ps_page_title (default: enabled, 1) to set or hide page title in ps/pdf exports, more precise graph exports in svg and ps/pdf 2023-12-11 10:43:09 +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 a0237b59b3 eliminated some redundant operations on instance flags (set_inst_flags() does the job) 2023-12-07 18:07:42 +01:00
stefan schippers b2aad10650 changed attribute text_n_size to text_size_n (for efficienty reasons), improved get_tok_val() (use strstr for quick return "" if no token found) 2023-12-03 23:11:36 +01:00
stefan schippers b2965f4c3d attribute default_schematic=ignore: if set in a symbol xschem will not descend into the default schematic associated to symbol. Instances MUST specify a schematic attribute 2023-12-02 13:17:32 +01:00
stefan schippers aafe94822a save_file_dialog: file filter by default set to `*` (show all files) 2023-11-22 01:41:16 +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 48a9a94ab2 offloaded proc graph_tag_nodes from proc graph_update_nodelist, moved rcode and colors into tctx:: context 2023-11-17 14:05:49 +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 6360fc1700 refactor reset_flags() to reset_caches(). scripts that set tcl variables that go into attributes via tcleval() should call `xschem reset_caches` to get all things updated. 2023-11-12 20:53:37 +01:00