Index: work/gtk/layersel/layersel.c =================================================================== --- work/gtk/layersel/layersel.c (revision 8480) +++ work/gtk/layersel/layersel.c (revision 8481) @@ -1,7 +1,52 @@ #include "layersel.h" #include "lib_gtk_common/compat.h" +static GtkWidget *add_grp(const char *gname) +{ + GtkWidget *grp_row, *grp_closed, *grp_open, *gn_vert, *layer[4], *grp_layers; + int n; + char tmp[32]; + +/* Layout: + +--------------------------+<- grp_row + | grp_closed | + +--------------------------+ + |+-----------------------+<--- grp_open + || gn | layer1 | | + || _v | layer2 | | + || er | layer3 | | + || t | layer4 | | + |+-----------------------+ | + +--------------------------+ +*/ + grp_row = gtkc_vbox_new(0, 0); + grp_closed = gtkc_hbox_new(0, 0); + grp_open = gtkc_hbox_new(0, 0); + gtk_box_pack_start(GTK_BOX(grp_row), grp_closed, TRUE, TRUE, 0); + gtk_box_pack_start(GTK_BOX(grp_row), grp_open, TRUE, TRUE, 0); + + gn_vert = gtkc_vbox_new(0, 0); + grp_layers = gtkc_vbox_new(0, 0); + gtk_box_pack_start(GTK_BOX(grp_open), gn_vert, TRUE, TRUE, 0); + gtk_box_pack_start(GTK_BOX(grp_open), grp_layers, TRUE, TRUE, 0); + + gtk_box_pack_start(GTK_BOX(gn_vert), gtk_label_new(gname), TRUE, TRUE, 0); + gtk_box_pack_start(GTK_BOX(grp_open), gtk_label_new(gname), TRUE, TRUE, 0); + + for(n = 0; n < 4; n++) { + layer[n] = gtkc_hbox_new(0, 0); + gtk_box_pack_start(GTK_BOX(grp_layers), layer[n], TRUE, TRUE, 0); + + sprintf(tmp, "layer %d\n", n); + gtk_box_pack_start(GTK_BOX(layer[n]), gtk_label_new("[vis]"), TRUE, TRUE, 0); + gtk_box_pack_start(GTK_BOX(layer[n]), gtk_label_new(tmp), TRUE, TRUE, 0); + } + + return grp_row; +} + + GtkWidget *pcb_gtk_layersel_build(void) { - + return NULL; }