summaryrefslogtreecommitdiff
path: root/new/ui_unix.h
diff options
context:
space:
mode:
Diffstat (limited to 'new/ui_unix.h')
-rw-r--r--new/ui_unix.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/new/ui_unix.h b/new/ui_unix.h
new file mode 100644
index 0000000..19e8180
--- /dev/null
+++ b/new/ui_unix.h
@@ -0,0 +1,17 @@
+// 7 april 2015
+
+/*
+This file assumes that you have included <gtk/gtk.h> and "ui.h" beforehand. It provides API-specific functions for interfacing with foreign controls on Unix systems that use GTK+ to provide their UI (currently all except Mac OS X).
+*/
+
+#ifndef __UI_UI_UNIX_H__
+#define __UI_UI_UNIX_H__
+
+// uiUnixNewControl() creates a new uiControl with the given GTK+ control inside.
+// The first three parameters are used for creating the control itself and are the same as passed to g_object_newv().
+// The three scrolledWindow parameters allow placing scrollbars on the new control.
+// The data parameter can be accessed with uiUnixControlData().
+extern uiControl *uiUnixNewControl(GType type, guint nConstructParams, GParameter *constructParams, gboolean inScrolledWindow, gboolean needsViewport, gboolean scrolledWindowHasBorder, void *data);
+extern void *uiUnixControlData(uiControl *c);
+
+#endif