Mercurial > hg > xemacs-beta
comparison src/console-x-impl.h @ 3092:141c2920ea48
[xemacs-hg @ 2005-11-25 01:41:31 by crestani]
Incremental Garbage Collector
author | crestani |
---|---|
date | Fri, 25 Nov 2005 01:42:08 +0000 |
parents | ecf1ebac70d8 |
children | ad2f4ae9895b |
comparison
equal
deleted
inserted
replaced
3091:c22d8984148c | 3092:141c2920ea48 |
---|---|
40 | 40 |
41 DECLARE_CONSOLE_TYPE (x); | 41 DECLARE_CONSOLE_TYPE (x); |
42 | 42 |
43 struct x_device | 43 struct x_device |
44 { | 44 { |
45 #ifdef NEW_GC | |
46 struct lrecord_header header; | |
47 #endif /* NEW_GC */ | |
45 /* The X connection of this device. */ | 48 /* The X connection of this device. */ |
46 Display *display; | 49 Display *display; |
47 | 50 |
48 /* Set by x_IO_error_handler(). */ | 51 /* Set by x_IO_error_handler(). */ |
49 int being_deleted; | 52 int being_deleted; |
156 unsigned int need_to_add_mask, down_mask; | 159 unsigned int need_to_add_mask, down_mask; |
157 KeyCode last_downkey; | 160 KeyCode last_downkey; |
158 Time release_time; | 161 Time release_time; |
159 Time modifier_release_time; | 162 Time modifier_release_time; |
160 }; | 163 }; |
164 | |
165 #ifdef NEW_GC | |
166 typedef struct x_device Lisp_X_Device; | |
167 | |
168 DECLARE_LRECORD (x_device, Lisp_X_Device); | |
169 | |
170 #define XX_DEVICE(x) \ | |
171 XRECORD (x, x_device, Lisp_X_Device) | |
172 #define wrap_x_device(p) wrap_record (p, x_device) | |
173 #define X_DEVICE_P(x) RECORDP (x, x_device) | |
174 #endif /* NEW_GC */ | |
161 | 175 |
162 #define DEVICE_X_DATA(d) DEVICE_TYPE_DATA (d, x) | 176 #define DEVICE_X_DATA(d) DEVICE_TYPE_DATA (d, x) |
163 | 177 |
164 #define FRAME_X_DISPLAY(f) (DEVICE_X_DISPLAY (XDEVICE (f->device))) | 178 #define FRAME_X_DISPLAY(f) (DEVICE_X_DISPLAY (XDEVICE (f->device))) |
165 #define DEVICE_X_DISPLAY(d) (DEVICE_X_DATA (d)->display) | 179 #define DEVICE_X_DISPLAY(d) (DEVICE_X_DATA (d)->display) |
223 displayed (menubar, psheet, debugger panel). */ | 237 displayed (menubar, psheet, debugger panel). */ |
224 #define MAX_CONCURRENT_TOP_WIDGETS 8 | 238 #define MAX_CONCURRENT_TOP_WIDGETS 8 |
225 | 239 |
226 struct x_frame | 240 struct x_frame |
227 { | 241 { |
242 #ifdef NEW_GC | |
243 struct lrecord_header header; | |
244 #endif /* NEW_GC */ | |
245 | |
228 /* The widget of this frame. This is an EmacsShell or an | 246 /* The widget of this frame. This is an EmacsShell or an |
229 ExternalShell. */ | 247 ExternalShell. */ |
230 Widget widget; | 248 Widget widget; |
231 | 249 |
232 /* The parent of the EmacsFrame, the menubar, and the scrollbars. | 250 /* The parent of the EmacsFrame, the menubar, and the scrollbars. |
309 `top_level_frame_p' will never be set. */ | 327 `top_level_frame_p' will never be set. */ |
310 unsigned int external_window_p :1; | 328 unsigned int external_window_p :1; |
311 #endif /* EXTERNAL_WIDGET */ | 329 #endif /* EXTERNAL_WIDGET */ |
312 }; | 330 }; |
313 | 331 |
332 #ifdef NEW_GC | |
333 typedef struct x_frame Lisp_X_Frame; | |
334 | |
335 DECLARE_LRECORD (x_frame, Lisp_X_Frame); | |
336 | |
337 #define XX_FRAME(x) \ | |
338 XRECORD (x, x_frame, Lisp_X_Frame) | |
339 #define wrap_x_frame(p) wrap_record (p, x_frame) | |
340 #define X_FRAME_P(x) RECORDP (x, x_frame) | |
341 #endif /* NEW_GC */ | |
314 #define FRAME_X_DATA(f) FRAME_TYPE_DATA (f, x) | 342 #define FRAME_X_DATA(f) FRAME_TYPE_DATA (f, x) |
315 | 343 |
316 #define FRAME_X_SHELL_WIDGET(f) (FRAME_X_DATA (f)->widget) | 344 #define FRAME_X_SHELL_WIDGET(f) (FRAME_X_DATA (f)->widget) |
317 #define FRAME_X_CONTAINER_WIDGET(f) (FRAME_X_DATA (f)->container) | 345 #define FRAME_X_CONTAINER_WIDGET(f) (FRAME_X_DATA (f)->container) |
318 #define FRAME_X_MENUBAR_WIDGET(f) (FRAME_X_DATA (f)->menubar_widget) | 346 #define FRAME_X_MENUBAR_WIDGET(f) (FRAME_X_DATA (f)->menubar_widget) |