1
0
mirror of git://projects.qi-hardware.com/eda-tools.git synced 2024-11-05 07:01:53 +02:00
Commit Graph

838 Commits

Author SHA1 Message Date
Werner Almesberger
562f36b20c eeshow/gui-over.c: outwitted myself with the overlay direction logic 2016-08-15 04:33:34 -03:00
Werner Almesberger
5e9bc68093 eeshow/gui.c (set_history_style): show revisions without valid sheets in red 2016-08-15 00:53:14 -03:00
Werner Almesberger
8d465b0da0 eeshow/gui-over.c (overlay_draw): simplify; correct reverse alignment 2016-08-14 14:52:07 -03:00
Werner Almesberger
a61560f119 eeshow/gui.c (on_draw_event): don't reverse direction at end of history 2016-08-14 14:36:34 -03:00
Werner Almesberger
d8f3319264 eeshow/gui-over.c: more fine-grained control over stacking direction 2016-08-14 14:35:57 -03:00
Werner Almesberger
a3301f95ae eeshow/gui.c: show progress bar on main window 2016-08-14 13:51:30 -03:00
Werner Almesberger
6345c44dad eeshow/: history list can now be dragged 2016-08-14 13:01:58 -03:00
Werner Almesberger
5ccd805b43 eeshow/gui-aoi.c: prepare API for future dragging support 2016-08-14 12:31:09 -03:00
Werner Almesberger
c00f065993 eeshow/sch-parse.c (recurse_sheet): sheet->title must be malloc'ed 2016-08-14 12:13:33 -03:00
Werner Almesberger
93b7269a3e eeshow/: field visibility in schematics completely overrides library 2016-08-14 10:55:22 -03:00
Werner Almesberger
88287cae35 eeshow/delta.c (comp_fields_eq): remove redundant initialization 2016-08-14 10:41:31 -03:00
Werner Almesberger
57dbe2344c eeshow/sch-parse.c (parse_field): fix small memory leak 2016-08-14 10:21:11 -03:00
Werner Almesberger
092386d0c2 eeshow/gui.c: show commits that don't change the schematics in grey 2016-08-14 10:13:41 -03:00
Werner Almesberger
bbfa7c573a eeshow/sch-parse.c (parse_line): always initialize u.text.shape
Even for text and (local) labels, which use no shape attribute.
2016-08-14 10:12:58 -03:00
Werner Almesberger
dd952eabf1 eeshow/delta.c (obj_eq): optionally recurse into sub-sheets 2016-08-13 03:19:40 -03:00
Werner Almesberger
174a57d6c5 eeshow/delta.c (sheet_eq): sheet comparison, for history compression 2016-08-13 03:16:14 -03:00
Werner Almesberger
d63c1a8ffe eeshow/gui.c (parse_files): don't expect number of libs to be constant 2016-08-12 14:50:13 -03:00
Werner Almesberger
4c86cc1b46 eeshow/: missing components are no longer fatal 2016-08-12 14:43:29 -03:00
Werner Almesberger
7af9b85e6c eeshow/: add a progress bar when starting (WIP)
Positioning is still very bad.
2016-08-12 14:43:29 -03:00
Werner Almesberger
5a7ddc8b95 eeshow/: convert "perror" to diagnostic functions 2016-08-12 14:43:28 -03:00
Werner Almesberger
d1fdcaeab4 eeshow/gui.c: limit = 0 means "no limit", not "no revisions" 2016-08-12 10:42:03 -03:00
Werner Almesberger
62ca12c2da eeshow/: use dedicated functions for diagnostics, instead of fprintf and exit 2016-08-12 10:40:55 -03:00
Werner Almesberger
3e236d0456 eeshow/: output progress messages with "progress" 2016-08-11 17:44:26 -03:00
Werner Almesberger
5581a34444 eeshow/main.c (verbose): move to new file diag.c
In preparation of a more flexible diagnostics system.
2016-08-11 16:36:24 -03:00
Werner Almesberger
1a7c311c87 eeshow/lib-render.c (draw_pin_name): "~" means "no name" 2016-08-11 10:08:28 -03:00
Werner Almesberger
5a2324169e eeshow/: properly handle fake history record for uncommitted changes 2016-08-11 03:24:34 -03:00
Werner Almesberger
2ef7eab861 eeshow/lib-render.c (draw_pin_name): skip initial ~ in pin name 2016-08-11 03:09:23 -03:00
Werner Almesberger
82635e8a41 eeshow/sch-parse.c (parse_line): use sub-sheet name as title, instead of title
In Anelok, all sheets have the same title, but different sub-sheet names.
So this is probably a more reliable heuristic.
2016-08-11 02:49:40 -03:00
Werner Almesberger
7cc2142e83 eeshow/sch-parse.c: remove #include left over from debugging 2016-08-11 02:44:33 -03:00
Werner Almesberger
f6352219b1 eeshow/sch-render.c (render_sheet): place subsheet labels correctly 2016-08-11 02:43:01 -03:00
Werner Almesberger
353aec1863 eeshow/dwg.c (dwg_hlabel): style for tri-state is the same as for bidir 2016-08-11 02:42:37 -03:00
Werner Almesberger
bddbad65f1 eeshow/misc.c (matrix_to_angle, matrix_is_mirrored): add matrix 0, -1, 1, 0
Probably mirrored + 270 deg.
2016-08-11 02:35:56 -03:00
Werner Almesberger
06d5a924c6 eeshow/: support component aliases 2016-08-11 02:32:00 -03:00
Werner Almesberger
3e102752f6 eeshow/gui.c (select_subsheet): do nothing if we didn't load subsheets 2016-08-11 01:49:49 -03:00
Werner Almesberger
f5c908c36f eeshow/gui.c: proof-of-concept implementation of jumping by glabel
What's still missing:
- don't require click to dehover
- help to find glabel on destination sheet
- help with finding glabel on current sheet
- avoid darkened overlap
- maybe indicate in/out/bidir/passive
2016-08-11 01:27:59 -03:00
Werner Almesberger
cfa25b4b4c eeshow/gui.c: show glabel pop-up on glabel 2016-08-10 23:47:08 -03:00
Werner Almesberger
0fdce017fb eeshow/: make glabels hoverable (WIP) 2016-08-10 21:50:07 -03:00
Werner Almesberger
08de2f7b4b eeshow/sch.h (sch_obj_glabel): indicate global labels (in data) more clearly 2016-08-10 20:49:01 -03:00
Werner Almesberger
d63b534fb3 eeshow/gui.c: show sheet number on hover 2016-08-10 20:41:33 -03:00
Werner Almesberger
8a0a79e461 eeshow/util.h (alloc_type_n): get rid of all these alloc_size(sizeof(foo), n) 2016-08-10 20:28:31 -03:00
Werner Almesberger
2ab72ab0e3 eeshow/gui.c (sheet_selector_recurse): we can now jump to the exact sheet
No need for the "go up" hack.
2016-08-10 20:24:03 -03:00
Werner Almesberger
97de1dda47 eeshow/gui.c (struct gui_sheet): record ctx, to allow for simpler callbacks 2016-08-10 20:20:51 -03:00
Werner Almesberger
cf2ca585f5 eeshow/gui.c: write down some more thoughts on making caching better 2016-08-10 20:15:07 -03:00
Werner Almesberger
06235a3966 Merge branch 'master' of projects.qi-hardware.com:eda-tools 2016-08-10 19:56:30 -03:00
Werner Almesberger
9524447bf1 eeshow/sch.h (struct sheet.parent): remove; we can just record it locally 2016-08-10 19:41:17 -03:00
Werner Almesberger
8f352832e0 eeshow/: simple caching of sheets
We only reuse previous sheets if ...

- they have no sub-sheets, and
- all the libraries are identical.

This reduces the -N-150 time from 8.3 s (caching only libraries) to 4.3 s.

Since we only need to know whether there are sub-sheets, but not what
exactly they are, we can also partially undo the previous commit,
77c0e07590
2016-08-10 19:37:44 -03:00
Werner Almesberger
77c0e07590 aeeshow/sch.h, sch-parse.c: record subsheets in parent, for future caching 2016-08-10 16:33:40 -03:00
Werner Almesberger
b6975e3998 eeshow/gui.c: only parse libraries if any have changed
This reduced the time for
./eeshow -N-150 -r neo900.lib /home/qi/kicad-libs/components/powered.lib /home/n9/ee/hw/neo900.sch

from 10.3 (not caching anything) s to 8.3 s (caching libraries).
2016-08-10 16:17:58 -03:00
Werner Almesberger
fb6d6c026b eeshow/git-file.c (related_other_repo): print warning only once 2016-08-10 16:03:16 -03:00
Werner Almesberger
ab613fcc86 eeshow/lib-parse.c (lib_parse_file): separate "core" from lib_parse 2016-08-10 15:26:03 -03:00