diff options
-rw-r--r-- | README | 1 | ||||
-rw-r--r-- | gfx/gfx.h | 1 | ||||
-rw-r--r-- | gui/sheet.c | 4 | ||||
-rw-r--r-- | help.html | 3 | ||||
-rw-r--r-- | help.txt | 1 | ||||
-rw-r--r-- | kicad/sch-render.c | 15 |
6 files changed, 18 insertions, 7 deletions
@@ -229,6 +229,7 @@ Esc cancel current action (exit history, close pop-up, de-highlight glabel, close help) E show/hide extra information (pin types) F toggle showing footprints, even if invisible +Shift + R idem, for component references Shift+D toggle between "diff" and experimental "delta" mode H show/hide help window T toggle performance timer @@ -22,6 +22,7 @@ enum gfx_extra { gfx_pin_type = 1 << 1, gfx_footprint = 1 << 2, + gfx_reference = 1 << 3, }; struct gfx; diff --git a/gui/sheet.c b/gui/sheet.c index ca321ab..f1a4656 100644 --- a/gui/sheet.c +++ b/gui/sheet.c @@ -566,6 +566,10 @@ static void sheet_key(void *user, int x, int y, int keyval) show_extra ^= gfx_footprint; redraw(gui); break; + case GDK_KEY_R: /* Shift + R */ + show_extra ^= gfx_reference; + redraw(gui); + break; case GDK_KEY_n: gui->diff_mode = diff_new; @@ -39,6 +39,9 @@ <TD>F <TD>toggle showing footprints, even if invisible <TR> + <TD>Shift+R + <TD>idem, for component references + <TR> <TD>Shift+D <TD>toggle between "diff" and experimental "delta" mode <TR> @@ -13,6 +13,7 @@ Esc cancel current action (exit history, close pop-up, de-highlight glabel, close help) E show/hide extra information (pin types) F toggle showing footprints, even if invisible +Shift+R idem, for component references Shift+D toggle between "diff" and experimental "delta" mode H show/hide help window diff --git a/kicad/sch-render.c b/kicad/sch-render.c index fdb945d..37633e5 100644 --- a/kicad/sch-render.c +++ b/kicad/sch-render.c @@ -123,15 +123,16 @@ static void render_comp(const struct sch_comp *comp, struct gfx *gfx) lib_render(comp->comp, gfx, comp->unit, comp->convert, comp->m); for (field = comp->fields; field; field = field->next) { - if (field->visible) { - dump_field(field, gfx, comp->m); - } else { - if (field->n == 2) { + if (!field->visible) { + if (field->n == 0) + gfx_set_extra(gfx, gfx_reference); + else if (field->n == 2) gfx_set_extra(gfx, gfx_footprint); - dump_field(field, gfx, comp->m); - gfx_set_extra(gfx, 0); - } + else + continue; } + dump_field(field, gfx, comp->m); + gfx_set_extra(gfx, 0); } } |