summaryrefslogtreecommitdiff
path: root/new/test.c
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2015-04-13 13:43:29 -0400
committerPietro Gagliardi <[email protected]>2015-04-13 13:43:29 -0400
commit0304df4d4e607cc53a8302e2da0a51131cd6bcbd (patch)
treecd3ce360e3b0e3df47dfc7cb1c3f283821dbb5c5 /new/test.c
parent963feb6c0668b3c64242607fe71f458420a91f32 (diff)
Added uiStackRemove(), the first removal function in package ui! That took long enough... Now I can piece together all the control and parent logic...
Diffstat (limited to 'new/test.c')
-rw-r--r--new/test.c36
1 files changed, 35 insertions, 1 deletions
diff --git a/new/test.c b/new/test.c
index 5acfdc4..978cb55 100644
--- a/new/test.c
+++ b/new/test.c
@@ -67,7 +67,7 @@ static void setCheckboxText(uiControl *b, void *data)
}
uiWindow *w;
-#define nStacks 9
+#define nStacks 11
uiControl *stacks[nStacks];
uiControl *spaced;
@@ -148,6 +148,22 @@ static void setLabelText(uiControl *b, void *data)
uiFreeText(text);
}
+uiControl *firstStack;
+uiControl *secondStack;
+uiControl *movingLabel;
+
+static void moveToFirst(uiControl *c, void *data)
+{
+ uiStackRemove(secondStack, 1);
+ uiStackAdd(firstStack, movingLabel, 1);
+}
+
+static void moveToSecond(uiControl *c, void *data)
+{
+ uiStackRemove(firstStack, 1);
+ uiStackAdd(secondStack, movingLabel, 1);
+}
+
int main(int argc, char *argv[])
{
uiInitOptions o;
@@ -289,6 +305,24 @@ int main(int argc, char *argv[])
uiTabAddPage(tab, "Page 2", stacks[i]);
i++;
+ stacks[i] = uiNewHorizontalStack();
+ firstStack = stacks[i];
+ getButton = uiNewButton("Move Here");
+ uiButtonOnClicked(getButton, moveToFirst, NULL);
+ uiStackAdd(stacks[i], getButton, 0);
+ movingLabel = uiNewLabel("This label moves!");
+ uiStackAdd(stacks[i], movingLabel, 1);
+ uiStackAdd(stacks[page2stack], stacks[i], 0);;
+ i++;
+
+ stacks[i] = uiNewHorizontalStack();
+ secondStack = stacks[i];
+ getButton = uiNewButton("Move Here");
+ uiButtonOnClicked(getButton, moveToSecond, NULL);
+ uiStackAdd(stacks[i], getButton, 0);
+ uiStackAdd(stacks[page2stack], stacks[i], 0);
+ i++;
+
if (i != nStacks) {
fprintf(stderr, "forgot to update nStacks (expected %d)\n", i);
return 1;