aboutsummaryrefslogtreecommitdiff
path: root/src/libui_sdl/libui/test/page14.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libui_sdl/libui/test/page14.c')
-rw-r--r--src/libui_sdl/libui/test/page14.c350
1 files changed, 0 insertions, 350 deletions
diff --git a/src/libui_sdl/libui/test/page14.c b/src/libui_sdl/libui/test/page14.c
deleted file mode 100644
index 880534c..0000000
--- a/src/libui_sdl/libui/test/page14.c
+++ /dev/null
@@ -1,350 +0,0 @@
-// 9 june 2016
-#include "test.h"
-
-// TODOs:
-// - GTK+ - make all expanding controls the same size, to match the other OSs? will they match the other OSs?
-
-enum {
- red,
- green,
- blue,
- yellow,
- white,
- magenta,
- orange,
- purple,
- cyan,
-};
-
-static const struct {
- double r;
- double g;
- double b;
-} colors[] = {
- { 1, 0, 0 },
- { 0, 0.5, 0 },
- { 0, 0, 1 },
- { 1, 1, 0 },
- { 1, 1, 1 },
- { 1, 0, 1 },
- { 1, 0.65, 0 },
- { 0.5, 0, 0.5 },
- { 0, 1, 1 },
-};
-
-static uiControl *testControl(const char *label, int color)
-{
- uiColorButton *b;
-
- b = uiNewColorButton();
- uiColorButtonSetColor(b, colors[color].r, colors[color].g, colors[color].b, 1.0);
- return uiControl(b);
-}
-
-static uiControl *simpleGrid(void)
-{
- uiGrid *g;
- uiControl *t4;
-
- g = newGrid();
- uiGridAppend(g, testControl("1", red),
- 0, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("2", green),
- 1, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("3", blue),
- 2, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- t4 = testControl("4", green);
- uiGridAppend(g, t4,
- 0, 1, 1, 1,
- 0, uiAlignFill, 1, uiAlignFill);
- uiGridInsertAt(g, testControl("5", blue),
- t4, uiAtTrailing, 2, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("6", yellow),
- -1, 0, 1, 2,
- 1, uiAlignFill, 0, uiAlignFill);
- return uiControl(g);
-}
-
-static uiControl *boxComparison(void)
-{
- uiBox *vbox;
- uiGrid *g;
- uiBox *hbox;
-
- vbox = newVerticalBox();
- uiBoxAppend(vbox, uiControl(uiNewLabel("Above")), 0);
- uiBoxAppend(vbox, uiControl(uiNewHorizontalSeparator()), 0);
-
- hbox = newHorizontalBox();
- uiBoxAppend(vbox, uiControl(hbox), 0);
- uiBoxAppend(hbox, testControl("1", white), 0);
- uiBoxAppend(hbox, uiControl(uiNewLabel("A label")), 1);
- uiBoxAppend(hbox, testControl("2", green), 0);
- uiBoxAppend(hbox, uiControl(uiNewLabel("Another label")), 1);
- uiBoxAppend(hbox, testControl("3", red), 0);
-
- uiBoxAppend(vbox, uiControl(uiNewHorizontalSeparator()), 0);
-
- g = newGrid();
- uiBoxAppend(vbox, uiControl(g), 0);
- uiGridAppend(g, testControl("1", white),
- 0, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, uiControl(uiNewLabel("A label")),
- 1, 0, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("2", green),
- 2, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, uiControl(uiNewLabel("Another label")),
- 3, 0, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("3", red),
- 4, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
-
- uiBoxAppend(vbox, uiControl(uiNewHorizontalSeparator()), 0);
- uiBoxAppend(vbox, uiControl(uiNewLabel("Below")), 0);
- return uiControl(vbox);
-}
-
-static uiControl *emptyLine(void)
-{
- uiGrid *g;
-
- g = newGrid();
- uiGridAppend(g, testControl("(0, 0)", red),
- 0, 0, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
- uiGridAppend(g, testControl("(0, 1)", blue),
- 0, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("(10, 0)", green),
- 10, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("(10, 1)", magenta),
- 10, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- return uiControl(g);
-}
-
-static uiControl *emptyGrid(void)
-{
- uiGrid *g;
- uiControl *t;
-
- g = newGrid();
- t = testControl("(0, 0)", red);
- uiGridAppend(g, t,
- 0, 0, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
- uiControlHide(t);
- return uiControl(g);
-}
-
-// TODO insert (need specialized insert/delete)
-
-static uiControl *spanningGrid(void)
-{
- uiGrid *g;
-
- g = newGrid();
- uiGridAppend(g, testControl("0", blue),
- 0, 4, 4, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("1", green),
- 4, 0, 1, 4,
- 0, uiAlignFill, 1, uiAlignFill);
- uiGridAppend(g, testControl("2", red),
- 3, 3, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
- uiGridAppend(g, testControl("3", yellow),
- 0, 3, 2, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("4", orange),
- 3, 0, 1, 2,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("5", purple),
- 1, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("6", white),
- 0, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(g, testControl("7", cyan),
- 1, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- return uiControl(g);
-}
-
-// TODO make non-global
-static uiButton *hideOne, *one, *showOne;
-
-static void onHideOne(uiButton *b, void *data)
-{
- uiControlHide(uiControl(one));
-}
-
-static void onShowOne(uiButton *b, void *data)
-{
- uiControlShow(uiControl(one));
-}
-
-static void onHideAll(uiButton *b, void *data)
-{
- uiControlHide(uiControl(hideOne));
- uiControlHide(uiControl(one));
- uiControlHide(uiControl(showOne));
-}
-
-static void onShowAll(uiButton *b, void *data)
-{
- uiControlShow(uiControl(hideOne));
- uiControlShow(uiControl(one));
- uiControlShow(uiControl(showOne));
-}
-
-#define AT(x) static void onInsert ## x(uiButton *b, void *data) \
- { \
- uiGrid *g = uiGrid(data); \
- uiGridInsertAt(g, uiControl(uiNewButton("Button")), \
- uiControl(b), uiAt ## x, 1, 1, \
- 0, uiAlignFill, 0, uiAlignFill); \
- }
-AT(Leading)
-AT(Top)
-AT(Trailing)
-AT(Bottom)
-
-static uiControl *assorted(void)
-{
- uiGrid *outergrid;
- uiGrid *innergrid;
- uiButton *b;
-
- outergrid = newGrid();
-
- innergrid = newGrid();
- one = uiNewButton("Test");
- uiGridAppend(innergrid, uiControl(one),
- 1, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- hideOne = uiNewButton("Hide One");
- uiButtonOnClicked(hideOne, onHideOne, NULL);
- uiGridAppend(innergrid, uiControl(hideOne),
- 0, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- showOne = uiNewButton("Show One");
- uiButtonOnClicked(showOne, onShowOne, NULL);
- uiGridAppend(innergrid, uiControl(showOne),
- 2, 1, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- b = uiNewButton("Hide All");
- uiButtonOnClicked(b, onHideAll, NULL);
- uiGridAppend(innergrid, uiControl(b),
- 1, 0, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- b = uiNewButton("Show All");
- uiButtonOnClicked(b, onShowAll, NULL);
- uiGridAppend(innergrid, uiControl(b),
- 1, 2, 1, 1,
- 0, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(outergrid, uiControl(innergrid),
- 0, 0, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
-
- innergrid = newGrid();
- b = uiNewButton("Insert Trailing");
- uiButtonOnClicked(b, onInsertTrailing, innergrid);
- uiGridAppend(innergrid, uiControl(b),
- 0, 0, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- b = uiNewButton("Insert Bottom");
- uiButtonOnClicked(b, onInsertBottom, innergrid);
- uiGridAppend(innergrid, uiControl(b),
- 1, 0, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- b = uiNewButton("Insert Leading");
- uiButtonOnClicked(b, onInsertLeading, innergrid);
- uiGridAppend(innergrid, uiControl(b),
- 1, 1, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- b = uiNewButton("Insert Top");
- uiButtonOnClicked(b, onInsertTop, innergrid);
- uiGridAppend(innergrid, uiControl(b),
- 0, 1, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(outergrid, uiControl(innergrid),
- 1, 0, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
-
- innergrid = newGrid();
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 0, 0, 1, 1,
- 1, uiAlignFill, 0, uiAlignFill);
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 0, 1, 1, 1,
- 1, uiAlignStart, 0, uiAlignFill);
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 0, 2, 1, 1,
- 1, uiAlignCenter, 0, uiAlignFill);
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 0, 3, 1, 1,
- 1, uiAlignEnd, 0, uiAlignFill);
- uiGridAppend(outergrid, uiControl(innergrid),
- 0, 1, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
-
- // TODO with only this, wrong size on OS X — expand sizing thing?
- innergrid = newGrid();
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 0, 0, 1, 1,
- 0, uiAlignFill, 1, uiAlignFill);
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 1, 0, 1, 1,
- 0, uiAlignFill, 1, uiAlignStart);
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 2, 0, 1, 1,
- 0, uiAlignFill, 1, uiAlignCenter);
- uiGridAppend(innergrid, uiControl(uiNewColorButton()),
- 3, 0, 1, 1,
- 0, uiAlignFill, 1, uiAlignEnd);
- uiGridAppend(outergrid, uiControl(innergrid),
- 1, 1, 1, 1,
- 1, uiAlignFill, 1, uiAlignFill);
-
- return uiControl(outergrid);
-}
-
-static const struct {
- const char *name;
- uiControl *(*f)(void);
-} pages[] = {
- // based on GTK+ test/testgrid.c
- { "Simple Grid", simpleGrid },
- { "Box Comparison", boxComparison },
- { "Empty Line", emptyLine },
- { "Empty Grid", emptyGrid },
- { "Spanning Grid", spanningGrid },
- // my own
- { "Assorted", assorted },
- { NULL, NULL },
-};
-
-uiTab *makePage14(void)
-{
- uiTab *page14;
- int i;
-
- page14 = newTab();
-
- for (i = 0; pages[i].name != NULL; i++)
- uiTabAppend(page14,
- pages[i].name,
- (*(pages[i].f))());
-
- return page14;
-}