Mercurial > hg > xemacs-beta
comparison src/winslots.h @ 284:558f606b08ae r21-0b40
Import from CVS: tag r21-0b40
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:34:13 +0200 |
parents | |
children | 57709be46d1b |
comparison
equal
deleted
inserted
replaced
283:fa3d41851a08 | 284:558f606b08ae |
---|---|
1 /* Definitions of marked slots in windows and window configs | |
2 Copyright (C) 1985, 1986, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. | |
3 Copyright (C) 1994, 1995 Board of Trustees, University of Illinois. | |
4 Copyright (C) 1995, 1996 Ben Wing. | |
5 Copyright (C) 1996 Chuck Thompson. | |
6 | |
7 This file is part of XEmacs. | |
8 | |
9 XEmacs is free software; you can redistribute it and/or modify it | |
10 under the terms of the GNU General Public License as published by the | |
11 Free Software Foundation; either version 2, or (at your option) any | |
12 later version. | |
13 | |
14 XEmacs is distributed in the hope that it will be useful, but WITHOUT | |
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
16 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
17 for more details. | |
18 | |
19 You should have received a copy of the GNU General Public License | |
20 along with XEmacs; see the file COPYING. If not, write to | |
21 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
22 Boston, MA 02111-1307, USA. */ | |
23 | |
24 /* Split out of window.h and window.c | |
25 by Kirill Katsnelson <kkm@kis.ru>, May 1998 */ | |
26 | |
27 #ifdef WINDOW_SLOT_DECLARATION | |
28 #define WINDOW_SLOT_ARRAY(slot, size, compare) WINDOW_SLOT(slot[size], compare) | |
29 #else | |
30 #define WINDOW_SLOT_ARRAY(slot, size, compare) do { \ | |
31 int i; \ | |
32 for (i = 0; i < size; i++) \ | |
33 { \ | |
34 WINDOW_SLOT (slot[i], compare); \ | |
35 } \ | |
36 } while (0); | |
37 #endif | |
38 | |
39 #define EQUAL_WRAPPED(x,y) internal_equal ((x), (y), 0) | |
40 | |
41 /*** Non-specifier vars of window and window config ***/ | |
42 | |
43 /* Non-nil means window is marked as dedicated. */ | |
44 WINDOW_SLOT (dedicated, EQ); | |
45 | |
46 /*** specifier values cached in the struct window ***/ | |
47 | |
48 /* Display-table to use for displaying chars in this window. */ | |
49 WINDOW_SLOT (display_table, EQUAL_WRAPPED); | |
50 /* Thickness of modeline shadow, in pixels. If negative, draw | |
51 as recessed. */ | |
52 WINDOW_SLOT (modeline_shadow_thickness, EQ); | |
53 /* Non-nil means to display a modeline for the buffer. */ | |
54 WINDOW_SLOT (has_modeline_p, EQ); | |
55 /* Thickness of vertical divider shadow, in pixels. If negative, draw as | |
56 recessed. */ | |
57 WINDOW_SLOT (vertical_divider_shadow_thickness, EQ); | |
58 /* Divider surface width (not counting 3-d borders) */ | |
59 WINDOW_SLOT (vertical_divider_line_width, EQ); | |
60 /* Spacing between outer egde of divider border and window edge */ | |
61 WINDOW_SLOT (vertical_divider_spacing, EQ); | |
62 /* Whether vertical dividers are draggable and displayed */ | |
63 WINDOW_SLOT (vertical_divider_draggable_p, EQ); | |
64 | |
65 #ifdef HAVE_SCROLLBARS | |
66 /* Width of vertical scrollbars. */ | |
67 WINDOW_SLOT (scrollbar_width, EQ); | |
68 /* Height of horizontal scrollbars. */ | |
69 WINDOW_SLOT (scrollbar_height, EQ); | |
70 /* Whether the scrollbars are visible */ | |
71 WINDOW_SLOT (horizontal_scrollbar_visible_p, EQ); | |
72 WINDOW_SLOT (vertical_scrollbar_visible_p, EQ); | |
73 /* Scrollbar positions */ | |
74 WINDOW_SLOT (scrollbar_on_left_p, EQ); | |
75 WINDOW_SLOT (scrollbar_on_top_p, EQ); | |
76 /* Pointer to use for vertical and horizontal scrollbars. */ | |
77 WINDOW_SLOT (scrollbar_pointer, EQ); | |
78 #endif /* HAVE_SCROLLBARS */ | |
79 #ifdef HAVE_TOOLBARS | |
80 /* Toolbar specification for each of the four positions. | |
81 This is not a size hog because the value here is not copied, | |
82 and will be shared with the specs in the specifier. */ | |
83 WINDOW_SLOT_ARRAY (toolbar, 4, EQUAL_WRAPPED); | |
84 /* Toolbar size for each of the four positions. */ | |
85 WINDOW_SLOT_ARRAY (toolbar_size, 4, EQUAL_WRAPPED); | |
86 /* Toolbar border width for each of the four positions. */ | |
87 WINDOW_SLOT_ARRAY (toolbar_border_width, 4, EQUAL_WRAPPED); | |
88 /* Toolbar visibility status for each of the four positions. */ | |
89 WINDOW_SLOT_ARRAY (toolbar_visible_p, 4, EQUAL_WRAPPED); | |
90 /* Caption status of toolbar. */ | |
91 WINDOW_SLOT (toolbar_buttons_captioned_p, EQ); | |
92 /* The following five don't really need to be cached except | |
93 that we need to know when they've changed. */ | |
94 WINDOW_SLOT (default_toolbar, EQUAL_WRAPPED); | |
95 WINDOW_SLOT (default_toolbar_width, EQ); | |
96 WINDOW_SLOT (default_toolbar_height, EQ); | |
97 WINDOW_SLOT (default_toolbar_visible_p, EQ); | |
98 WINDOW_SLOT (default_toolbar_border_width, EQ); | |
99 #endif /* HAVE_TOOLBARS */ | |
100 WINDOW_SLOT (left_margin_width, EQ); | |
101 WINDOW_SLOT (right_margin_width, EQ); | |
102 WINDOW_SLOT (minimum_line_ascent, EQ); | |
103 WINDOW_SLOT (minimum_line_descent, EQ); | |
104 WINDOW_SLOT (use_left_overflow, EQ); | |
105 WINDOW_SLOT (use_right_overflow, EQ); | |
106 #ifdef HAVE_MENUBARS | |
107 /* Visibility of menubar. */ | |
108 WINDOW_SLOT (menubar_visible_p, EQ); | |
109 #endif /* HAVE_MENUBARS */ | |
110 WINDOW_SLOT (text_cursor_visible_p, EQ); | |
111 | |
112 /* Hara-kiri */ | |
113 #undef EQUAL_WRAPPED | |
114 #undef WINDOW_SLOT_DECLARATION | |
115 #undef WINDOW_SLOT | |
116 #undef WINDOW_SLOT_ARRAY |