summaryrefslogtreecommitdiff
path: root/new/unix/button.c
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2015-04-16 20:33:28 -0400
committerPietro Gagliardi <[email protected]>2015-04-16 20:33:28 -0400
commite34c561ed5bedeb180437ec165882b98d70d38c1 (patch)
treed095e5db16d7a23e883526c8c1d3c524639c97cf /new/unix/button.c
parentde9d72299fb89a8b6cdc8963cd6b6ae708a81e80 (diff)
Split the rewrite into a new repository.
Diffstat (limited to 'new/unix/button.c')
-rw-r--r--new/unix/button.c71
1 files changed, 0 insertions, 71 deletions
diff --git a/new/unix/button.c b/new/unix/button.c
deleted file mode 100644
index 404d7a8..0000000
--- a/new/unix/button.c
+++ /dev/null
@@ -1,71 +0,0 @@
-// 7 april 2015
-#include "uipriv_unix.h"
-
-struct button {
- uiButton b;
- void (*onClicked)(uiButton *, void *);
- void *onClickedData;
-};
-
-static void clicked(GtkButton *button, gpointer data)
-{
- struct button *b = (struct button *) data;
-
- (*(b->onClicked))(uiButton(b), b->onClickedData);
-}
-
-static void defaultOnClicked(uiButton *b, void *data)
-{
- // do nothing
-}
-
-static void destroy(GtkWidget *widget, gpointer data)
-{
- struct button *b = (struct button *) data;
-
- uiFree(b);
-}
-
-#define BUTTON(b) GTK_BUTTON(widget(b))
-
-static char *buttonText(uiButton *bb)
-{
- return g_strdup(gtk_button_get_label(BUTTON(bb)));
-}
-
-static void buttonSetText(uiButton *bb, const char *text)
-{
- gtk_button_set_label(BUTTON(bb), text);
-}
-
-static void buttonOnClicked(uiButton *bb, void (*f)(uiButton *, void *), void *data)
-{
- struct button *b = (struct button *) bb;
-
- b->onClicked = f;
- b->onClickedData = data;
-}
-
-uiButton *uiNewButton(const char *text)
-{
- struct button *b;
- GtkWidget *widget;
-
- b = uiNew(struct button);
-
- uiUnixNewControl(uiControl(b), GTK_TYPE_BUTTON,
- FALSE, FALSE,
- "label", text,
- NULL);
-
- widget = WIDGET(b);
- g_signal_connect(widget, "clicked", G_CALLBACK(clicked), b);
- g_signal_connect(widget, "destroy", G_CALLBACK(destroy), b);
- b->onClicked = defaultOnClicked;
-
- uiButton(b)->Text = buttonText;
- uiButton(b)->SetText = buttonSetText;
- uiButton(b)->OnClicked = buttonOnClicked;
-
- return uiButton(b);
-}