comparison src/console-x.h @ 187:b405438285a2 r20-3b20

Import from CVS: tag r20-3b20
author cvs
date Mon, 13 Aug 2007 09:56:28 +0200
parents 3d6bfa290dbd
children d44af0c54775
comparison
equal deleted inserted replaced
186:24ac94803b48 187:b405438285a2
124 124
125 KeySym *x_keysym_map; 125 KeySym *x_keysym_map;
126 int x_keysym_map_min_code; 126 int x_keysym_map_min_code;
127 int x_keysym_map_max_code; 127 int x_keysym_map_max_code;
128 int x_keysym_map_keysyms_per_code; 128 int x_keysym_map_keysyms_per_code;
129 Lisp_Object x_keysym_map_hashtable;
129 130
130 /* frame that holds the WM_COMMAND property; there should be exactly 131 /* frame that holds the WM_COMMAND property; there should be exactly
131 one of these per device. */ 132 one of these per device. */
132 Lisp_Object WM_COMMAND_frame; 133 Lisp_Object WM_COMMAND_frame;
133 134
175 }; 176 };
176 177
177 #define DEVICE_X_DATA(d) DEVICE_TYPE_DATA (d, x) 178 #define DEVICE_X_DATA(d) DEVICE_TYPE_DATA (d, x)
178 179
179 #define FRAME_X_DISPLAY(f) (DEVICE_X_DISPLAY (XDEVICE (f->device))) 180 #define FRAME_X_DISPLAY(f) (DEVICE_X_DISPLAY (XDEVICE (f->device)))
180 #define DEVICE_X_DISPLAY(d) (DEVICE_X_DATA (d)->display) 181 #define DEVICE_X_DISPLAY(d) (DEVICE_X_DATA (d)->display)
181 #define DEVICE_XT_APP_SHELL(d) (DEVICE_X_DATA (d)->Xt_app_shell) 182 #define DEVICE_XT_APP_SHELL(d) (DEVICE_X_DATA (d)->Xt_app_shell)
182 #define DEVICE_X_GC_CACHE(d) (DEVICE_X_DATA (d)->gc_cache) 183 #define DEVICE_X_GC_CACHE(d) (DEVICE_X_DATA (d)->gc_cache)
183 #define DEVICE_X_GRAY_PIXMAP(d) (DEVICE_X_DATA (d)->gray_pixmap) 184 #define DEVICE_X_GRAY_PIXMAP(d) (DEVICE_X_DATA (d)->gray_pixmap)
184 #define DEVICE_X_WM_COMMAND_FRAME(d) (DEVICE_X_DATA (d)->WM_COMMAND_frame) 185 #define DEVICE_X_WM_COMMAND_FRAME(d) (DEVICE_X_DATA (d)->WM_COMMAND_frame)
185 #define DEVICE_X_MOUSE_TIMESTAMP(d) (DEVICE_X_DATA (d)->mouse_timestamp) 186 #define DEVICE_X_MOUSE_TIMESTAMP(d) (DEVICE_X_DATA (d)->mouse_timestamp)
186 #define DEVICE_X_GLOBAL_MOUSE_TIMESTAMP(d) \ 187 #define DEVICE_X_GLOBAL_MOUSE_TIMESTAMP(d) (DEVICE_X_DATA (d)->global_mouse_timestamp)
187 (DEVICE_X_DATA (d)->global_mouse_timestamp) 188 #define DEVICE_X_LAST_SERVER_TIMESTAMP(d) (DEVICE_X_DATA (d)->last_server_timestamp)
188 #define DEVICE_X_LAST_SERVER_TIMESTAMP(d) \ 189 #define DEVICE_X_KEYSYM_MAP_HASHTABLE(d) (DEVICE_X_DATA (d)->x_keysym_map_hashtable)
189 (DEVICE_X_DATA (d)->last_server_timestamp) 190 /* #define DEVICE_X_X_COMPOSE_STATUS(d) (DEVICE_X_DATA (d)->x_compose_status) */
190 /* #define DEVICE_X_X_COMPOSE_STATUS(d)
191 (DEVICE_X_DATA (d)->x_compose_status) */
192 #ifdef HAVE_XIM 191 #ifdef HAVE_XIM
193 #define DEVICE_X_XIM(d) (DEVICE_X_DATA (d)->xim) 192 #define DEVICE_X_XIM(d) (DEVICE_X_DATA (d)->xim)
194 #define DEVICE_X_XIM_STYLES(d) (DEVICE_X_DATA (d)->xim_styles) 193 #define DEVICE_X_XIM_STYLES(d) (DEVICE_X_DATA (d)->xim_styles)
195 #define DEVICE_X_FONTSET(d) (DEVICE_X_DATA (d)->fontset) 194 #define DEVICE_X_FONTSET(d) (DEVICE_X_DATA (d)->fontset)
196 #endif /* HAVE_XIM */ 195 #endif /* HAVE_XIM */
197 196
198 /* allocated in Xatoms_of_xfns in xfns.c */ 197 /* allocated in Xatoms_of_xfns in xfns.c */
199 #define DEVICE_XATOM_WM_PROTOCOLS(d) (DEVICE_X_DATA (d)->Xatom_WM_PROTOCOLS) 198 #define DEVICE_XATOM_WM_PROTOCOLS(d) (DEVICE_X_DATA (d)->Xatom_WM_PROTOCOLS)
200 #define DEVICE_XATOM_WM_DELETE_WINDOW(d) \ 199 #define DEVICE_XATOM_WM_DELETE_WINDOW(d) (DEVICE_X_DATA (d)->Xatom_WM_DELETE_WINDOW)
201 (DEVICE_X_DATA (d)->Xatom_WM_DELETE_WINDOW) 200 #define DEVICE_XATOM_WM_SAVE_YOURSELF(d) (DEVICE_X_DATA (d)->Xatom_WM_SAVE_YOURSELF)
202 #define DEVICE_XATOM_WM_SAVE_YOURSELF(d) \ 201 #define DEVICE_XATOM_WM_TAKE_FOCUS(d) (DEVICE_X_DATA (d)->Xatom_WM_TAKE_FOCUS)
203 (DEVICE_X_DATA (d)->Xatom_WM_SAVE_YOURSELF) 202 #define DEVICE_XATOM_WM_STATE(d) (DEVICE_X_DATA (d)->Xatom_WM_STATE)
204 #define DEVICE_XATOM_WM_TAKE_FOCUS(d) (DEVICE_X_DATA (d)->Xatom_WM_TAKE_FOCUS)
205 #define DEVICE_XATOM_WM_STATE(d) (DEVICE_X_DATA (d)->Xatom_WM_STATE)
206 203
207 /* allocated in Xatoms_of_xselect in xselect.c */ 204 /* allocated in Xatoms_of_xselect in xselect.c */
208 #define DEVICE_XATOM_CLIPBOARD(d) (DEVICE_X_DATA (d)->Xatom_CLIPBOARD) 205 #define DEVICE_XATOM_CLIPBOARD(d) (DEVICE_X_DATA (d)->Xatom_CLIPBOARD)
209 #define DEVICE_XATOM_TIMESTAMP(d) (DEVICE_X_DATA (d)->Xatom_TIMESTAMP) 206 #define DEVICE_XATOM_TIMESTAMP(d) (DEVICE_X_DATA (d)->Xatom_TIMESTAMP)
210 #define DEVICE_XATOM_TEXT(d) (DEVICE_X_DATA (d)->Xatom_TEXT) 207 #define DEVICE_XATOM_TEXT(d) (DEVICE_X_DATA (d)->Xatom_TEXT)
211 #define DEVICE_XATOM_DELETE(d) (DEVICE_X_DATA (d)->Xatom_DELETE) 208 #define DEVICE_XATOM_DELETE(d) (DEVICE_X_DATA (d)->Xatom_DELETE)
212 #define DEVICE_XATOM_MULTIPLE(d) (DEVICE_X_DATA (d)->Xatom_MULTIPLE) 209 #define DEVICE_XATOM_MULTIPLE(d) (DEVICE_X_DATA (d)->Xatom_MULTIPLE)
213 #define DEVICE_XATOM_INCR(d) (DEVICE_X_DATA (d)->Xatom_INCR) 210 #define DEVICE_XATOM_INCR(d) (DEVICE_X_DATA (d)->Xatom_INCR)
214 #define DEVICE_XATOM_EMACS_TMP(d) (DEVICE_X_DATA (d)->Xatom_EMACS_TMP) 211 #define DEVICE_XATOM_EMACS_TMP(d) (DEVICE_X_DATA (d)->Xatom_EMACS_TMP)
215 #define DEVICE_XATOM_TARGETS(d) (DEVICE_X_DATA (d)->Xatom_TARGETS) 212 #define DEVICE_XATOM_TARGETS(d) (DEVICE_X_DATA (d)->Xatom_TARGETS)
216 #define DEVICE_XATOM_NULL(d) (DEVICE_X_DATA (d)->Xatom_NULL) 213 #define DEVICE_XATOM_NULL(d) (DEVICE_X_DATA (d)->Xatom_NULL)
217 #define DEVICE_XATOM_ATOM_PAIR(d) (DEVICE_X_DATA (d)->Xatom_ATOM_PAIR) 214 #define DEVICE_XATOM_ATOM_PAIR(d) (DEVICE_X_DATA (d)->Xatom_ATOM_PAIR)
218 #define DEVICE_XATOM_COMPOUND_TEXT(d) (DEVICE_X_DATA (d)->Xatom_COMPOUND_TEXT) 215 #define DEVICE_XATOM_COMPOUND_TEXT(d) (DEVICE_X_DATA (d)->Xatom_COMPOUND_TEXT)
219 216
220 /* allocated in Xatoms_of_objects_x in objects-x.c */ 217 /* allocated in Xatoms_of_objects_x in objects-x.c */
221 #define DEVICE_XATOM_FOUNDRY(d) (DEVICE_X_DATA (d)->Xatom_FOUNDRY) 218 #define DEVICE_XATOM_FOUNDRY(d) (DEVICE_X_DATA (d)->Xatom_FOUNDRY)
222 #define DEVICE_XATOM_FAMILY_NAME(d) (DEVICE_X_DATA (d)->Xatom_FAMILY_NAME) 219 #define DEVICE_XATOM_FAMILY_NAME(d) (DEVICE_X_DATA (d)->Xatom_FAMILY_NAME)
223 #define DEVICE_XATOM_WEIGHT_NAME(d) (DEVICE_X_DATA (d)->Xatom_WEIGHT_NAME) 220 #define DEVICE_XATOM_WEIGHT_NAME(d) (DEVICE_X_DATA (d)->Xatom_WEIGHT_NAME)
224 #define DEVICE_XATOM_SLANT(d) (DEVICE_X_DATA (d)->Xatom_SLANT) 221 #define DEVICE_XATOM_SLANT(d) (DEVICE_X_DATA (d)->Xatom_SLANT)
225 #define DEVICE_XATOM_SETWIDTH_NAME(d) (DEVICE_X_DATA (d)->Xatom_SETWIDTH_NAME) 222 #define DEVICE_XATOM_SETWIDTH_NAME(d) (DEVICE_X_DATA (d)->Xatom_SETWIDTH_NAME)
226 #define DEVICE_XATOM_ADD_STYLE_NAME(d) \ 223 #define DEVICE_XATOM_ADD_STYLE_NAME(d) (DEVICE_X_DATA (d)->Xatom_ADD_STYLE_NAME)
227 (DEVICE_X_DATA (d)->Xatom_ADD_STYLE_NAME) 224 #define DEVICE_XATOM_PIXEL_SIZE(d) (DEVICE_X_DATA (d)->Xatom_PIXEL_SIZE)
228 #define DEVICE_XATOM_PIXEL_SIZE(d) (DEVICE_X_DATA (d)->Xatom_PIXEL_SIZE) 225 #define DEVICE_XATOM_POINT_SIZE(d) (DEVICE_X_DATA (d)->Xatom_POINT_SIZE)
229 #define DEVICE_XATOM_POINT_SIZE(d) (DEVICE_X_DATA (d)->Xatom_POINT_SIZE) 226 #define DEVICE_XATOM_RESOLUTION_X(d) (DEVICE_X_DATA (d)->Xatom_RESOLUTION_X)
230 #define DEVICE_XATOM_RESOLUTION_X(d) (DEVICE_X_DATA (d)->Xatom_RESOLUTION_X) 227 #define DEVICE_XATOM_RESOLUTION_Y(d) (DEVICE_X_DATA (d)->Xatom_RESOLUTION_Y)
231 #define DEVICE_XATOM_RESOLUTION_Y(d) (DEVICE_X_DATA (d)->Xatom_RESOLUTION_Y) 228 #define DEVICE_XATOM_SPACING(d) (DEVICE_X_DATA (d)->Xatom_SPACING)
232 #define DEVICE_XATOM_SPACING(d) (DEVICE_X_DATA (d)->Xatom_SPACING) 229 #define DEVICE_XATOM_AVERAGE_WIDTH(d) (DEVICE_X_DATA (d)->Xatom_AVERAGE_WIDTH)
233 #define DEVICE_XATOM_AVERAGE_WIDTH(d) (DEVICE_X_DATA (d)->Xatom_AVERAGE_WIDTH) 230 #define DEVICE_XATOM_CHARSET_REGISTRY(d) (DEVICE_X_DATA (d)->Xatom_CHARSET_REGISTRY)
234 #define DEVICE_XATOM_CHARSET_REGISTRY(d) \ 231 #define DEVICE_XATOM_CHARSET_ENCODING(d) (DEVICE_X_DATA (d)->Xatom_CHARSET_ENCODING)
235 (DEVICE_X_DATA (d)->Xatom_CHARSET_REGISTRY)
236 #define DEVICE_XATOM_CHARSET_ENCODING(d) \
237 (DEVICE_X_DATA (d)->Xatom_CHARSET_ENCODING)
238 232
239 /* The maximum number of widgets that can be displayed above the text 233 /* The maximum number of widgets that can be displayed above the text
240 area at one time. Currently no more than 3 will ever actually be 234 area at one time. Currently no more than 3 will ever actually be
241 displayed (menubar, psheet, debugger panel). */ 235 displayed (menubar, psheet, debugger panel). */
242 #define MAX_CONCURRENT_TOP_WIDGETS 8 236 #define MAX_CONCURRENT_TOP_WIDGETS 8
262 Used by the EmacsManager. */ 256 Used by the EmacsManager. */
263 Widget top_widgets[MAX_CONCURRENT_TOP_WIDGETS]; 257 Widget top_widgets[MAX_CONCURRENT_TOP_WIDGETS];
264 int num_top_widgets; 258 int num_top_widgets;
265 259
266 #ifdef ENERGIZE 260 #ifdef ENERGIZE
267 /* The Energize property-sheets. The current_ slots are the ones which are 261 /* The Energize property-sheets. The current_* slots are the ones
268 actually on the frame. The desired_ slots are the ones which should 262 which are actually on the frame. The desired_ slots are the ones
269 be there. Redisplay synchs these. 263 which should be there. Redisplay synchs these. */
270 */
271 int *current_psheets; 264 int *current_psheets;
272 int *desired_psheets; 265 int *desired_psheets;
273 int current_psheet_count; 266 int current_psheet_count;
274 int desired_psheet_count; 267 int desired_psheet_count;
275 Lisp_Object current_psheet_buffer; 268 Lisp_Object current_psheet_buffer;
280 273
281 /* The icon pixmaps; these are Lisp_Image_Instance objects, or Qnil. */ 274 /* The icon pixmaps; these are Lisp_Image_Instance objects, or Qnil. */
282 Lisp_Object icon_pixmap; 275 Lisp_Object icon_pixmap;
283 Lisp_Object icon_pixmap_mask; 276 Lisp_Object icon_pixmap_mask;
284 277
285 /* We don't provide a mechanism for changing these are they are 278 #ifdef HAVE_TOOLBARS
279 int old_toolbar_size[4];
280
281 /* We don't provide a mechanism for changing these after they are
286 initialized so we might as well keep pointers to them and avoid 282 initialized so we might as well keep pointers to them and avoid
287 lots of expensive calls to gc_cache_lookup. */ 283 lots of expensive calls to gc_cache_lookup. */
288 GC toolbar_top_shadow_gc; 284 GC toolbar_top_shadow_gc;
289 GC toolbar_bottom_shadow_gc; 285 GC toolbar_bottom_shadow_gc;
290 GC toolbar_blank_background_gc; 286 GC toolbar_blank_background_gc;
291 GC toolbar_pixmap_background_gc; 287 GC toolbar_pixmap_background_gc;
288 #endif /* HAVE_TOOLBARS */
292 289
293 /* geometry string that ought to be freed. */ 290 /* geometry string that ought to be freed. */
294 char *geom_free_me_please; 291 char *geom_free_me_please;
295 292
296 #ifdef HAVE_XIM 293 #ifdef HAVE_XIM
300 /* Could get these at any time by asking xic, but... */ 297 /* Could get these at any time by asking xic, but... */
301 XIMStyle xic_style; /* XIM Style cache */ 298 XIMStyle xic_style; /* XIM Style cache */
302 #endif /* XIM_XLIB */ 299 #endif /* XIM_XLIB */
303 #endif /* HAVE_XIM */ 300 #endif /* HAVE_XIM */
304 301
305 int old_toolbar_size[4];
306
307 /* 1 if the frame is completely visible on the display, 0 otherwise. 302 /* 1 if the frame is completely visible on the display, 0 otherwise.
308 if 0 the frame may have been iconified or may be totally 303 if 0 the frame may have been iconified or may be totally
309 or partially hidden by another X window */ 304 or partially hidden by another X window */
310 unsigned int totally_visible_p :1; 305 unsigned int totally_visible_p :1;
311 306
325 #endif /* EXTERNAL_WIDGET */ 320 #endif /* EXTERNAL_WIDGET */
326 }; 321 };
327 322
328 #define FRAME_X_DATA(f) FRAME_TYPE_DATA (f, x) 323 #define FRAME_X_DATA(f) FRAME_TYPE_DATA (f, x)
329 324
330 #define FRAME_X_SHELL_WIDGET(f) (FRAME_X_DATA (f)->widget) 325 #define FRAME_X_SHELL_WIDGET(f) (FRAME_X_DATA (f)->widget)
331 #define FRAME_X_CONTAINER_WIDGET(f) (FRAME_X_DATA (f)->container) 326 #define FRAME_X_CONTAINER_WIDGET(f) (FRAME_X_DATA (f)->container)
332 #define FRAME_X_MENUBAR_WIDGET(f) (FRAME_X_DATA (f)->menubar_widget) 327 #define FRAME_X_MENUBAR_WIDGET(f) (FRAME_X_DATA (f)->menubar_widget)
333 #define FRAME_X_TEXT_WIDGET(f) (FRAME_X_DATA (f)->edit_widget) 328 #define FRAME_X_TEXT_WIDGET(f) (FRAME_X_DATA (f)->edit_widget)
334 #define FRAME_X_TOP_WIDGETS(f) (FRAME_X_DATA (f)->top_widgets) 329 #define FRAME_X_TOP_WIDGETS(f) (FRAME_X_DATA (f)->top_widgets)
335 #define FRAME_X_NUM_TOP_WIDGETS(f) (FRAME_X_DATA (f)->num_top_widgets) 330 #define FRAME_X_NUM_TOP_WIDGETS(f) (FRAME_X_DATA (f)->num_top_widgets)
336
337 #define FRAME_X_OLD_TOOLBAR_SIZE(f, pos) \
338 (FRAME_X_DATA (f)->old_toolbar_size[pos])
339 331
340 #ifdef ENERGIZE 332 #ifdef ENERGIZE
341 #define FRAME_X_CURRENT_PSHEETS(f) (FRAME_X_DATA (f)->current_psheets) 333 #define FRAME_X_CURRENT_PSHEETS(f) (FRAME_X_DATA (f)->current_psheets)
342 #define FRAME_X_DESIRED_PSHEETS(f) (FRAME_X_DATA (f)->desired_psheets) 334 #define FRAME_X_DESIRED_PSHEETS(f) (FRAME_X_DATA (f)->desired_psheets)
343 #define FRAME_X_CURRENT_PSHEET_COUNT(f) \ 335 #define FRAME_X_CURRENT_PSHEET_COUNT(f) (FRAME_X_DATA (f)->current_psheet_count)
344 (FRAME_X_DATA (f)->current_psheet_count) 336 #define FRAME_X_DESIRED_PSHEET_COUNT(f) (FRAME_X_DATA (f)->desired_psheet_count)
345 #define FRAME_X_DESIRED_PSHEET_COUNT(f) \ 337 #define FRAME_X_CURRENT_PSHEET_BUFFER(f) (FRAME_X_DATA (f)->current_psheet_buffer)
346 (FRAME_X_DATA (f)->desired_psheet_count) 338 #define FRAME_X_DESIRED_PSHEET_BUFFER(f) (FRAME_X_DATA (f)->desired_psheet_buffer)
347 #define FRAME_X_CURRENT_PSHEET_BUFFER(f) \ 339 #endif /* ENERGIZE */
348 (FRAME_X_DATA (f)->current_psheet_buffer) 340
349 #define FRAME_X_DESIRED_PSHEET_BUFFER(f) \ 341 #define FRAME_X_ICON_PIXMAP(f) (FRAME_X_DATA (f)->icon_pixmap)
350 (FRAME_X_DATA (f)->desired_psheet_buffer)
351 #endif
352
353 #define FRAME_X_ICON_PIXMAP(f) (FRAME_X_DATA (f)->icon_pixmap)
354 #define FRAME_X_ICON_PIXMAP_MASK(f) (FRAME_X_DATA (f)->icon_pixmap_mask) 342 #define FRAME_X_ICON_PIXMAP_MASK(f) (FRAME_X_DATA (f)->icon_pixmap_mask)
355 343
356 #define FRAME_X_TOOLBAR_TOP_SHADOW_GC(f) \ 344 #ifdef HAVE_TOOLBARS
357 (FRAME_X_DATA (f)->toolbar_top_shadow_gc) 345 #define FRAME_X_OLD_TOOLBAR_SIZE(f, pos) (FRAME_X_DATA (f)->old_toolbar_size[pos])
358 #define FRAME_X_TOOLBAR_BOTTOM_SHADOW_GC(f) \ 346
359 (FRAME_X_DATA (f)->toolbar_bottom_shadow_gc) 347 #define FRAME_X_TOOLBAR_TOP_SHADOW_GC(f) (FRAME_X_DATA (f)->toolbar_top_shadow_gc)
360 #define FRAME_X_TOOLBAR_BLANK_BACKGROUND_GC(f) \ 348 #define FRAME_X_TOOLBAR_BOTTOM_SHADOW_GC(f) (FRAME_X_DATA (f)->toolbar_bottom_shadow_gc)
361 (FRAME_X_DATA (f)->toolbar_blank_background_gc) 349 #define FRAME_X_TOOLBAR_BLANK_BACKGROUND_GC(f) (FRAME_X_DATA (f)->toolbar_blank_background_gc)
362 #define FRAME_X_TOOLBAR_PIXMAP_BACKGROUND_GC(f) \ 350 #define FRAME_X_TOOLBAR_PIXMAP_BACKGROUND_GC(f) (FRAME_X_DATA (f)->toolbar_pixmap_background_gc)
363 (FRAME_X_DATA (f)->toolbar_pixmap_background_gc) 351 #endif /* HAVE_TOOLBARS */
364 352
365 #define FRAME_X_GEOM_FREE_ME_PLEASE(f) (FRAME_X_DATA (f)->geom_free_me_please) 353 #define FRAME_X_GEOM_FREE_ME_PLEASE(f) (FRAME_X_DATA (f)->geom_free_me_please)
366 354
367 #define FRAME_X_TOTALLY_VISIBLE_P(f) (FRAME_X_DATA (f)->totally_visible_p) 355 #define FRAME_X_TOTALLY_VISIBLE_P(f) (FRAME_X_DATA (f)->totally_visible_p)
368 #define FRAME_X_TOP_LEVEL_FRAME_P(f) (FRAME_X_DATA (f)->top_level_frame_p) 356 #define FRAME_X_TOP_LEVEL_FRAME_P(f) (FRAME_X_DATA (f)->top_level_frame_p)