Index: trunk/doc/conf/tree/editor.html
===================================================================
--- trunk/doc/conf/tree/editor.html (revision 8605)
+++ trunk/doc/conf/tree/editor.html (revision 8606)
@@ -37,7 +37,6 @@
name_on_pcb | boolean | 0 | display Reference Designator as element name, instead of value
Index: trunk/src/conf_core.h
===================================================================
--- trunk/src/conf_core.h (revision 8605)
+++ trunk/src/conf_core.h (revision 8606)
@@ -50,7 +50,6 @@
CFT_BOOLEAN thin_draw_poly; /* if set, polygons on the screen are drawn as outlines. */
CFT_BOOLEAN local_ref; /* use local reference for moves, by setting the mark at the beginning of each move. */
CFT_BOOLEAN check_planes; /* when set, only polygons and their clearances are drawn, to see if polygons have isolated regions. */
- CFT_BOOLEAN show_paste; /* show the solder paste layer */
CFT_BOOLEAN hide_names; /* when set, element names are not drawn. */
CFT_BOOLEAN description; /* display element description as element name, instead of value */
CFT_BOOLEAN name_on_pcb; /* display Reference Designator as element name, instead of value */
Index: trunk/src/gui_act.c
===================================================================
--- trunk/src/gui_act.c (revision 8605)
+++ trunk/src/gui_act.c (revision 8606)
@@ -58,8 +58,8 @@
static const char pcb_acts_Display[] =
"Display(NameOnPCB|Description|Value|Grid|Redraw|Pinout|PinOrPadName)\n"
"Display(CycleClip|CycleCrosshair|ToggleAllDirections|ToggleStartDirection)\n"
- "Display(ToggleGrid|ToggleRubberBandMode|ToggleUniqueNames|ToggleMask)\n"
- "Display(TogglePaste|ToggleName|ToggleClearLine|ToggleFullPoly|ToggleSnapPin)\n"
+ "Display(ToggleGrid|ToggleRubberBandMode|ToggleUniqueNames)\n"
+ "Display(ToggleName|ToggleClearLine|ToggleFullPoly|ToggleSnapPin)\n"
"Display(ToggleSnapOffGridLine|ToggleHighlightOnPoint|ToggleCheckPlanes)\n"
"Display(ToggleThindraw|ToggleThindrawPoly|ToggleOrthoMove|ToggleLocalRef)\n"
"Display(ToggleLiveRoute|ToggleShowDRC|ToggleAutoDRC|LockNames|OnlyNames)";
@@ -161,12 +161,6 @@
work on objects under the mouse. You can still select other objects
with a lasso (left mouse drag) and perform actions on the selection.
-@item ToggleMask
-Turns the solder mask on or off.
-
-@item TogglePaste
-Turns the solder paste on or off.
-
@item ToggleClearLine
When set, the clear-line flag causes new lines and arcs to have their
``clear polygons'' flag set, so they won't be electrically connected
@@ -408,11 +402,6 @@
pcb_redraw();
break;
- case F_TogglePaste:
- conf_toggle_editor(show_paste);
- pcb_redraw();
- break;
-
case F_ToggleClearLine:
conf_toggle_editor(clear_line);
break;
Index: trunk/src/layer_grp.c
===================================================================
--- trunk/src/layer_grp.c (revision 8605)
+++ trunk/src/layer_grp.c (revision 8606)
@@ -675,3 +675,16 @@
return 0;
}
+
+int pcb_paste_on(pcb_board_t *pcb)
+{
+ static pcb_layer_id_t tp = -1, bp = -1;
+ pcb_layergrp_get_cached(pcb, &tp, PCB_LYT_TOP, PCB_LYT_PASTE);
+ if ((tp >= 0) && (pcb->LayerGroups.grp[tp].vis))
+ return 1;
+ pcb_layergrp_get_cached(pcb, &bp, PCB_LYT_BOTTOM, PCB_LYT_PASTE);
+ if ((bp >= 0) && (pcb->LayerGroups.grp[bp].vis))
+ return 1;
+ return 0;
+}
+
Index: trunk/src/layer_grp.h
===================================================================
--- trunk/src/layer_grp.h (revision 8605)
+++ trunk/src/layer_grp.h (revision 8606)
@@ -155,7 +155,8 @@
pcb_layergrp_id_t pcb_layergrp_get_bottom_silk();
pcb_layergrp_id_t pcb_layergrp_get_top_silk();
-/* return whether any silk or mask layer group is visible */
+/* return whether any silk or mask or paste layer group is visible */
int pcb_silk_on(pcb_board_t *pcb);
int pcb_mask_on(pcb_board_t *pcb);
+int pcb_paste_on(pcb_board_t *pcb);
#endif
Index: trunk/src/layer_vis.c
===================================================================
--- trunk/src/layer_vis.c (revision 8605)
+++ trunk/src/layer_vis.c (revision 8606)
@@ -78,7 +78,6 @@
*/
int pcb_layervis_change_group_vis(pcb_layer_id_t Layer, pcb_bool On, pcb_bool ChangeStackOrder)
{
- unsigned long flg;
pcb_layergrp_id_t group;
int i, changed = 1; /* at least the current layer changes */
@@ -91,18 +90,9 @@
goto done;
}
- /* Warning: these special case values must agree with what gui-top-window.c
- | thinks the are.
- */
-
if (conf_core.rc.verbose)
printf("pcb_layervis_change_group_vis(Layer=%d, On=%d, ChangeStackOrder=%d)\n", Layer, On, ChangeStackOrder);
- /* special case: some layer groups are controlled by a config setting */
- flg = pcb_layer_flags(PCB, Layer);
- if (flg & PCB_LYT_PASTE)
- conf_set_editor(show_paste, On);
-
/* decrement 'i' to keep stack in order of layergroup */
if ((group = pcb_layer_get_group(PCB, Layer)) >= 0) {
for (i = PCB->LayerGroups.grp[group].len; i;) {
Index: trunk/src_plugins/hid_gtk2_gdk/gtkhid-gdk.c
===================================================================
--- trunk/src_plugins/hid_gtk2_gdk/gtkhid-gdk.c (revision 8605)
+++ trunk/src_plugins/hid_gtk2_gdk/gtkhid-gdk.c (revision 8606)
@@ -111,7 +111,7 @@
return 0;
case PCB_LYT_PASTE: /* Never draw the paste layer */
if (PCB_LAYERFLG_ON_VISIBLE_SIDE(flags))
- return conf_core.editor.show_paste;
+ return pcb_paste_on(PCB);
}
if (idx >= 0 && idx < pcb_max_layer && ((flags & PCB_LYT_ANYTHING) != PCB_LYT_SILK))
Index: trunk/src_plugins/hid_gtk2_gl/gtkhid-gl.c
===================================================================
--- trunk/src_plugins/hid_gtk2_gl/gtkhid-gl.c (revision 8605)
+++ trunk/src_plugins/hid_gtk2_gl/gtkhid-gl.c (revision 8606)
@@ -169,7 +169,7 @@
return 0;
case PCB_LYT_PASTE:
if (PCB_LAYERFLG_ON_VISIBLE_SIDE(flags))
- return conf_core.editor.show_paste;
+ return pcb_paste_on(PCB);
return 0;
}
Index: trunk/src_plugins/hid_lesstif/main.c
===================================================================
--- trunk/src_plugins/hid_lesstif/main.c (revision 8605)
+++ trunk/src_plugins/hid_lesstif/main.c (revision 8606)
@@ -2762,7 +2762,7 @@
return 0;
case PCB_LYT_PASTE:
if (PCB_LAYERFLG_ON_VISIBLE_SIDE(flags) && !pinout)
- return conf_core.editor.show_paste;
+ return pcb_paste_on(PCB);
}
/* normal layers */
Index: trunk/src_plugins/hid_lesstif/menu.c
===================================================================
--- trunk/src_plugins/hid_lesstif/menu.c (revision 8605)
+++ trunk/src_plugins/hid_lesstif/menu.c (revision 8606)
@@ -143,7 +143,7 @@
set = pcb_mask_on(PCB);
break;
case LB_PASTE:
- set = conf_core.editor.show_paste;
+ set = pcb_paste_on(PCB);
break;
default: /* layers */
set = PCB->Data->Layer[i].On;
@@ -252,8 +252,9 @@
set = pcb_mask_on(PCB);
break;
case LB_PASTE:
- conf_toggle_editor(show_paste);
- set = conf_core.editor.show_paste;
+#warning layersel TODO
+/* conf_toggle_editor(show_paste);*/
+ set = pcb_paste_on(PCB);
break;
default: /* layers */
set = PCB->Data->Layer[layer].On = !PCB->Data->Layer[layer].On;
@@ -441,8 +442,10 @@
#warning layersel TODO
/* note_widget_flag(btn, XmNset, "editor/show_mask");*/
}
- else if (i == LB_PASTE)
- note_widget_flag(btn, XmNset, "editor/show_paste");
+ else if (i == LB_PASTE) {
+#warning layersel TODO
+/* note_widget_flag(btn, XmNset, "editor/show_paste");*/
+ }
}
lb->is_pick = 0;
LesstifLayersChanged(0, 0, 0);
|