Stefan Frederik
|
26b5b67262
|
code formatting
|
2020-12-22 22:37:39 +01:00 |
Stefan Frederik
|
1cfea4d1d3
|
svg_draw(): do not print unused layer stylesheets, error check when opening file for printing
|
2020-12-22 18:31:08 +01:00 |
Stefan Frederik
|
779c789100
|
better "xschem print" command accepting viewport and image dimensions, better zoom_full (with margin), good for embedding in script and do automatic export generation
|
2020-12-22 00:13:25 +01:00 |
Stefan Frederik
|
4ddc9654e8
|
add xschem commands for specifying image size for png and pdf: xschem print svg file.svg 800 600; svg background color taken from svg_colors variable so it can be changed like any other color
|
2020-12-21 04:38:57 +01:00 |
Stefan Frederik
|
35efb0228a
|
speed up draw selection for big datasets, make "drill_hilight" work again after hilight infrastructure changes, fix hilight elements with errors after netlisting, after hilight changes
|
2020-12-20 19:48:37 +01:00 |
Stefan Frederik
|
f3a3c2d10d
|
clean up of search() function (removed spaghetti drawing code, use available functions)
|
2020-12-19 19:58:30 +01:00 |
Stefan Frederik
|
bcedaa6bc5
|
various drawing optimizations to speed up full zoom views
|
2020-12-19 17:12:46 +01:00 |
Stefan Frederik
|
a837682731
|
caching "lab" and "highlight" attributes for speed
|
2020-12-19 03:22:38 +01:00 |
Stefan Frederik
|
821ebf06f2
|
optimizations in instance (connected to wires/net labels) highlights
|
2020-12-18 19:22:08 +01:00 |
Stefan Frederik
|
03c42d3ecd
|
code formatting
|
2020-12-12 22:48:25 +01:00 |
Stefan Frederik
|
a3e1564c48
|
option for variable-width grid points for better visibility on hyper-resolution monitors
|
2020-12-12 13:36:39 +01:00 |
Stefan Frederik
|
89da7d9ffd
|
use #if HAS_CAIRO!=1 indtead of HAS_CAIRO==0
|
2020-12-07 20:12:52 +01:00 |
Stefan Frederik
|
bb64297b6e
|
better #if/#endif configuration of various xrender/xcb/cairo combinations
|
2020-12-07 20:04:57 +01:00 |
Stefan Frederik
|
e80896dbf9
|
added render_format assignment that got deleted after xinit code refactoring
|
2020-12-07 18:51:15 +01:00 |
Stefan Frederik
|
17124c761c
|
each schematic windows has its own "current later" (rectcolor)
|
2020-12-06 16:40:08 +01:00 |
Stefan Frederik
|
e7e5ad190b
|
more schematic context in xctx: cairo surfaces and context, save buffer graphic context (GC), hilight hash tables and data, node name hash tables. Refactoring of resetwin , resetcairo routines (also used in xinit to avoid code duplication), switching schematics seems almost complete now
|
2020-12-06 02:10:53 +01:00 |
Stefan Frederik
|
fe1f7c57a7
|
"lazy man" (good enough for schematics) aproximated polygon clipping using the underlying xorg 16 bit integer poly clipping engine, by projecting outer vertices to the 16 bit signed coordinate system edges
|
2020-12-05 13:58:44 +01:00 |
Stefan Frederik
|
780b994aeb
|
use short data type for small integer data: rot, flip, dash, bus etc...
|
2020-12-05 03:16:01 +01:00 |
Stefan Frederik
|
e6d522bf69
|
xschem() tcl extension function (scheduler.c) command lookup made much faster by ordering command strings
|
2020-12-05 00:01:09 +01:00 |
Stefan Frederik
|
2b7e31e0d6
|
add utility functions to create new schematic window
|
2020-12-03 23:17:13 +01:00 |
Stefan Frederik
|
3732bd8d01
|
put cairo save surface and context into xctx, faster and smoother preview (avoid unload/load if no filename change)
|
2020-12-03 18:21:23 +01:00 |
Stefan Frederik
|
66a73e4e99
|
cleanup in preview code
|
2020-12-03 11:49:29 +01:00 |
Stefan Frederik
|
4322101f9b
|
cleanup in preview code
|
2020-12-03 11:46:00 +01:00 |
Stefan Frederik
|
9588a859da
|
cleanup in preview code
|
2020-12-03 11:42:06 +01:00 |
Stefan Frederik
|
a64d69ed7a
|
some code refactoring, more globals in xctx context, fixed unnoticed shift-reduce conflict in expandlabel
|
2020-12-03 04:20:05 +01:00 |
Stefan Frederik
|
e279262f00
|
more globals into xctx context struct
|
2020-12-02 15:10:47 +01:00 |
Stefan Frederik
|
d93826f61c
|
wrap long lines in source code, set default direction of pins to "B"(idirectional) if not specified in spice netlist (no *.PININFO information)
|
2020-11-22 00:51:24 +01:00 |
Stefan Frederik
|
0d59d01170
|
allow to pass down to tcl evaluation (via tcleval( ....) wrap) instance parameters: example of a mos transistor : name=m1 w=2 l=0.13 model=net ad="tcleval([expr @W * 0.29])" --> in netlist: m1 d g s b nfet w=2 l=0.13 ... ad=0.58
|
2020-11-20 18:46:27 +01:00 |
Stefan Schippers
|
71fd1bcb68
|
comments about color handling in source code, set_cairo_color() function
|
2020-11-19 15:08:40 +01:00 |
Stefan Schippers
|
4f53cd8dbd
|
remove noop code after cleanups
|
2020-11-18 18:54:41 +01:00 |
Stefan Schippers
|
bf183f0d20
|
Option (default now) to export svg images using the svg <text> element. This makes generated SVGs much smaller and in most cases faster to render.
|
2020-11-18 18:29:14 +01:00 |
Stefan Schippers
|
3c86f4ec64
|
more consistent function parameter names in svgdraw.c and draw.c
|
2020-11-18 12:46:57 +01:00 |
Stefan Schippers
|
fac9cfe26b
|
folded long lines
|
2020-11-16 12:33:06 +01:00 |
Stefan Schippers
|
d22b4c9ea0
|
guard against extended ascii characters in nocairo/svgdraw/psprint function
|
2020-11-13 12:54:07 +01:00 |
Stefan Schippers
|
957b9888d1
|
Removed all static/global name conflicts, avoided global conflicts with flex/bison generated code so xschem (as a test bench) can be compiled as a single big file that includes all other sources
|
2020-11-03 12:10:55 +01:00 |
Stefan Schippers
|
55723e9429
|
line width is related to the schematic, so it is moved under xctx; removed all integer versions (lw, bus_width) that needed to be kept in sync, created two macros to get the integer values from xctx->lw. main window save_pixmap is preserved when doing a schematic preview in file open dialog, so no need to regenerate its content (with a draw() call) after preview.
|
2020-10-17 00:53:19 +02:00 |
Stefan Schippers
|
e7928727d6
|
all xctx context is now a dynamically allocated structure; no observable performace impact
|
2020-10-15 17:39:21 +02:00 |
Stefan Schippers
|
0eb706a67e
|
removed changes in strings due to variable refactoring
|
2020-10-15 17:05:30 +02:00 |
Stefan Schippers
|
c87f44a441
|
added "xchem load_symbol" command to load a symbol without binding to any instance, text edit attribute "Load" button will start in "$current_dirname"
|
2020-10-15 15:37:06 +02:00 |
Stefan Schippers
|
8ea275013e
|
updated print_spice_subckt() to reflect updates done in print_spice_element(); abs_sym_path recognize ././././, ./., other strange paths., use $env(PWD) for current_dirname on startup instead of getcwd() if possible, to avoid dereferencing symlinks
|
2020-10-13 16:23:48 +02:00 |
Stefan Schippers
|
64c0abc58e
|
code refactoring (global context in Xschem_ctx), "New Schematic" or "New Symbol" will set netlist_type to "spice" or "symbol" respectively
|
2020-10-12 13:13:31 +02:00 |
Stefan Schippers
|
051b20c014
|
code formating, use some intermediate variables for code readability, line length limited to 124 chars
|
2020-10-04 23:55:43 +02:00 |
Stefan Schippers
|
3060217aec
|
simplified complex logical expressions on symbol type by using macros
|
2020-10-04 19:53:09 +02:00 |
Stefan Schippers
|
8807c7250d
|
various graphic rendering fixes for the new "view instance pin net names" function. Fixed some errors in merge schematic in callback.c and paste.c
|
2020-10-02 03:21:22 +02:00 |
Stefan Schippers
|
d706e45987
|
set max width of .c files <=130 chars; Fix netlist regression: if no "lab=value" is given in instance attributes get lab from symbol "template=" string. This was commented out recently and now reverted back. "View->Enable show net names on symbol pins" global menu added: if unset no symbol pin net names will be shown regardless of instance/symbol "net_name=true" and pin @#n:net_name attributes.
|
2020-09-30 23:55:07 +02:00 |
Stefan Schippers
|
91e74fadcb
|
"@#n:net_name" attribute (n = pin name or number) in symbols translates to net name attached to pin. "lab_show.sym" component that shows (does not assign) net name. "highlight=true" attribute can be given on instances in addition to symbols
|
2020-09-30 00:30:48 +02:00 |
Stefan Schippers
|
5e85a87545
|
Alt-b command toggles bounding box view: 0: view all, 1: bbox view for subcircuits, 2: bbox view for all symbols.
|
2020-09-25 00:23:34 +02:00 |
Stefan Schippers
|
b7d724dcab
|
apply visible layers (View->Symbol visible layers) to any object (lines. arcs, text etc),better bounding box calculation for slant text
|
2020-09-23 22:13:39 +02:00 |
Stefan Schippers
|
5bab41e28b
|
add attributes "weight=bold", "slant=italic", "slant=oblique" on text objects for bold/italic/oblique texts, doc updates.
|
2020-09-23 18:15:26 +02:00 |
Stefan Schippers
|
a9013fc4d9
|
use layer 4 instead of 5 for symbol bounding-box-only view
|
2020-09-07 23:02:30 +02:00 |