Index: trunk/src/board.h =================================================================== --- trunk/src/board.h (revision 9355) +++ trunk/src/board.h (revision 9356) @@ -71,7 +71,8 @@ pcb_bool Changed, /* layout has been changed */ ViaOn, /* visibility flags */ RatOn, InvisibleObjectsOn, PinOn, - RatDraw; /* we're drawing rats */ + RatDraw, /* we're drawing rats */ + SubcOn, SubcPartsOn; pcb_coord_t CursorX, /* cursor position as saved with layout */ CursorY; pcb_coord_t Bloat, /* drc sizes saved with layout */ Index: trunk/src/layer_vis.c =================================================================== --- trunk/src/layer_vis.c (revision 9355) +++ trunk/src/layer_vis.c (revision 9356) @@ -145,6 +145,8 @@ PCB->InvisibleObjectsOn = pcb_true; PCB->PinOn = pcb_true; PCB->ViaOn = pcb_true; + PCB->SubcOn = pcb_true; + PCB->SubcPartsOn = pcb_true; PCB->RatOn = pcb_true; /* Bring the top copper group to the front and make it active. */ Index: trunk/src/obj_subc.c =================================================================== --- trunk/src/obj_subc.c (revision 9355) +++ trunk/src/obj_subc.c (revision 9356) @@ -500,6 +500,9 @@ pcb_box_t *bb = &subc->BoundingBox; int selected = PCB_FLAG_TEST(PCB_FLAG_SELECTED, subc); + if (!PCB->SubcOn) + return PCB_R_DIR_FOUND_CONTINUE; + pcb_gui->set_color(Output.fgGC, selected ? conf_core.appearance.color.subc_selected : conf_core.appearance.color.subc); pcb_gui->set_line_cap(Output.fgGC, Trace_Cap); pcb_gui->set_line_width(Output.fgGC, 0);