summaryrefslogtreecommitdiff
path: root/lwlib/lwlib-int.h
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1994-01-18 23:47:41 +0000
committerRichard M. Stallman <rms@gnu.org>1994-01-18 23:47:41 +0000
commit07bf635fc3142206f15500d33024886c4339e522 (patch)
treeb418c805c1cba62903cc9ea4928ccb3d48463087 /lwlib/lwlib-int.h
parent87cd38d6effdfa2d06a5f6e17f4e2f701595ecdd (diff)
Initial revision
Diffstat (limited to 'lwlib/lwlib-int.h')
-rw-r--r--lwlib/lwlib-int.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/lwlib/lwlib-int.h b/lwlib/lwlib-int.h
new file mode 100644
index 0000000000..0f2c594e7d
--- /dev/null
+++ b/lwlib/lwlib-int.h
@@ -0,0 +1,54 @@
+#ifndef LWLIB_INTERNAL_H
+#define LWLIB_INTERNAL_H
+
+#include "lwlib.h"
+
+/*
+extern char *strdup (const char *);
+extern int strcasecmp (const char *, const char *);
+*/
+
+typedef struct _widget_instance
+{
+ Widget widget;
+ Widget parent;
+ Boolean pop_up_p;
+ struct _widget_info* info;
+ struct _widget_instance* next;
+} widget_instance;
+
+typedef struct _widget_info
+{
+ char* type;
+ char* name;
+ LWLIB_ID id;
+ widget_value* val;
+ Boolean busy;
+ lw_callback pre_activate_cb;
+ lw_callback selection_cb;
+ lw_callback post_activate_cb;
+ struct _widget_instance* instances;
+ struct _widget_info* next;
+} widget_info;
+
+typedef Widget
+(*widget_creation_function) (widget_instance* instance);
+
+typedef struct _widget_creation_entry
+{
+ char* type;
+ widget_creation_function function;
+} widget_creation_entry;
+
+/* update all other instances of a widget. Can be used in a callback when
+ a wiget has been used by the user */
+void
+lw_internal_update_other_instances (Widget widget, XtPointer closure,
+ XtPointer call_data);
+
+/* get the widget_value for a widget in a given instance */
+widget_value*
+lw_get_widget_value_for_widget (widget_instance* instance, Widget w);
+
+#endif /* LWLIB_INTERNAL_H */
+