summaryrefslogtreecommitdiff
path: root/src/w32gui.h
diff options
context:
space:
mode:
authorJason Rumney <jasonr@gnu.org>2008-06-09 12:36:01 +0000
committerJason Rumney <jasonr@gnu.org>2008-06-09 12:36:01 +0000
commit4d65e18f1d6551256509fbe32c9ade1f045ee67a (patch)
treeb9fadccb8cb4beeb4b6d85fede7cce83755f8d18 /src/w32gui.h
parenta2b7437ba0250bd623897dd5ebbe7f6b15147fd0 (diff)
downloademacs-4d65e18f1d6551256509fbe32c9ade1f045ee67a.tar.gz
(widget_value, XtPointer, Boolean, enum button_type): Define here.
Diffstat (limited to 'src/w32gui.h')
-rw-r--r--src/w32gui.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/w32gui.h b/src/w32gui.h
index e712aa30873..c738f9b8d46 100644
--- a/src/w32gui.h
+++ b/src/w32gui.h
@@ -33,6 +33,66 @@ typedef struct _XCharStruct
short descent;
} XCharStruct;
+/* Emulate widget_value from ../lwlib/lwlib.h, modified for Windows. */
+typedef void * XtPointer;
+typedef char Boolean;
+enum button_type
+{
+ BUTTON_TYPE_NONE,
+ BUTTON_TYPE_TOGGLE,
+ BUTTON_TYPE_RADIO
+};
+typedef struct _widget_value
+{
+ /* name of widget */
+ Lisp_Object lname;
+ char* name;
+ /* value (meaning depend on widget type) */
+ char* value;
+ /* keyboard equivalent. no implications for XtTranslations */
+ Lisp_Object lkey;
+ char* key;
+ /* Help string or nil if none.
+ GC finds this string through the frame's menu_bar_vector
+ or through menu_items. */
+ Lisp_Object help;
+ /* true if enabled */
+ Boolean enabled;
+ /* true if selected */
+ Boolean selected;
+ /* The type of a button. */
+ enum button_type button_type;
+ /* true if menu title */
+ Boolean title;
+#if 0
+ /* true if was edited (maintained by get_value) */
+ Boolean edited;
+ /* true if has changed (maintained by lw library) */
+ change_type change;
+ /* true if this widget itself has changed,
+ but not counting the other widgets found in the `next' field. */
+ change_type this_one_change;
+#endif
+ /* Contents of the sub-widgets, also selected slot for checkbox */
+ struct _widget_value* contents;
+ /* data passed to callback */
+ XtPointer call_data;
+ /* next one in the list */
+ struct _widget_value* next;
+#if 0
+ /* slot for the toolkit dependent part. Always initialize to NULL. */
+ void* toolkit_data;
+ /* tell us if we should free the toolkit data slot when freeing the
+ widget_value itself. */
+ Boolean free_toolkit_data;
+
+ /* we resource the widget_value structures; this points to the next
+ one on the free list if this one has been deallocated.
+ */
+ struct _widget_value *free_list;
+#endif
+} widget_value;
+
enum w32_char_font_type
{
UNKNOWN_FONT = 0 /* FONT_TYPE_UNKNOWN */,