Index: trunk/src/board.c =================================================================== --- trunk/src/board.c (revision 8333) +++ trunk/src/board.c (revision 8334) @@ -170,22 +170,6 @@ pcb_layer_id_t SLayer = -1, CLayer = -1; /* copy default settings */ - ptr->ConnectedColor = conf_core.appearance.color.connected; - ptr->ElementColor = conf_core.appearance.color.element; - ptr->ElementColor_nonetlist = conf_core.appearance.color.element_nonetlist; - ptr->RatColor = conf_core.appearance.color.rat; - ptr->InvisibleObjectsColor = conf_core.appearance.color.invisible_objects; - ptr->InvisibleMarkColor = conf_core.appearance.color.invisible_mark; - ptr->ElementSelectedColor = conf_core.appearance.color.element_selected; - ptr->RatSelectedColor = conf_core.appearance.color.rat_selected; - ptr->PinColor = conf_core.appearance.color.pin; - ptr->PinSelectedColor = conf_core.appearance.color.pin_selected; - ptr->PinNameColor = conf_core.appearance.color.pin_name; - ptr->ViaColor = conf_core.appearance.color.via; - ptr->ViaSelectedColor = conf_core.appearance.color.via_selected; - ptr->WarnColor = conf_core.appearance.color.warn; - ptr->MaskColor = conf_core.appearance.color.mask; - ptr->PasteColor = conf_core.appearance.color.paste; for (i = 0; i < PCB_MAX_LAYER; i++) { ptr->Data->Layer[i].Color = conf_core.appearance.color.layer[i]; ptr->Data->Layer[i].SelectedColor = conf_core.appearance.color.layer_selected[i]; Index: trunk/src/board.h =================================================================== --- trunk/src/board.h (revision 8333) +++ trunk/src/board.h (revision 8334) @@ -72,16 +72,6 @@ ViaOn, /* visibility flags */ ElementOn, RatOn, InvisibleObjectsOn, PinOn, SilkActive, /* active layer is actually silk */ RatDraw; /* we're drawing rats */ - char *ViaColor, /* some colors */ - *ViaSelectedColor, - *PinColor, - *PinSelectedColor, - *PinNameColor, - *ElementColor, - *ElementColor_nonetlist, - *RatColor, - *InvisibleObjectsColor, - *InvisibleMarkColor, *ElementSelectedColor, *RatSelectedColor, *ConnectedColor, *WarnColor, *MaskColor, *PasteColor; pcb_coord_t CursorX, /* cursor position as saved with layout */ CursorY; pcb_coord_t Bloat, /* drc sizes saved with layout */ Index: trunk/src/draw.c =================================================================== --- trunk/src/draw.c (revision 8333) +++ trunk/src/draw.c (revision 8334) @@ -191,8 +191,8 @@ pcb_bool paste_empty; - PCB->Data->SILKLAYER.Color = PCB->ElementColor; - PCB->Data->BACKSILKLAYER.Color = PCB->InvisibleObjectsColor; + PCB->Data->SILKLAYER.Color = conf_core.appearance.color.element; + PCB->Data->BACKSILKLAYER.Color = conf_core.appearance.color.invisible_objects; memset(do_group, 0, sizeof(do_group)); for (ngroups = 0, i = 0; i < pcb_max_layer; i++) { @@ -405,7 +405,7 @@ return; pcb_gui->use_mask(mask_type); - pcb_gui->set_color(Output.fgGC, PCB->MaskColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.mask); if (drawn_area == NULL) pcb_gui->fill_rect(Output.fgGC, 0, 0, PCB->MaxWidth, PCB->MaxHeight); else @@ -425,7 +425,7 @@ static void mask_start_sub(int thin, int *state, const pcb_box_t *screen) { if (thin) - pcb_gui->set_color(Output.pmGC, PCB->MaskColor); + pcb_gui->set_color(Output.pmGC, conf_core.appearance.color.mask); else { if (*state == 0) DrawMaskBoardArea(HID_MASK_BEFORE, screen); @@ -485,7 +485,7 @@ pcb_hid_gc_t old_fg = Output.fgGC; Output.fgGC = Output.pmGC; if (!thin) - l->Color = PCB->MaskColor; + l->Color = conf_core.appearance.color.mask; if (!want_add) l->Color = "erase"; pcb_draw_layer(l, screen); Index: trunk/src/obj_arc.c =================================================================== --- trunk/src/obj_arc.c (revision 8333) +++ trunk/src/obj_arc.c (revision 8334) @@ -700,12 +700,12 @@ char buf[sizeof("#XXXXXX")]; if (PCB_FLAG_TEST(PCB_FLAG_WARN, arc)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED | PCB_FLAG_FOUND, arc)) { if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, arc)) color = layer->SelectedColor; else - color = PCB->ConnectedColor; + color = conf_core.appearance.color.connected; } else color = layer->Color; Index: trunk/src/obj_elem.c =================================================================== --- trunk/src/obj_elem.c (revision 8333) +++ trunk/src/obj_elem.c (revision 8334) @@ -1804,18 +1804,18 @@ if ((conf_core.editor.hide_names && pcb_gui->gui) || PCB_FLAG_TEST(PCB_FLAG_HIDENAME, element)) return; if (pcb_draw_doing_pinout || pcb_draw_doing_assy) - pcb_gui->set_color(Output.fgGC, PCB->ElementColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element); else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, &PCB_ELEM_TEXT_VISIBLE(PCB, element))) - pcb_gui->set_color(Output.fgGC, PCB->ElementSelectedColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element_selected); else if (PCB_FRONT(element)) { #warning TODO: why do we test for Names flag here instead of elements flag? if (PCB_FLAG_TEST(PCB_FLAG_NONETLIST, element)) - pcb_gui->set_color(Output.fgGC, PCB->ElementColor_nonetlist); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element_nonetlist); else - pcb_gui->set_color(Output.fgGC, PCB->ElementColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element); } else - pcb_gui->set_color(Output.fgGC, PCB->InvisibleObjectsColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.invisible_objects); DrawTextLowLevel(&PCB_ELEM_TEXT_VISIBLE(PCB, element), PCB->minSlk); @@ -1855,13 +1855,13 @@ { /* set color and draw lines, arcs, text and pins */ if (pcb_draw_doing_pinout || pcb_draw_doing_assy) - pcb_gui->set_color(Output.fgGC, PCB->ElementColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element); else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, element)) - pcb_gui->set_color(Output.fgGC, PCB->ElementSelectedColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element_selected); else if (PCB_FRONT(element)) - pcb_gui->set_color(Output.fgGC, PCB->ElementColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.element); else - pcb_gui->set_color(Output.fgGC, PCB->InvisibleObjectsColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.invisible_objects); /* draw lines, arcs, text and pins */ PCB_ELEMENT_PCB_LINE_LOOP(element); @@ -1912,7 +1912,7 @@ mark_size = MIN(mark_size, pad0->Thickness / 2); } - pcb_gui->set_color(Output.fgGC, invisible ? PCB->InvisibleMarkColor : PCB->ElementColor); + pcb_gui->set_color(Output.fgGC, invisible ? conf_core.appearance.color.invisible_mark : conf_core.appearance.color.element); pcb_gui->set_line_cap(Output.fgGC, Trace_Cap); pcb_gui->set_line_width(Output.fgGC, 0); pcb_gui->draw_line(Output.fgGC, X - mark_size, Y, X, Y - mark_size); Index: trunk/src/obj_line.c =================================================================== --- trunk/src/obj_line.c (revision 8333) +++ trunk/src/obj_line.c (revision 8334) @@ -812,12 +812,12 @@ char buf[sizeof("#XXXXXX")]; if (PCB_FLAG_TEST(PCB_FLAG_WARN, line)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED | PCB_FLAG_FOUND, line)) { if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, line)) color = layer->SelectedColor; else - color = PCB->ConnectedColor; + color = conf_core.appearance.color.connected; } else color = layer->Color; Index: trunk/src/obj_pad.c =================================================================== --- trunk/src/obj_pad.c (revision 8333) +++ trunk/src/obj_pad.c (revision 8334) @@ -377,7 +377,7 @@ box.Y1 += conf_core.appearance.pinout.text_offset_y; } - pcb_gui->set_color(Output.fgGC, PCB->PinNameColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.pin_name); text.Flags = pcb_no_flags(); /* Set font height to approx 90% of pin thickness */ @@ -409,19 +409,19 @@ char buf[sizeof("#XXXXXX")]; if (pcb_draw_doing_pinout) - pcb_gui->set_color(Output.fgGC, PCB->PinColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.pin); else if (PCB_FLAG_TEST(PCB_FLAG_WARN | PCB_FLAG_SELECTED | PCB_FLAG_FOUND, pad)) { if (PCB_FLAG_TEST(PCB_FLAG_WARN, pad)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, pad)) - color = PCB->PinSelectedColor; + color = conf_core.appearance.color.pin_selected; else - color = PCB->ConnectedColor; + color = conf_core.appearance.color.connected; } else if (PCB_FRONT(pad)) - color = PCB->PinColor; + color = conf_core.appearance.color.pin; else - color = PCB->InvisibleObjectsColor; + color = conf_core.appearance.color.invisible_objects; if (PCB_FLAG_TEST(PCB_FLAG_ONPOINT, pad)) { assert(color != NULL); @@ -460,7 +460,7 @@ /* draws solder paste layer for a given side of the board - only pads get paste */ void pcb_draw_paste_auto(int side, const pcb_box_t * drawn_area) { - pcb_gui->set_color(Output.fgGC, PCB->PasteColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.paste); PCB_PAD_ALL_LOOP(PCB->Data); { if (PCB_ON_SIDE(pad, side) && !PCB_FLAG_TEST(PCB_FLAG_NOPASTE, pad) && pad->Mask > 0) { Index: trunk/src/obj_pinvia.c =================================================================== --- trunk/src/obj_pinvia.c (revision 8333) +++ trunk/src/obj_pinvia.c (revision 8334) @@ -806,11 +806,11 @@ if (Type == PCB_TYPE_VIA) { if (!pcb_draw_doing_pinout && PCB_FLAG_TEST(PCB_FLAG_WARN | PCB_FLAG_SELECTED | PCB_FLAG_FOUND, Pin)) { if (PCB_FLAG_TEST(PCB_FLAG_WARN, Pin)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, Pin)) - color = PCB->ViaSelectedColor; + color = conf_core.appearance.color.via_selected; else - color = PCB->ConnectedColor; + color = conf_core.appearance.color.connected; if (PCB_FLAG_TEST(PCB_FLAG_ONPOINT, Pin)) { assert(color != NULL); @@ -819,16 +819,16 @@ } } else - color = PCB->ViaColor; + color = conf_core.appearance.color.via; } else { if (!pcb_draw_doing_pinout && PCB_FLAG_TEST(PCB_FLAG_WARN | PCB_FLAG_SELECTED | PCB_FLAG_FOUND, Pin)) { if (PCB_FLAG_TEST(PCB_FLAG_WARN, Pin)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, Pin)) - color = PCB->PinSelectedColor; + color = conf_core.appearance.color.pin_selected; else - color = PCB->ConnectedColor; + color = conf_core.appearance.color.connected; if (PCB_FLAG_TEST(PCB_FLAG_ONPOINT, Pin)) { assert(color != NULL); @@ -837,7 +837,7 @@ } } else - color = PCB->PinColor; + color = conf_core.appearance.color.pin; } pcb_gui->set_color(Output.fgGC, color); @@ -879,7 +879,7 @@ box.Y1 = pv->Y - pv->Thickness / 2 + conf_core.appearance.pinout.text_offset_y; } - pcb_gui->set_color(Output.fgGC, PCB->PinNameColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.pin_name); text.Flags = pcb_no_flags(); /* Set font height to approx 56% of pin thickness */ @@ -964,9 +964,9 @@ if (PCB_FLAG_TEST(PCB_FLAG_HOLE, pv)) { if (PCB_FLAG_TEST(PCB_FLAG_WARN, pv)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, pv)) - color = PCB->ViaSelectedColor; + color = conf_core.appearance.color.via_selected; else color = conf_core.appearance.color.black; Index: trunk/src/obj_poly.c =================================================================== --- trunk/src/obj_poly.c (revision 8333) +++ trunk/src/obj_poly.c (revision 8334) @@ -718,11 +718,11 @@ return PCB_R_DIR_NOT_FOUND; if (PCB_FLAG_TEST(PCB_FLAG_WARN, polygon)) - color = PCB->WarnColor; + color = conf_core.appearance.color.warn; else if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, polygon)) color = i->layer->SelectedColor; else if (PCB_FLAG_TEST(PCB_FLAG_FOUND, polygon)) - color = PCB->ConnectedColor; + color = conf_core.appearance.color.connected; else if (PCB_FLAG_TEST(PCB_FLAG_ONPOINT, polygon)) { assert(color != NULL); pcb_lighten_color(color, buf, 1.75); Index: trunk/src/obj_rat.c =================================================================== --- trunk/src/obj_rat.c (revision 8333) +++ trunk/src/obj_rat.c (revision 8334) @@ -226,12 +226,12 @@ if (PCB_FLAG_TEST(PCB_FLAG_SELECTED | PCB_FLAG_FOUND, rat)) { if (PCB_FLAG_TEST(PCB_FLAG_SELECTED, rat)) - pcb_gui->set_color(Output.fgGC, PCB->RatSelectedColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.rat_selected); else - pcb_gui->set_color(Output.fgGC, PCB->ConnectedColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.connected); } else - pcb_gui->set_color(Output.fgGC, PCB->RatColor); + pcb_gui->set_color(Output.fgGC, conf_core.appearance.color.rat); if (conf_core.appearance.rat_thickness < 20) rat->Thickness = pcb_pixel_slop * conf_core.appearance.rat_thickness; Index: trunk/src_plugins/draw_fab/draw_fab.c =================================================================== --- trunk/src_plugins/draw_fab/draw_fab.c (revision 8333) +++ trunk/src_plugins/draw_fab/draw_fab.c (revision 8334) @@ -38,6 +38,7 @@ #include "plugins.h" #include "stub_draw.h" #include "draw_fab_conf.h" +#include "conf_core.h" #include "obj_text_draw.h" @@ -199,7 +200,7 @@ plated_sym = --ds; if (drill->UnplatedCount) unplated_sym = --ds; - pcb_gui->set_color(gc, PCB->PinColor); + pcb_gui->set_color(gc, conf_core.appearance.color.pin); for (i = 0; i < drill->PinN; i++) drill_sym(gc, PCB_FLAG_TEST(PCB_FLAG_HOLE, drill->Pin[i]) ? unplated_sym : plated_sym, drill->Pin[i]->X, drill->Pin[i]->Y); if (plated_sym != -1) { @@ -215,7 +216,7 @@ text_at(gc, PCB_MIL_TO_COORD(1400), yoff, PCB_MIL_TO_COORD(2), "NO"); text_at(gc, PCB_MIL_TO_COORD(980), yoff, PCB_MIL_TO_COORD(2), "%d", drill->UnplatedCount); } - pcb_gui->set_color(gc, PCB->ElementColor); + pcb_gui->set_color(gc, conf_core.appearance.color.element); text_at(gc, PCB_MIL_TO_COORD(450), yoff, PCB_MIL_TO_COORD(2), "%0.3f", PCB_COORD_TO_INCH(drill->DrillSize) + 0.0004); if (plated_sym != -1 && unplated_sym != -1) text_at(gc, PCB_MIL_TO_COORD(450), yoff + TEXT_LINE, PCB_MIL_TO_COORD(2), "%0.3f", PCB_COORD_TO_INCH(drill->DrillSize) + 0.0004); @@ -224,7 +225,7 @@ total_drills += drill->ViaCount; } - pcb_gui->set_color(gc, PCB->ElementColor); + pcb_gui->set_color(gc, conf_core.appearance.color.element); text_at(gc, 0, yoff, PCB_MIL_TO_COORD(9), "Symbol"); text_at(gc, PCB_MIL_TO_COORD(410), yoff, PCB_MIL_TO_COORD(9), "Diam. (Inch)"); text_at(gc, PCB_MIL_TO_COORD(950), yoff, PCB_MIL_TO_COORD(9), "Count"); Index: trunk/src_plugins/hid_lesstif/menu.c =================================================================== --- trunk/src_plugins/hid_lesstif/menu.c (revision 8333) +++ trunk/src_plugins/hid_lesstif/menu.c (revision 8334) @@ -92,12 +92,12 @@ pcb_data_t *d = PCB->Data; for (i = 0; i < PCB_MAX_LAYER; i++) fg_colors[i] = lesstif_parse_color(d->Layer[i].Color); - fg_colors[LB_SILK] = lesstif_parse_color(PCB->ElementColor); - fg_colors[LB_RATS] = lesstif_parse_color(PCB->RatColor); - fg_colors[LB_PINS] = lesstif_parse_color(PCB->PinColor); - fg_colors[LB_VIAS] = lesstif_parse_color(PCB->ViaColor); - fg_colors[LB_BACK] = lesstif_parse_color(PCB->InvisibleObjectsColor); - fg_colors[LB_MASK] = lesstif_parse_color(PCB->MaskColor); + fg_colors[LB_SILK] = lesstif_parse_color(conf_core.appearance.color.element); + fg_colors[LB_RATS] = lesstif_parse_color(conf_core.appearance.color.rat); + fg_colors[LB_PINS] = lesstif_parse_color(conf_core.appearance.color.pin); + fg_colors[LB_VIAS] = lesstif_parse_color(conf_core.appearance.color.via); + fg_colors[LB_BACK] = lesstif_parse_color(conf_core.appearance.color.invisible_objects); + fg_colors[LB_MASK] = lesstif_parse_color(conf_core.appearance.color.mask); bg_color = lesstif_parse_color(conf_core.appearance.color.background); } else { Index: trunk/src_plugins/jostle/jostle.c =================================================================== --- trunk/src_plugins/jostle/jostle.c (revision 8333) +++ trunk/src_plugins/jostle/jostle.c (revision 8334) @@ -103,7 +103,7 @@ y[i++] = v->point[1]; } if (1) { - pcb_gui->set_color(ddgc, color ? color : PCB->ConnectedColor); + pcb_gui->set_color(ddgc, color ? color : conf_core.appearance.color.connected); pcb_gui->set_line_width(ddgc, 1); for (i = 0; i < n - 1; i++) { pcb_gui->draw_line(ddgc, x[i], y[i], x[i + 1], y[i + 1]);