From fbc949b73cef0ffe713fc25eb74d270404ac60d4 Mon Sep 17 00:00:00 2001 From: Bradley Smith Date: Fri, 16 May 2008 21:19:51 +0100 Subject: Add initial empty window, remove commited binary. Signed-off-by: Bradley Smith --- .gitignore | 1 + ChangeLog | 2 ++ ui/Makefile.am | 5 ++--- ui/main.c | 14 +++++++++++++- ui/ui-window-private.h | 15 +++++++++++++++ ui/ui-window.c | 38 ++++++++++++++++++++++++++++++++++++++ ui/ui-window.h | 42 ++++++++++++++++++++++++++++++++++++++++++ ui/uitest | Bin 7633 -> 0 bytes 8 files changed, 113 insertions(+), 4 deletions(-) create mode 100644 ui/ui-window-private.h create mode 100644 ui/ui-window.c create mode 100644 ui/ui-window.h delete mode 100755 ui/uitest diff --git a/.gitignore b/.gitignore index a431239..5555ac0 100644 --- a/.gitignore +++ b/.gitignore @@ -16,5 +16,6 @@ config.status configure libtool src/gnurobots +ui/uitest stamp-h1 *~ diff --git a/ChangeLog b/ChangeLog index 152b6a4..9357d4b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,8 @@ * configure.ac Makefile.am ui/*: Add temporary uitest build. + * ui/ui-window.c ui/ui-window.h ui/ui-window-private.h: + Add initial empty window structure. 2008-05-14 Bradley Smith diff --git a/ui/Makefile.am b/ui/Makefile.am index fd75fcb..dfb1931 100644 --- a/ui/Makefile.am +++ b/ui/Makefile.am @@ -18,8 +18,7 @@ bin_PROGRAMS = uitest -INCLUDES = $(GTK_CFLAGS) \ - -I$(top_builddir)/ui/include +INCLUDES = $(GTK_CFLAGS) -I$(top_builddir)/ui/ -uitest_SOURCES = main.c +uitest_SOURCES = main.c ui-window.c uitest_LDFLAGS = $(GTK_LIBS) diff --git a/ui/main.c b/ui/main.c index 2346eb4..ce21b3b 100644 --- a/ui/main.c +++ b/ui/main.c @@ -1,6 +1,18 @@ -#include +/* Copyright */ + +#include + +#include "ui-window.h" int main(int argc, char* argv[]) { + GtkWidget* window; + + gtk_init(&argc, &argv); + + window = ui_window_new(); + + gtk_main(); + return 0; } diff --git a/ui/ui-window-private.h b/ui/ui-window-private.h new file mode 100644 index 0000000..4912c95 --- /dev/null +++ b/ui/ui-window-private.h @@ -0,0 +1,15 @@ +/* Copyright */ + +#ifndef __UI_WINDOW_PRIVATE_H__ +#define __UI_WINDOW_PRIVATE_H__ + +G_BEGIN_DECLS + +struct _UIWindowPrivate +{ + int dummy; +}; + +G_END_DECLS + +#endif /* __UI_WINDOW_PRIVATE_H__ */ diff --git a/ui/ui-window.c b/ui/ui-window.c new file mode 100644 index 0000000..a6abc1b --- /dev/null +++ b/ui/ui-window.c @@ -0,0 +1,38 @@ +/* Copyright */ + +#include "ui-window.h" +#include "ui-window-private.h" + +#include + +#define UI_WINDOW_GET_PRIVATE(obj) \ + G_TYPE_INSTANCE_GET_PRIVATE(obj, UI_TYPE_WINDOW, UIWindowPrivate) + +G_DEFINE_TYPE(UIWindow, ui_window, GTK_TYPE_WINDOW) + +static void on_ui_window_destroy(GtkWidget *widget, gpointer data); + +GtkWidget *ui_window_new(void) +{ + return GTK_WIDGET(g_object_new(UI_TYPE_WINDOW, NULL)); +} + +static void on_ui_window_destroy(GtkWidget *widget, gpointer data) +{ + gtk_widget_hide(widget); + gtk_main_quit(); +} + +static void ui_window_init(UIWindow* window) +{ + g_signal_connect(G_OBJECT(window), "destroy", + G_CALLBACK(on_ui_window_destroy), NULL); + + gtk_window_set_title(GTK_WINDOW(window), "UI Test"); + gtk_widget_show(GTK_WIDGET(window)); +} + +static void ui_window_class_init(UIWindowClass* klass) +{ + g_type_class_add_private(G_OBJECT_CLASS(klass), sizeof(UIWindowPrivate)); +} diff --git a/ui/ui-window.h b/ui/ui-window.h new file mode 100644 index 0000000..008929c --- /dev/null +++ b/ui/ui-window.h @@ -0,0 +1,42 @@ +/* Copyright */ + +#ifndef __UI_WINDOW_H__ +#define __UI_WINDOW_H__ + +#include + +G_BEGIN_DECLS + +#define UI_TYPE_WINDOW \ + ui_window_get_type() +#define UI_WINDOW(obj) \ + G_TYPE_CHECK_INSTANCE_CAST(obj, UI_TYPE_WINDOW, UIWindow) +#define UI_WINDOW_CLASS(klass) \ + G_TYPE_CHECK_CLASS_CAST(klass, UI_WINDOW_TYPE, UIWindowClass) +#define IS_UI_WINDOW(obj) \ + G_TYPE_CHECK_INSTANCE_TYPE(obj, UI_TYPE_WINDOW) +#define IS_UI_WINDOW_CLASS(klass) \ + G_TYPE_CHECK_CLASS_TYPE(klass, UI_TYPE_WINDOW) + +typedef struct _UIWindow UIWindow; +typedef struct _UIWindowClass UIWindowClass; +typedef struct _UIWindowPrivate UIWindowPrivate; + +struct _UIWindow +{ + GtkWindow widget; + UIWindowPrivate* priv; +}; + +struct _UIWindowClass +{ + GtkWindowClass parent_class; +}; + +GType ui_window_get_type(void) G_GNUC_CONST; + +GtkWidget *ui_window_new(void); + +G_END_DECLS + +#endif /* __UI_WINDOW_H__ */ diff --git a/ui/uitest b/ui/uitest deleted file mode 100755 index dce4636..0000000 Binary files a/ui/uitest and /dev/null differ -- cgit v1.1