Commit Graph

547 Commits

Author SHA1 Message Date
stefan schippers a61f2cba2a fix arbitrary widths in shapes, add "xschem get change_lw", "xschem get min_lw", "xschem set change_lw", cached tcl var "change_lw" into xctx->change_lw 2025-12-01 10:11:19 +01:00
stefan schippers 6bea824fdc fixes in veriable line width drawing routines 2025-11-30 23:13:38 +01:00
stefan schippers b628d66e8f arbitrary box widths (and some fixes on wire widths) 2025-11-29 14:36:15 +01:00
stefan schippers f25b40861c allow arbitrary widths (via ex. bus=5.0 attr) on wires 2025-11-29 00:47:46 +01:00
stefan schippers 8da982999a allow arbitrary widths (with ex. bus=3.5 attr) for arcs / circles 2025-11-28 13:31:45 +01:00
stefan schippers 7216c54f57 allow arbitrary widths of polygons (with attr bus=5.0) 2025-11-27 22:03:10 +01:00
stefan schippers cf7a74bc99 transform get_attr_val() to return a double instead of an int, use -1.0 for "bus" attribute, otherwise use positive double values to indicate actual line widths. This allows specifying custom widths in the future, but still maintaining compatibility with bus=1. "bus" struct members are thus doubles now 2025-11-26 14:07:54 +01:00
stefan schippers 86ec0d567f remove commented out code 2025-11-25 22:27:50 +01:00
stefan schippers d8fb5b1480 added bus (cached from attr) member in Polygon struct for efficiency 2025-11-25 15:25:42 +01:00
stefan schippers eae8c2772a fix regression (no check for null raw->sim_type), allow quoted table titles in table_read() 2025-11-01 22:43:48 +01:00
stefan schippers 1c1edfe159 redo fix arc_bbox() if arc was saved with negative "b" angle 2025-10-30 01:45:20 +01:00
stefan schippers 3fcc5cdfc6 fix find_closest_arc() and arc_bbox() if arc was saved with negative "b" angle 2025-10-30 01:12:11 +01:00
stefan schippers a2529cad5d allow backslash + newline as continuation of comma separated bus bit names in graphs 2025-09-23 03:19:57 +02:00
stefan schippers aa2d8b1b09 better implementation of previous commit 2025-09-23 02:42:13 +02:00
stefan schippers 9f11ff4924 minimum width of bold waveforms set to 2*tk_scaling, so will be visible even if zoomed out a lot 2025-09-20 21:58:36 +02:00
stefan schippers 987faa1a41 set tk_scaling C variable global, updated in draw(), caching tcl tk_scaling variable, add tk_scaling in threshold expression in find_closest_*() functions 2025-09-15 01:38:10 +02:00
stefan schippers 3efe7bfbec button3 right click on signal names in graphs works now better, no context menu in the way. 2025-09-09 00:09:29 +02:00
stefan schippers e64f76a4fd avoid additional "escape char eating" when rendering symbol texts (translate() + translate3() ) 2025-08-22 00:08:22 +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 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 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 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 cf3fa993bd fix some regressions in text bbox calculation in no cairo mode 2025-04-16 02:54:56 +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 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 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 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 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 0b266d2bd0 merge in SuperChayan refactoring ( recompute_orthogonal_manhattanline() ) 2025-03-19 00:50:35 +01:00
stefan schippers 33591fa41d applied recent additions from SuperCgayan 2025-03-16 11:35:30 +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 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 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 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 efdd45f414 revert wrong fix (fix typo in draw_graph()) not a typo... 2025-02-28 19:19:06 +01:00
stefan schippers be1a0deb89 fix typo in draw_graph() 2025-02-28 18:04:56 +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 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 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 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 89a8d8b719 same previous fix for resetwin() restore done in ps_embedded_graph() backported also in svg_embedded_graph() (not necessary here but safer) 2025-02-10 17:44:05 +01:00