Mercurial > hg > xemacs-beta
comparison src/window.h @ 187:b405438285a2 r20-3b20
Import from CVS: tag r20-3b20
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:56:28 +0200 |
parents | fe104dbd9147 |
children | 1f0dabaa0855 |
comparison
equal
deleted
inserted
replaced
186:24ac94803b48 | 187:b405438285a2 |
---|---|
192 Lisp_Object scrollbar_width; | 192 Lisp_Object scrollbar_width; |
193 /* Height of horizontal scrollbars. */ | 193 /* Height of horizontal scrollbars. */ |
194 Lisp_Object scrollbar_height; | 194 Lisp_Object scrollbar_height; |
195 /* Pointer to use for vertical and horizontal scrollbars. */ | 195 /* Pointer to use for vertical and horizontal scrollbars. */ |
196 Lisp_Object scrollbar_pointer; | 196 Lisp_Object scrollbar_pointer; |
197 #endif | 197 #endif /* HAVE_SCROLLBARS */ |
198 #ifdef HAVE_TOOLBARS | 198 #ifdef HAVE_TOOLBARS |
199 /* Toolbar specification for each of the four positions. | 199 /* Toolbar specification for each of the four positions. |
200 This is not a size hog because the value here is not copied, | 200 This is not a size hog because the value here is not copied, |
201 and will be shared with the specs in the specifier. */ | 201 and will be shared with the specs in the specifier. */ |
202 Lisp_Object toolbar[4]; | 202 Lisp_Object toolbar[4]; |
209 /* The following four don't really need to be cached except | 209 /* The following four don't really need to be cached except |
210 that we need to know when they've changed. */ | 210 that we need to know when they've changed. */ |
211 Lisp_Object default_toolbar; | 211 Lisp_Object default_toolbar; |
212 Lisp_Object default_toolbar_width, default_toolbar_height; | 212 Lisp_Object default_toolbar_width, default_toolbar_height; |
213 Lisp_Object default_toolbar_visible_p; | 213 Lisp_Object default_toolbar_visible_p; |
214 #endif | 214 #endif /* HAVE_TOOLBARS */ |
215 Lisp_Object left_margin_width, right_margin_width; | 215 Lisp_Object left_margin_width, right_margin_width; |
216 Lisp_Object minimum_line_ascent, minimum_line_descent; | 216 Lisp_Object minimum_line_ascent, minimum_line_descent; |
217 Lisp_Object use_left_overflow, use_right_overflow; | 217 Lisp_Object use_left_overflow, use_right_overflow; |
218 #ifdef HAVE_MENUBARS | 218 #ifdef HAVE_MENUBARS |
219 /* Visibility of menubar. */ | 219 /* Visibility of menubar. */ |
220 Lisp_Object menubar_visible_p; | 220 Lisp_Object menubar_visible_p; |
221 #endif | 221 #endif /* HAVE_MENUBARS */ |
222 Lisp_Object text_cursor_visible_p; | 222 Lisp_Object text_cursor_visible_p; |
223 | 223 |
224 /* one-bit flags: */ | 224 /* one-bit flags: */ |
225 | 225 |
226 /* marker used when restoring a window configuration */ | 226 /* marker used when restoring a window configuration */ |
236 was the beginning of a line when it was chosen. */ | 236 was the beginning of a line when it was chosen. */ |
237 unsigned int start_at_line_beg :1; | 237 unsigned int start_at_line_beg :1; |
238 /* new redisplay flag */ | 238 /* new redisplay flag */ |
239 unsigned int windows_changed :1; | 239 unsigned int windows_changed :1; |
240 unsigned int shadow_thickness_changed :1; | 240 unsigned int shadow_thickness_changed :1; |
241 }; | 241 }; |
242 | 242 |
243 #define CURRENT_DISP 0 | 243 #define CURRENT_DISP 0 |
244 #define DESIRED_DISP 1 | 244 #define DESIRED_DISP 1 |
245 #define CMOTION_DISP 2 | 245 #define CMOTION_DISP 2 |
246 | 246 |
247 struct window_mirror | 247 struct window_mirror |
248 { | 248 { |
249 /* Frame this mirror is on. */ | 249 /* Frame this mirror is on. */ |
250 struct frame *frame; | 250 struct frame *frame; |
269 | 269 |
270 #ifdef HAVE_SCROLLBARS | 270 #ifdef HAVE_SCROLLBARS |
271 /* Scrollbars associated with window, if any. */ | 271 /* Scrollbars associated with window, if any. */ |
272 struct scrollbar_instance *scrollbar_vertical_instance; | 272 struct scrollbar_instance *scrollbar_vertical_instance; |
273 struct scrollbar_instance *scrollbar_horizontal_instance; | 273 struct scrollbar_instance *scrollbar_horizontal_instance; |
274 #endif | 274 #endif /* HAVE_SCROLLBARS */ |
275 | 275 |
276 /* Flag indicating whether a subwindow is currently being displayed. */ | 276 /* Flag indicating whether a subwindow is currently being displayed. */ |
277 unsigned int subwindows_being_displayed :1; | 277 unsigned int subwindows_being_displayed :1; |
278 | 278 |
279 /* Keep track of the truncation status in this window so we can | 279 /* Keep track of the truncation status in this window so we can |
293 #define CONCHECK_WINDOW(x) CONCHECK_RECORD (x, window) | 293 #define CONCHECK_WINDOW(x) CONCHECK_RECORD (x, window) |
294 | 294 |
295 extern Lisp_Object Qwindow_live_p; | 295 extern Lisp_Object Qwindow_live_p; |
296 | 296 |
297 #define WINDOW_LIVE_P(x) (!(x)->dead) | 297 #define WINDOW_LIVE_P(x) (!(x)->dead) |
298 #define CHECK_LIVE_WINDOW(x) \ | 298 #define CHECK_LIVE_WINDOW(x) do { \ |
299 do { CHECK_WINDOW (x); \ | 299 CHECK_WINDOW (x); \ |
300 if (!WINDOW_LIVE_P (XWINDOW (x))) \ | 300 if (!WINDOW_LIVE_P (XWINDOW (x))) \ |
301 dead_wrong_type_argument (Qwindow_live_p, (x)); \ | 301 dead_wrong_type_argument (Qwindow_live_p, (x)); \ |
302 } while (0) | 302 } while (0) |
303 #define CONCHECK_LIVE_WINDOW(x) \ | 303 #define CONCHECK_LIVE_WINDOW(x) do { \ |
304 do { CONCHECK_WINDOW (x); \ | 304 CONCHECK_WINDOW (x); \ |
305 if (!WINDOW_LIVE_P (XWINDOW (x))) \ | 305 if (!WINDOW_LIVE_P (XWINDOW (x))) \ |
306 x = wrong_type_argument (Qwindow_live_p, (x)); \ | 306 x = wrong_type_argument (Qwindow_live_p, (x)); \ |
307 } while (0) | 307 } while (0) |
308 | 308 |
309 /* 1 if W is a minibuffer window. */ | 309 /* 1 if W is a minibuffer window. */ |
310 #define MINI_WINDOW_P(W) (!EQ ((W)->mini_p, Qnil)) | 310 #define MINI_WINDOW_P(W) (!EQ ((W)->mini_p, Qnil)) |
311 | 311 |
312 /* 1 if we are dealing with a parentless window (this includes the | 312 /* 1 if we are dealing with a parentless window (this includes the |
313 root window on a frame and the minibuffer window; both of these | 313 root window on a frame and the minibuffer window; both of these |
314 are siblings). */ | 314 are siblings). */ |
315 #define TOP_LEVEL_WINDOW_P(w) NILP ((w)->parent) | 315 #define TOP_LEVEL_WINDOW_P(w) NILP ((w)->parent) |
316 | 316 |
317 /* Set all redisplay flags indicating a window has changed */ | 317 /* Set all redisplay flags indicating a window has changed */ |
318 #define MARK_WINDOWS_CHANGED(w) do { \ | 318 #define MARK_WINDOWS_CHANGED(w) do { \ |
319 (w)->windows_changed = 1; \ | 319 (w)->windows_changed = 1; \ |
320 if (!NILP (w->frame)) \ | 320 if (!NILP (w->frame)) \ |
321 MARK_FRAME_WINDOWS_CHANGED (XFRAME (w->frame)); \ | 321 MARK_FRAME_WINDOWS_CHANGED (XFRAME (w->frame)); \ |
322 else \ | 322 else \ |
323 windows_changed = 1; } while (0) | 323 windows_changed = 1; \ |
324 } while (0) | |
324 | 325 |
325 #define WINDOW_TTY_P(w) FRAME_TTY_P (XFRAME ((w)->frame)) | 326 #define WINDOW_TTY_P(w) FRAME_TTY_P (XFRAME ((w)->frame)) |
326 #define WINDOW_X_P(w) FRAME_X_P (XFRAME ((w)->frame)) | 327 #define WINDOW_X_P(w) FRAME_X_P (XFRAME ((w)->frame)) |
327 #define WINDOW_NS_P(w) FRAME_NS_P (XFRAME ((w)->frame)) | 328 #define WINDOW_NS_P(w) FRAME_NS_P (XFRAME ((w)->frame)) |
328 #define WINDOW_WIN_P(w) FRAME_WIN_P (XFRAME ((w)->frame)) | 329 #define WINDOW_WIN_P(w) FRAME_WIN_P (XFRAME ((w)->frame)) |
329 | 330 |
330 DECLARE_LRECORD (window_configuration, struct window_config); | 331 DECLARE_LRECORD (window_configuration, struct window_config); |
331 | 332 |
332 /* The minibuffer window of the selected frame. | 333 /* The minibuffer window of the selected frame. |