changeset 95710:33605d8c9e6d

(widget_value, XtPointer, Boolean, enum button_type): Define here.
author Jason Rumney <jasonr@gnu.org>
date Mon, 09 Jun 2008 12:36:01 +0000
parents 2d395f0b0295
children 1c2b64c79c32
files src/w32gui.h
diffstat 1 files changed, 60 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/w32gui.h	Mon Jun 09 11:54:51 2008 +0000
+++ b/src/w32gui.h	Mon Jun 09 12:36:01 2008 +0000
@@ -33,6 +33,66 @@
   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 */,