Mercurial > hg > xemacs-beta
comparison src/gui.h @ 272:c5d627a313b1 r21-0b34
Import from CVS: tag r21-0b34
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:28:48 +0200 |
parents | b2472a1930f2 |
children | 57709be46d1b |
comparison
equal
deleted
inserted
replaced
271:c7b7086b0a39 | 272:c5d627a313b1 |
---|---|
54 * gui_item is a struct containing a bunch of Lisp_Object | 54 * gui_item is a struct containing a bunch of Lisp_Object |
55 * members. We need to GC-protect all the member slots. | 55 * members. We need to GC-protect all the member slots. |
56 * Rather than build a long chain of individual gcpro structs | 56 * Rather than build a long chain of individual gcpro structs |
57 * that protect the slots individually, we protect all the | 57 * that protect the slots individually, we protect all the |
58 * member slots by pretending the struct is an array. ANSI C | 58 * member slots by pretending the struct is an array. ANSI C |
59 * requires tihs hack to work, ugly though it is. | 59 * requires this hack to work, ugly though it is. |
60 */ | 60 */ |
61 #define GCPRO_GUI_ITEM(pgui_item) \ | 61 #define GCPRO_GUI_ITEM(pgui_item) \ |
62 do { \ | 62 do { \ |
63 Lisp_Object *gui_item_array = (Lisp_Object *) pgui_item; \ | 63 Lisp_Object *gui_item_array = (Lisp_Object *) pgui_item; \ |
64 GCPRO1 (gui_item_array[0]); \ | 64 GCPRO1 (gui_item_array[0]); \ |
65 gcpro1.nvars = GUI_ITEM_GCPRO_COUNT; \ | 65 gcpro1.nvars = GUI_ITEM_GCPRO_COUNT; \ |
66 } while (0); | 66 } while (0); |
67 | 67 |
68 extern Lisp_Object Q_accelerator, Q_active, Q_config, Q_filter, Q_included; | |
69 extern Lisp_Object Q_keys, Q_selected, Q_suffix, Qradio, Qtoggle; | |
70 | |
68 void gui_item_init (struct gui_item *pgui_item); | 71 void gui_item_init (struct gui_item *pgui_item); |
69 void gui_item_add_keyval_pair (struct gui_item *pgui_item, | 72 void gui_item_add_keyval_pair (struct gui_item *pgui_item, |
70 Lisp_Object key, Lisp_Object val); | 73 Lisp_Object key, Lisp_Object val); |
71 void gui_parse_item_keywords (Lisp_Object item, struct gui_item *pgui_item); | 74 void gui_parse_item_keywords (Lisp_Object item, struct gui_item *pgui_item); |
72 int gui_item_active_p (CONST struct gui_item *pgui_item); | 75 int gui_item_active_p (CONST struct gui_item *pgui_item); |
73 int gui_item_included_p (CONST struct gui_item *pgui_item, Lisp_Object into); | 76 int gui_item_included_p (CONST struct gui_item *pgui_item, Lisp_Object into); |
74 unsigned int gui_item_display_flush_left (CONST struct gui_item *pgui_item, | 77 unsigned int gui_item_display_flush_left (CONST struct gui_item *pgui_item, |
75 char* buf, unsigned int buf_len); | 78 char* buf, Bytecount buf_len); |
76 unsigned int gui_item_display_flush_right (CONST struct gui_item *pgui_item, | 79 unsigned int gui_item_display_flush_right (CONST struct gui_item *pgui_item, |
77 char* buf, unsigned int buf_len); | 80 char* buf, Bytecount buf_len); |
78 | 81 |
79 #endif /* HAVE_POPUPS */ | 82 #endif /* HAVE_POPUPS */ |
80 | 83 |
81 #endif /* _XEMACS_GUI_H_ */ | 84 #endif /* _XEMACS_GUI_H_ */ |