XEmacs 21.2.20 "Yoko".
[chise/xemacs-chise.git.1] / src / gui.h
index 362152e..169abd5 100644 (file)
--- a/src/gui.h
+++ b/src/gui.h
@@ -41,7 +41,6 @@ DECLARE_LRECORD (gui_item, struct Lisp_Gui_Item);
   XRECORD (x, gui_item, struct Lisp_Gui_Item)
 #define XSETGUI_ITEM(x, p) XSETRECORD (x, p, gui_item)
 #define GUI_ITEMP(x) RECORDP (x, gui_item)
-#define GC_GUI_ITEMP(x) GC_RECORDP (x, gui_item)
 #define CHECK_GUI_ITEM(x) CHECK_RECORD (x, gui_item)
 #define CONCHECK_GUI_ITEM(x) CONCHECK_RECORD (x, gui_item)
 
@@ -60,6 +59,7 @@ struct Lisp_Gui_Item
   Lisp_Object style;           /* Symbol */
   Lisp_Object selected;                /* Form */
   Lisp_Object keys;            /* String */
+  Lisp_Object accelerator;     /* Char or Symbol  */
 };
 
 extern Lisp_Object Q_accelerator, Q_active, Q_config, Q_filter, Q_included;
@@ -74,14 +74,17 @@ Lisp_Object gui_parse_item_keywords_no_errors (Lisp_Object item);
 int  gui_item_active_p (Lisp_Object);
 int  gui_item_selected_p (Lisp_Object);
 int  gui_item_included_p (Lisp_Object, Lisp_Object into);
+Lisp_Object gui_item_accelerator (Lisp_Object gui_item);
+Lisp_Object gui_name_accelerator (Lisp_Object name);
 int  gui_item_id_hash (Lisp_Object, Lisp_Object gui_item, int);
 unsigned int gui_item_display_flush_left  (Lisp_Object pgui_item,
                                           char* buf, Bytecount buf_len);
 unsigned int gui_item_display_flush_right (Lisp_Object gui_item,
                                           char* buf, Bytecount buf_len);
 
-Lisp_Object allocate_gui_item ();
+Lisp_Object allocate_gui_item (void);
 void gui_item_init (Lisp_Object gui_item);
+Lisp_Object parse_gui_item_tree_children (Lisp_Object list);
 
 /* this is mswindows biased but reasonably safe I think */
 #define GUI_ITEM_ID_SLOTS 8
@@ -89,4 +92,6 @@ void gui_item_init (Lisp_Object gui_item);
 #define GUI_ITEM_ID_MAX(s) (0x1FFF + GUI_ITEM_ID_MIN (s))
 #define GUI_ITEM_ID_BITS(x,s) (((x) & 0x1FFF) + GUI_ITEM_ID_MIN (s))
 
+#define MAX_MENUITEM_LENGTH 128
+
 #endif /* _XEMACS_GUI_H_ */