1
0
mirror of git://projects.qi-hardware.com/eda-tools.git synced 2024-11-06 02:50:37 +02:00
Commit Graph

25 Commits

Author SHA1 Message Date
Werner Almesberger
93b7269a3e eeshow/: field visibility in schematics completely overrides library 2016-08-14 10:55:22 -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
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
4c86cc1b46 eeshow/: missing components are no longer fatal 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
62ca12c2da eeshow/: use dedicated functions for diagnostics, instead of fprintf and exit 2016-08-12 10:40:55 -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
08de2f7b4b eeshow/sch.h (sch_obj_glabel): indicate global labels (in data) more clearly 2016-08-10 20:49:01 -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
13828eff94 eeshow/sch-parse.c (free_sheet): don't free recursively (caller frees all) 2016-08-08 23:44:27 -03:00
Werner Almesberger
f4944a5da9 eeshow/ (file_open, *_parse): return 0 on error (may still exit) 2016-08-05 21:02:57 -03:00
Werner Almesberger
e5f010797d eeshow/sch-parse.c (parse_line): no longer use return code 0 for EOF
We'll soon use it to indicate a parsing problem.
2016-08-05 20:41:35 -03:00
Werner Almesberger
c54bf3de06 eeshow/sch-parse.c (sch_free): add cleanup of schematics data 2016-08-05 20:25:58 -03:00
Werner Almesberger
258876ef2c eeshow/: retrieve title from *.sch; prefer over subsheet name when displaying 2016-08-04 08:42:36 -03:00
Werner Almesberger
95bc0f06fd eeshow/sch.h, sch-parse.c: add pointer to sub-sheet to obj.u.sheet 2016-08-03 11:53:03 -03:00
Werner Almesberger
48327e149b eeshow/sch.h, sch-parse.c, sch-render.c: rename obj.u.sheet to obj.u.name 2016-08-03 11:46:24 -03:00
Werner Almesberger
0d41488f93 eeshow/sch-parse.c (recurse_sheet): clean up handling of next_obj 2016-08-02 17:12:33 -03:00
Werner Almesberger
49a6ebd797 eeshow/: make libraries "related" to the [main] schematics sheet
That way, we can use relative paths on the command line, ideally just
./eeshow foo.lib bar.lib com/plex/path/foo.sch
2016-08-02 16:38:21 -03:00
Werner Almesberger
24522c45e0 eeshow/sch-parse.c (recurse_sheet): move parent/related logic to file.c 2016-08-02 16:27:08 -03:00
Werner Almesberger
6793f06aeb eeshow/sch-parse.c, lib-parse.c: use file name and line number from "file" 2016-08-02 15:44:28 -03:00
Werner Almesberger
05af03a0fd eeshow/: split file_read into open/read/close
This is to allow for a better implementation of "related" in the future.
2016-08-02 15:36:18 -03:00
Werner Almesberger
a941a5f246 rename sch2fig to eeshow 2016-08-02 11:00:08 -03:00