comparison src/frame.h @ 286:57709be46d1b r21-0b41

Import from CVS: tag r21-0b41
author cvs
date Mon, 13 Aug 2007 10:35:03 +0200
parents 558f606b08ae
children a4f53d9b3154
comparison
equal deleted inserted replaced
285:9a3756523c1b 286:57709be46d1b
91 struct scrollbar_instance *sb_vcache; 91 struct scrollbar_instance *sb_vcache;
92 struct scrollbar_instance *sb_hcache; 92 struct scrollbar_instance *sb_hcache;
93 #endif 93 #endif
94 94
95 #ifdef HAVE_TOOLBARS 95 #ifdef HAVE_TOOLBARS
96 /* We handle these specially rather than putting them in 96 /* Size of toolbars as seen by redisplay. This is used to determine
97 frameslots.h because we want them to be arrays. */ 97 whether to re-layout windows by a call to change_frame_size early
98 98 in redisplay_frame. */
99 /* Data representing each currently displayed toolbar. See 99 unsigned int current_toolbar_size[4];
100 toolbar.c */
101 Lisp_Object toolbar_data[4];
102
103 /* Cached specifiers: */
104
105 /* Size of the toolbars. The frame-local toolbar space is
106 subtracted before the windows are arranged. Window and buffer
107 local toolbars overlay their windows. */
108 Lisp_Object toolbar_size[4];
109 /* Visibility of the toolbars. This acts as a valve for toolbar_size. */
110 Lisp_Object toolbar_visible_p[4];
111 /* Thickness of the border around the toolbar. */
112 Lisp_Object toolbar_border_width[4];
113 #endif 100 #endif
114 101
115 /* A structure of auxiliary data specific to the device type. 102 /* A structure of auxiliary data specific to the device type.
116 struct x_frame is used for X window frames; defined in console-x.h */ 103 struct x_frame is used for X window frames; defined in console-x.h */
117 void *frame_data; 104 void *frame_data;
118 105
106 #define FRAME_SLOT_DECLARATION
119 #define MARKED_SLOT(x) Lisp_Object x 107 #define MARKED_SLOT(x) Lisp_Object x
120 #include "frameslots.h" 108 #include "frameslots.h"
121 #undef MARKED_SLOT
122 109
123 /* Nonzero if frame is currently displayed. 110 /* Nonzero if frame is currently displayed.
124 Mutally exclusive with iconfied 111 Mutally exclusive with iconfied
125 JV: This now a tristate flag: 112 JV: This now a tristate flag:
126 Value : Emacs meaning :f-v-p : X meaning 113 Value : Emacs meaning :f-v-p : X meaning
492 below for that. 479 below for that.
493 */ 480 */
494 481
495 #ifdef HAVE_TOOLBARS 482 #ifdef HAVE_TOOLBARS
496 #define FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE(f, pos) \ 483 #define FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE(f, pos) \
497 (!NILP((f)->toolbar_data[pos]) && !NILP ((f)->toolbar_visible_p[pos])) 484 (!NILP((f)->toolbar_buttons[pos]) && !NILP ((f)->toolbar_visible_p[pos]))
498 #define FRAME_RAW_THEORETICAL_TOOLBAR_SIZE(f, pos) \ 485 #define FRAME_RAW_THEORETICAL_TOOLBAR_SIZE(f, pos) \
499 (!NILP ((f)->toolbar_data[pos]) && INTP((f)->toolbar_size[pos]) ? \ 486 (!NILP ((f)->toolbar_buttons[pos]) && INTP((f)->toolbar_size[pos]) ? \
500 (XINT ((f)->toolbar_size[pos])) : 0) 487 (XINT ((f)->toolbar_size[pos])) : 0)
501 #define FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH(f, pos) \ 488 #define FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH(f, pos) \
502 (!NILP ((f)->toolbar_data[pos]) && INTP((f)->toolbar_border_width[pos]) ? \ 489 (!NILP ((f)->toolbar_buttons[pos]) && INTP((f)->toolbar_border_width[pos]) ? \
503 (XINT ((f)->toolbar_border_width[pos])) : 0) 490 (XINT ((f)->toolbar_border_width[pos])) : 0)
504 #else 491 #else
505 #define FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE(f, pos) 0 492 #define FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE(f, pos) 0
506 #define FRAME_RAW_THEORETICAL_TOOLBAR_SIZE(f, pos) 0 493 #define FRAME_RAW_THEORETICAL_TOOLBAR_SIZE(f, pos) 0
507 #define FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH(f, pos) 0 494 #define FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH(f, pos) 0