Mercurial > emacs
annotate src/window.h @ 81772:665f8d0fb99f
(Magic File Names): Rewrite previous change.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 09 Jul 2007 14:12:56 +0000 |
parents | 3d45362f1d38 |
children | 922696f363b0 b8d9a391daf3 95d0cdf160ea |
rev | line source |
---|---|
361 | 1 /* Window definitions for GNU Emacs. |
64770
a0d1312ede66
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64084
diff
changeset
|
2 Copyright (C) 1985, 1986, 1993, 1995, 1997, 1998, 1999, 2000, 2001, |
75348 | 3 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. |
361 | 4 |
5 This file is part of GNU Emacs. | |
6 | |
7 GNU Emacs is free software; you can redistribute it and/or modify | |
8 it under the terms of the GNU General Public License as published by | |
732 | 9 the Free Software Foundation; either version 2, or (at your option) |
361 | 10 any later version. |
11 | |
12 GNU Emacs is distributed in the hope that it will be useful, | |
13 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 GNU General Public License for more details. | |
16 | |
17 You should have received a copy of the GNU General Public License | |
18 along with GNU Emacs; see the file COPYING. If not, write to | |
64084 | 19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 Boston, MA 02110-1301, USA. */ | |
361 | 21 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
22 #ifndef WINDOW_H_INCLUDED |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
23 #define WINDOW_H_INCLUDED |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
24 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
25 #include "dispextern.h" |
361 | 26 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
27 extern Lisp_Object Qleft, Qright; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
28 |
361 | 29 /* Windows are allocated as if they were vectors, but then the |
30 Lisp data type is changed to Lisp_Window. They are garbage | |
31 collected along with the vectors. | |
32 | |
33 All windows in use are arranged into a tree, with pointers up and down. | |
34 | |
35 Windows that are leaves of the tree are actually displayed | |
36 and show the contents of buffers. Windows that are not leaves | |
37 are used for representing the way groups of leaf windows are | |
769 | 38 arranged on the frame. Leaf windows never become non-leaves. |
361 | 39 They are deleted only by calling delete-window on them (but |
40 this can be done implicitly). Combination windows can be created | |
41 and deleted at any time. | |
42 | |
43 A leaf window has a non-nil buffer field, and also | |
44 has markers in its start and pointm fields. Non-leaf windows | |
45 have nil in these fields. | |
46 | |
47 Non-leaf windows are either vertical or horizontal combinations. | |
48 | |
769 | 49 A vertical combination window has children that are arranged on the frame |
361 | 50 one above the next. Its vchild field points to the uppermost child. |
51 The parent field of each of the children points to the vertical | |
52 combination window. The next field of each child points to the | |
53 child below it, or is nil for the lowest child. The prev field | |
54 of each child points to the child above it, or is nil for the | |
55 highest child. | |
56 | |
57 A horizontal combination window has children that are side by side. | |
58 Its hchild field points to the leftmost child. In each child | |
59 the next field points to the child to the right and the prev field | |
60 points to the child to the left. | |
61 | |
62 The children of a vertical combination window may be leaf windows | |
63 or horizontal combination windows. The children of a horizontal | |
64 combination window may be leaf windows or vertical combination windows. | |
65 | |
66 At the top of the tree are two windows which have nil as parent. | |
67 The second of these is minibuf_window. The first one manages all | |
769 | 68 the frame area that is not minibuffer, and is called the root window. |
361 | 69 Different windows can be the root at different times; |
70 initially the root window is a leaf window, but if more windows | |
71 are created then that leaf window ceases to be root and a newly | |
72 made combination window becomes root instead. | |
73 | |
998 | 74 In any case, on screens which have an ordinary window and a |
75 minibuffer, prev of the minibuf window is the root window and next of | |
76 the root window is the minibuf window. On minibufferless screens or | |
77 minibuffer-only screens, the root window and the minibuffer window are | |
1445
3b0906e2b82c
* window.h (struct window): Doc fix.
Jim Blandy <jimb@redhat.com>
parents:
998
diff
changeset
|
78 one and the same, so its prev and next members are nil. |
361 | 79 |
1445
3b0906e2b82c
* window.h (struct window): Doc fix.
Jim Blandy <jimb@redhat.com>
parents:
998
diff
changeset
|
80 A dead window has its buffer, hchild, and vchild windows all nil. */ |
361 | 81 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
82 struct cursor_pos |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
83 { |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
84 /* Pixel position. These are always window relative. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
85 int x, y; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
86 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
87 /* Glyph matrix position. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
88 int hpos, vpos; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
89 }; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
90 |
361 | 91 struct window |
92 { | |
93 /* The first two fields are really the header of a vector */ | |
94 /* The window code does not refer to them. */ | |
8833
e2b9f8616738
(struct window): Use EMACS_INT.
Richard M. Stallman <rms@gnu.org>
parents:
7950
diff
changeset
|
95 EMACS_INT size; |
361 | 96 struct Lisp_Vector *vec_next; |
769 | 97 /* The frame this window is on. */ |
98 Lisp_Object frame; | |
361 | 99 /* t if this window is a minibuffer window. */ |
100 Lisp_Object mini_p; | |
101 /* Following child (to right or down) at same level of tree */ | |
102 Lisp_Object next; | |
103 /* Preceding child (to left or up) at same level of tree */ | |
104 Lisp_Object prev; | |
105 /* First child of this window. */ | |
106 /* vchild is used if this is a vertical combination, | |
107 hchild if this is a horizontal combination. */ | |
108 Lisp_Object hchild, vchild; | |
109 /* The window this one is a child of. */ | |
110 Lisp_Object parent; | |
111 /* The upper left corner coordinates of this window, | |
769 | 112 as integers relative to upper left corner of frame = 0, 0 */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
113 Lisp_Object left_col; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
114 Lisp_Object top_line; |
361 | 115 /* The size of the window */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
116 Lisp_Object total_lines; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
117 Lisp_Object total_cols; |
361 | 118 /* The buffer displayed in this window */ |
119 /* Of the fields vchild, hchild and buffer, only one is non-nil. */ | |
120 Lisp_Object buffer; | |
121 /* A marker pointing to where in the text to start displaying */ | |
122 Lisp_Object start; | |
123 /* A marker pointing to where in the text point is in this window, | |
124 used only when the window is not selected. | |
125 This exists so that when multiple windows show one buffer | |
126 each one can have its own value of point. */ | |
127 Lisp_Object pointm; | |
128 /* Non-nil means next redisplay must use the value of start | |
129 set up for it in advance. Set by scrolling commands. */ | |
130 Lisp_Object force_start; | |
16553
39aa8dd49637
(struct window): New field optional_new_start.
Richard M. Stallman <rms@gnu.org>
parents:
16264
diff
changeset
|
131 /* Non-nil means we have explicitly changed the value of start, |
26249
344d89e485f2
Extend comment for optional_new_start.
Gerd Moellmann <gerd@gnu.org>
parents:
25793
diff
changeset
|
132 but that the next redisplay is not obliged to use the new value. |
344d89e485f2
Extend comment for optional_new_start.
Gerd Moellmann <gerd@gnu.org>
parents:
25793
diff
changeset
|
133 This is used in Fdelete_other_windows to force a call to |
46107 | 134 Vwindow_scroll_functions; also by Frecenter with argument. */ |
16553
39aa8dd49637
(struct window): New field optional_new_start.
Richard M. Stallman <rms@gnu.org>
parents:
16264
diff
changeset
|
135 Lisp_Object optional_new_start; |
361 | 136 /* Number of columns display within the window is scrolled to the left. */ |
137 Lisp_Object hscroll; | |
34746
10539ef3d8e8
(struct window): New member min_hscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
34497
diff
changeset
|
138 /* Minimum hscroll for automatic hscrolling. This is the value |
10539ef3d8e8
(struct window): New member min_hscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
34497
diff
changeset
|
139 the user has set, by set-window-hscroll for example. */ |
10539ef3d8e8
(struct window): New member min_hscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
34497
diff
changeset
|
140 Lisp_Object min_hscroll; |
361 | 141 /* Number saying how recently window was selected */ |
142 Lisp_Object use_time; | |
143 /* Unique number of window assigned when it was created */ | |
144 Lisp_Object sequence_number; | |
145 /* No permanent meaning; used by save-window-excursion's bookkeeping */ | |
146 Lisp_Object temslot; | |
147 /* text.modified of displayed buffer as of last time display completed */ | |
148 Lisp_Object last_modified; | |
16192
b67b2e8eacb3
(struct window): New field last_overlay_modified.
Richard M. Stallman <rms@gnu.org>
parents:
15542
diff
changeset
|
149 /* BUF_OVERLAY_MODIFIED of displayed buffer as of last complete update. */ |
b67b2e8eacb3
(struct window): New field last_overlay_modified.
Richard M. Stallman <rms@gnu.org>
parents:
15542
diff
changeset
|
150 Lisp_Object last_overlay_modified; |
361 | 151 /* Value of point at that time */ |
152 Lisp_Object last_point; | |
15542
f57ee448e79e
(struct window): New field, last_had_star.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
153 /* Non-nil if the buffer was "modified" when the window |
f57ee448e79e
(struct window): New field, last_had_star.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
154 was last updated. */ |
f57ee448e79e
(struct window): New field, last_had_star.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
155 Lisp_Object last_had_star; |
1994
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
156 /* This window's vertical scroll bar. This field is only for use |
1784
11f62e53acff
Make scrollbar structures into lisp objects, so that they can be
Jim Blandy <jimb@redhat.com>
parents:
1717
diff
changeset
|
157 by the window-system-dependent code which implements the |
1994
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
158 scroll bars; it can store anything it likes here. If this |
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
159 window is newly created and we haven't displayed a scroll bar in |
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
160 it yet, or if the frame doesn't have any scroll bars, this is nil. */ |
73ce9dd21093
Use the term `scroll bar', instead of `scrollbar'.
Jim Blandy <jimb@redhat.com>
parents:
1872
diff
changeset
|
161 Lisp_Object vertical_scroll_bar; |
1717
aa7d6d57504b
* frame.h (struct frame): New fields `can_have_scrollbars' and
Jim Blandy <jimb@redhat.com>
parents:
1526
diff
changeset
|
162 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
163 /* Width of left and right marginal areas. A value of nil means |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
164 no margin. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
165 Lisp_Object left_margin_cols, right_margin_cols; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
166 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
167 /* Width of left and right fringes. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
168 A value of nil or t means use frame values. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
169 Lisp_Object left_fringe_width, right_fringe_width; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
170 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
171 /* Non-nil means fringes are drawn outside display margins; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
172 othersize draw them between margin areas and text. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
173 Lisp_Object fringes_outside_margins; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
174 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
175 /* Pixel width of scroll bars. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
176 A value of nil or t means use frame values. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
177 Lisp_Object scroll_bar_width; |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
178 /* Type of vertical scroll bar. A value of nil means |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
179 no scroll bar. A value of t means use frame value. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
180 Lisp_Object vertical_scroll_bar_type; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
181 |
769 | 182 /* Frame coords of mark as of last time display completed */ |
183 /* May be nil if mark does not exist or was not on frame */ | |
361 | 184 Lisp_Object last_mark_x; |
185 Lisp_Object last_mark_y; | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
186 /* Z - the buffer position of the last glyph in the current matrix |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
187 of W. Only valid if WINDOW_END_VALID is not nil. */ |
361 | 188 Lisp_Object window_end_pos; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
189 /* Glyph matrix row of the last glyph in the current matrix |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
190 of W. Only valid if WINDOW_END_VALID is not nil. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
191 Lisp_Object window_end_vpos; |
361 | 192 /* t if window_end_pos is truly valid. |
193 This is nil if nontrivial redisplay is preempted | |
769 | 194 since in that case the frame image that window_end_pos |
195 did not get onto the frame. */ | |
361 | 196 Lisp_Object window_end_valid; |
197 /* Non-nil means must regenerate mode line of this window */ | |
198 Lisp_Object update_mode_line; | |
199 /* Non-nil means current value of `start' | |
200 was the beginning of a line when it was chosen. */ | |
201 Lisp_Object start_at_line_beg; | |
202 /* Display-table to use for displaying chars in this window. | |
203 Nil means use the buffer's own display-table. */ | |
204 Lisp_Object display_table; | |
205 /* Non-nil means window is marked as dedicated. */ | |
206 Lisp_Object dedicated; | |
2304
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
207 /* Line number and position of a line somewhere above the |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
208 top of the screen. */ |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
209 /* If this field is nil, it means we don't have a base line. */ |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
210 Lisp_Object base_line_number; |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
211 /* If this field is nil, it means we don't have a base line. |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
212 If it is a buffer, it means don't display the line number |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
213 as long as the window shows that buffer. */ |
480abddc8bdd
(struct window): New fields base_line_number and base_line_pos.
Richard M. Stallman <rms@gnu.org>
parents:
1994
diff
changeset
|
214 Lisp_Object base_line_pos; |
2856
794899b97115
(struct window): New slot region_showing.
Richard M. Stallman <rms@gnu.org>
parents:
2304
diff
changeset
|
215 /* If we have highlighted the region (or any part of it), |
794899b97115
(struct window): New slot region_showing.
Richard M. Stallman <rms@gnu.org>
parents:
2304
diff
changeset
|
216 this is the mark position that we used, as an integer. */ |
794899b97115
(struct window): New slot region_showing.
Richard M. Stallman <rms@gnu.org>
parents:
2304
diff
changeset
|
217 Lisp_Object region_showing; |
10440
055b4219b6d7
(struct window): New member column_number_displayed.
Karl Heuer <kwzh@gnu.org>
parents:
8833
diff
changeset
|
218 /* The column number currently displayed in this window's mode line, |
055b4219b6d7
(struct window): New member column_number_displayed.
Karl Heuer <kwzh@gnu.org>
parents:
8833
diff
changeset
|
219 or nil if column numbers are not being displayed. */ |
055b4219b6d7
(struct window): New member column_number_displayed.
Karl Heuer <kwzh@gnu.org>
parents:
8833
diff
changeset
|
220 Lisp_Object column_number_displayed; |
13458
adc8fc9fe6ed
(struct window): New field redisplay_end_trigger.
Richard M. Stallman <rms@gnu.org>
parents:
12632
diff
changeset
|
221 /* If redisplay in this window goes beyond this buffer position, |
adc8fc9fe6ed
(struct window): New field redisplay_end_trigger.
Richard M. Stallman <rms@gnu.org>
parents:
12632
diff
changeset
|
222 must run the redisplay-end-trigger-hook. */ |
adc8fc9fe6ed
(struct window): New field redisplay_end_trigger.
Richard M. Stallman <rms@gnu.org>
parents:
12632
diff
changeset
|
223 Lisp_Object redisplay_end_trigger; |
25256
631f514ef580
(struct window): New field too_small_ok.
Gerd Moellmann <gerd@gnu.org>
parents:
24996
diff
changeset
|
224 /* Non-nil means don't delete this window for becoming "too small". */ |
631f514ef580
(struct window): New field too_small_ok.
Gerd Moellmann <gerd@gnu.org>
parents:
24996
diff
changeset
|
225 Lisp_Object too_small_ok; |
25793
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
226 |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
227 /* Original window height and top before mini-window was |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
228 enlarged. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
229 Lisp_Object orig_total_lines, orig_top_line; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
230 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
231 /* No Lisp data may follow below this point without changing |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
232 mark_object in alloc.c. The member current_matrix must be the |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
233 first non-Lisp member. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
234 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
235 /* Glyph matrices. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
236 struct glyph_matrix *current_matrix; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
237 struct glyph_matrix *desired_matrix; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
238 |
56498
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
239 /* Scaling factor for the glyph_matrix size calculation in this window. |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
240 Used if window contains many small images or uses proportional fonts, |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
241 as the normal may yield a matrix which is too small. */ |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
242 int nrows_scale_factor, ncols_scale_factor; |
ee3ccdb058d1
(struct glyph_matrix): New members nrows_scale_factor
Kim F. Storm <storm@cua.dk>
parents:
56135
diff
changeset
|
243 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
244 /* Cursor position as of last update that completed without |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
245 pause. This is the position of last_point. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
246 struct cursor_pos last_cursor; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
247 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
248 /* Intended cursor position. This is a position within the |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
249 glyph matrix. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
250 struct cursor_pos cursor; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
251 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
252 /* Where the cursor actually is. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
253 struct cursor_pos phys_cursor; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
254 |
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
255 /* Cursor type and width of last cursor drawn on the window. |
43619
03e9839bc157
(struct window): New member phys_cursor_width.
Kim F. Storm <storm@cua.dk>
parents:
43595
diff
changeset
|
256 Used for X and w32 frames; -1 initially. */ |
03e9839bc157
(struct window): New member phys_cursor_width.
Kim F. Storm <storm@cua.dk>
parents:
43595
diff
changeset
|
257 int phys_cursor_type, phys_cursor_width; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
258 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
259 /* This is handy for undrawing the cursor. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
260 int phys_cursor_ascent, phys_cursor_height; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
261 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
262 /* Non-zero means the cursor is currently displayed. This can be |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
263 set to zero by functions overpainting the cursor image. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
264 unsigned phys_cursor_on_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
265 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
266 /* 0 means cursor is logically on, 1 means it's off. Used for |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
267 blinking cursor. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
268 unsigned cursor_off_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
269 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
270 /* Value of cursor_off_p as of the last redisplay. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
271 unsigned last_cursor_off_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
272 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
273 /* 1 means desired matrix has been build and window must be |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
274 updated in update_frame. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
275 unsigned must_be_updated_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
276 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
277 /* Flag indicating that this window is not a real one. |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
278 Currently only used for menu bar windows of frames. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
279 unsigned pseudo_window_p : 1; |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
280 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
281 /* Amount by which lines of this window are scrolled in |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
282 y-direction (smooth scrolling). */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
283 int vscroll; |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
284 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
285 /* Z_BYTE - the buffer position of the last glyph in the current matrix |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
286 of W. Only valid if WINDOW_END_VALID is not nil. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
287 int window_end_bytepos; |
25518
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
288 |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
289 /* 1 means the window start of this window is frozen and may not |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
290 be changed during redisplay. If point is not in the window, |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
291 accept that. */ |
319e90e7bd82
New member frozen_window_start_p.
Gerd Moellmann <gerd@gnu.org>
parents:
25376
diff
changeset
|
292 unsigned frozen_window_start_p : 1; |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
293 }; |
361 | 294 |
295 /* 1 if W is a minibuffer window. */ | |
296 | |
39585 | 297 #define MINI_WINDOW_P(W) (!NILP ((W)->mini_p)) |
361 | 298 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
299 /* General window layout: |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
300 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
301 LEFT_EDGE_COL RIGHT_EDGE_COL |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
302 | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
303 | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
304 | BOX_LEFT_EDGE_COL | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
305 | | BOX_RIGHT_EDGE_COL | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
306 | | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
307 v v v v |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
308 <-><-><---><-----------><---><-><-> |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
309 ^ ^ ^ ^ ^ ^ ^ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
310 | | | | | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
311 | | | | | | +-- RIGHT_SCROLL_BAR_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
312 | | | | | +----- RIGHT_FRINGE_WIDTH |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
313 | | | | +--------- RIGHT_MARGIN_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
314 | | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
315 | | | +------------------ TEXT_AREA_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
316 | | | |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
317 | | +--------------------------- LEFT_MARGIN_COLS |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
318 | +------------------------------- LEFT_FRINGE_WIDTH |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
319 +---------------------------------- LEFT_SCROLL_BAR_COLS |
55028
0f5f3d0c5f4c
(Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
Kim F. Storm <storm@cua.dk>
parents:
54228
diff
changeset
|
320 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
321 */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
322 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
323 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
324 /* A handy macro. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
325 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
326 #define WINDOW_XFRAME(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
327 (XFRAME (WINDOW_FRAME ((W)))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
328 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
329 /* Return the canonical column width of the frame of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
330 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
331 #define WINDOW_FRAME_COLUMN_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
332 (FRAME_COLUMN_WIDTH (WINDOW_XFRAME ((W)))) |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
333 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
334 /* Return the canonical column width of the frame of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
335 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
336 #define WINDOW_FRAME_LINE_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
337 (FRAME_LINE_HEIGHT (WINDOW_XFRAME ((W)))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
338 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
339 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
340 /* Return the frame width in canonical column units. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
341 This includes scroll bars and fringes. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
342 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
343 #define WINDOW_TOTAL_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
344 (XFASTINT ((W)->total_cols)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
345 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
346 /* Return the frame height in canonical line units. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
347 This includes header and mode lines, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
348 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
349 #define WINDOW_TOTAL_LINES(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
350 (XFASTINT ((W)->total_lines)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
351 |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
352 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
353 /* Return the total pixel width of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
354 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
355 #define WINDOW_TOTAL_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
356 (WINDOW_TOTAL_COLS (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
357 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
358 /* Return the total pixel height of window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
359 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
360 #define WINDOW_TOTAL_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
361 (WINDOW_TOTAL_LINES (W) * WINDOW_FRAME_LINE_HEIGHT (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
362 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
363 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
364 /* Return the canonical frame column at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
365 This includes a left-hand scroll bar, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
366 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
367 #define WINDOW_LEFT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
368 (XFASTINT ((W)->left_col)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
369 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
370 /* Return the canonical frame column before which window W ends. |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
371 This includes a right-hand scroll bar, if any. */ |
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
372 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
373 #define WINDOW_RIGHT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
374 (WINDOW_LEFT_EDGE_COL (W) + WINDOW_TOTAL_COLS (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
375 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
376 /* Return the canonical frame line at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
377 This includes a header line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
378 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
379 #define WINDOW_TOP_EDGE_LINE(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
380 (XFASTINT ((W)->top_line)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
381 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
382 /* Return the canonical frame line before which window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
383 This includes a mode line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
384 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
385 #define WINDOW_BOTTOM_EDGE_LINE(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
386 (WINDOW_TOP_EDGE_LINE (W) + WINDOW_TOTAL_LINES (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
387 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
388 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
389 /* Return the frame x-position at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
390 This includes a left-hand scroll bar, if any. */ |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
391 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
392 #define WINDOW_LEFT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
393 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
394 + WINDOW_LEFT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
395 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
396 /* Return the frame x- position before which window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
397 This includes a right-hand scroll bar, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
398 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
399 #define WINDOW_RIGHT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
400 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
401 + WINDOW_RIGHT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
402 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
403 /* Return the frame y-position at which window W starts. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
404 This includes a header line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
405 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
406 #define WINDOW_TOP_EDGE_Y(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
407 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
408 + WINDOW_TOP_EDGE_LINE (W) * WINDOW_FRAME_LINE_HEIGHT (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
409 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
410 /* Return the frame y-position before which window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
411 This includes a mode line, if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
412 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
413 #define WINDOW_BOTTOM_EDGE_Y(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
414 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
415 + WINDOW_BOTTOM_EDGE_LINE (W) * WINDOW_FRAME_LINE_HEIGHT (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
416 |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
417 |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
418 /* 1 if window W takes up the full width of its frame. */ |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
419 |
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
420 #define WINDOW_FULL_WIDTH_P(W) \ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
421 (WINDOW_TOTAL_COLS (W) == FRAME_TOTAL_COLS (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
422 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
423 /* 1 if window W's has no other windows to its left in its frame. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
424 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
425 #define WINDOW_LEFTMOST_P(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
426 (WINDOW_LEFT_EDGE_COL (W) == 0) |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
427 |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
428 /* 1 if window W's has no other windows to its right in its frame. */ |
16264
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
429 |
012a1d850ee8
(WINDOW_LEFT_MARGIN): New macro.
Richard M. Stallman <rms@gnu.org>
parents:
16192
diff
changeset
|
430 #define WINDOW_RIGHTMOST_P(W) \ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
431 (WINDOW_RIGHT_EDGE_COL (W) == FRAME_TOTAL_COLS (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
432 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
433 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
434 /* Return the frame column at which the text (or left fringe) in |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
435 window W starts. This is different from the `LEFT_EDGE' because it |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
436 does not include a left-hand scroll bar if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
437 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
438 #define WINDOW_BOX_LEFT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
439 (WINDOW_LEFT_EDGE_COL (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
440 + WINDOW_LEFT_SCROLL_BAR_COLS (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
441 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
442 /* Return the window column before which the text in window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
443 This is different from WINDOW_RIGHT_EDGE_COL because it does not |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
444 include a scroll bar or window-separating line on the right edge. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
445 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
446 #define WINDOW_BOX_RIGHT_EDGE_COL(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
447 (WINDOW_RIGHT_EDGE_COL (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
448 - WINDOW_RIGHT_SCROLL_BAR_COLS (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
449 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
450 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
451 /* Return the frame position at which the text (or left fringe) in |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
452 window W starts. This is different from the `LEFT_EDGE' because it |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
453 does not include a left-hand scroll bar if any. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
454 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
455 #define WINDOW_BOX_LEFT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
456 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
457 + WINDOW_BOX_LEFT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
458 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
459 /* Return the window column before which the text in window W ends. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
460 This is different from WINDOW_RIGHT_EDGE_COL because it does not |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
461 include a scroll bar or window-separating line on the right edge. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
462 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
463 #define WINDOW_BOX_RIGHT_EDGE_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
464 (FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
465 + WINDOW_BOX_RIGHT_EDGE_COL (W) * WINDOW_FRAME_COLUMN_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
466 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
467 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
468 /* Width of left margin area in columns. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
469 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
470 #define WINDOW_LEFT_MARGIN_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
471 (NILP ((W)->left_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
472 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
473 : XINT ((W)->left_margin_cols)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
474 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
475 /* Width of right marginal area in columns. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
476 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
477 #define WINDOW_RIGHT_MARGIN_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
478 (NILP ((W)->right_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
479 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
480 : XINT ((W)->right_margin_cols)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
481 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
482 /* Width of left margin area in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
483 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
484 #define WINDOW_LEFT_MARGIN_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
485 (NILP ((W)->left_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
486 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
487 : (XINT ((W)->left_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
488 * WINDOW_FRAME_COLUMN_WIDTH (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
489 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
490 /* Width of right marginal area in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
491 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
492 #define WINDOW_RIGHT_MARGIN_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
493 (NILP ((W)->right_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
494 ? 0 \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
495 : (XINT ((W)->right_margin_cols) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
496 * WINDOW_FRAME_COLUMN_WIDTH (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
497 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
498 /* Total width of fringes reserved for drawing truncation bitmaps, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
499 continuation bitmaps and alike. The width is in canonical char |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
500 units of the frame. This must currently be the case because window |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
501 sizes aren't pixel values. If it weren't the case, we wouldn't be |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
502 able to split windows horizontally nicely. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
503 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
504 #define WINDOW_FRINGE_COLS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
505 ((INTEGERP ((W)->left_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
506 || INTEGERP ((W)->right_fringe_width)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
507 ? ((WINDOW_LEFT_FRINGE_WIDTH (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
508 + WINDOW_RIGHT_FRINGE_WIDTH (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
509 + WINDOW_FRAME_COLUMN_WIDTH (W) - 1) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
510 / WINDOW_FRAME_COLUMN_WIDTH (W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
511 : FRAME_FRINGE_COLS (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
512 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
513 /* Column-width of the left and right fringe. */ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
514 |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
515 #define WINDOW_LEFT_FRINGE_COLS(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
516 ((WINDOW_LEFT_FRINGE_WIDTH ((W)) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
517 + WINDOW_FRAME_COLUMN_WIDTH (W) - 1) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
518 / WINDOW_FRAME_COLUMN_WIDTH (W)) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
519 |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
520 #define WINDOW_RIGHT_FRINGE_COLS(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
521 ((WINDOW_RIGHT_FRINGE_WIDTH ((W)) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
522 + WINDOW_FRAME_COLUMN_WIDTH (W) - 1) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
523 / WINDOW_FRAME_COLUMN_WIDTH (W)) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
524 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
525 /* Pixel-width of the left and right fringe. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
526 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
527 #define WINDOW_LEFT_FRINGE_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
528 (INTEGERP ((W)->left_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
529 ? XFASTINT ((W)->left_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
530 : FRAME_LEFT_FRINGE_WIDTH (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
531 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
532 #define WINDOW_RIGHT_FRINGE_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
533 (INTEGERP ((W)->right_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
534 ? XFASTINT ((W)->right_fringe_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
535 : FRAME_RIGHT_FRINGE_WIDTH (WINDOW_XFRAME (W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
536 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
537 /* Total width of fringes in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
538 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
539 #define WINDOW_TOTAL_FRINGE_WIDTH(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
540 (WINDOW_LEFT_FRINGE_WIDTH (W) + WINDOW_RIGHT_FRINGE_WIDTH (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
541 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
542 /* Are fringes outside display margins in window W. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
543 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
544 #define WINDOW_HAS_FRINGES_OUTSIDE_MARGINS(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
545 (!NILP ((W)->fringes_outside_margins)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
546 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
547 /* Say whether scroll bars are currently enabled for window W, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
548 and which side they are on. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
549 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
550 #define WINDOW_VERTICAL_SCROLL_BAR_TYPE(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
551 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
552 ? FRAME_VERTICAL_SCROLL_BAR_TYPE (WINDOW_XFRAME (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
553 : EQ ((w)->vertical_scroll_bar_type, Qleft) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
554 ? vertical_scroll_bar_left \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
555 : EQ ((w)->vertical_scroll_bar_type, Qright) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
556 ? vertical_scroll_bar_right \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
557 : vertical_scroll_bar_none) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
558 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
559 #define WINDOW_HAS_VERTICAL_SCROLL_BAR(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
560 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
561 ? FRAME_HAS_VERTICAL_SCROLL_BARS (WINDOW_XFRAME (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
562 : !NILP ((w)->vertical_scroll_bar_type)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
563 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
564 #define WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
565 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
566 ? FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT (WINDOW_XFRAME (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
567 : EQ ((w)->vertical_scroll_bar_type, Qleft)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
568 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
569 #define WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
570 (EQ ((w)->vertical_scroll_bar_type, Qt) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
571 ? FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT (WINDOW_XFRAME (w))\ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
572 : EQ ((w)->vertical_scroll_bar_type, Qright)) |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
46107
diff
changeset
|
573 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
574 /* Width that a scroll bar in window W should have, if there is one. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
575 Measured in pixels. If scroll bars are turned off, this is still |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
576 nonzero. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
577 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
578 #define WINDOW_CONFIG_SCROLL_BAR_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
579 (INTEGERP ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
580 ? XFASTINT ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
581 : FRAME_CONFIG_SCROLL_BAR_WIDTH (WINDOW_XFRAME (w))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
582 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
583 /* Width that a scroll bar in window W should have, if there is one. |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
584 Measured in columns (characters). If scroll bars are turned off, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
585 this is still nonzero. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
586 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
587 #define WINDOW_CONFIG_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
588 (INTEGERP ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
589 ? ((XFASTINT ((w)->scroll_bar_width) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
590 + WINDOW_FRAME_COLUMN_WIDTH (w) - 1) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
591 / WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
592 : FRAME_CONFIG_SCROLL_BAR_COLS (WINDOW_XFRAME (w))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
593 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
594 /* Width of a scroll bar in window W, measured in columns (characters), |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
595 but only if scroll bars are on the left. If scroll bars are on |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
596 the right in this frame, or there are no scroll bars, value is 0. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
597 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
598 #define WINDOW_LEFT_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
599 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
600 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
601 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
602 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
603 /* Width of a left scroll bar area in window W , measured in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
604 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
605 #define WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
606 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
607 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w) * WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
608 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
609 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
610 /* Width of a scroll bar in window W, measured in columns (characters), |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
611 but only if scroll bars are on the right. If scroll bars are on |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
612 the left in this frame, or there are no scroll bars, value is 0. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
613 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
614 #define WINDOW_RIGHT_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
615 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
616 ? WINDOW_CONFIG_SCROLL_BAR_COLS (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
617 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
618 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
619 /* Width of a left scroll bar area in window W , measured in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
620 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
621 #define WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
622 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
623 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w) * WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
624 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
625 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
626 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
627 /* Actual width of a scroll bar in window W, measured in columns. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
628 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
629 #define WINDOW_SCROLL_BAR_COLS(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
630 (WINDOW_HAS_VERTICAL_SCROLL_BAR (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
631 ? WINDOW_CONFIG_SCROLL_BAR_COLS (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
632 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
633 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
634 /* Width of a left scroll bar area in window W , measured in pixels. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
635 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
636 #define WINDOW_SCROLL_BAR_AREA_WIDTH(w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
637 (WINDOW_HAS_VERTICAL_SCROLL_BAR (w) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
638 ? (WINDOW_CONFIG_SCROLL_BAR_COLS (w) * WINDOW_FRAME_COLUMN_WIDTH (w)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
639 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
640 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
641 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
642 /* Return the frame position where the scroll bar of window W starts. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
643 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
644 #define WINDOW_SCROLL_BAR_AREA_X(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
645 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
646 ? WINDOW_BOX_RIGHT_EDGE_X (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
647 : WINDOW_LEFT_EDGE_X (W)) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
648 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
649 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
650 /* Height in pixels, and in lines, of the mode line. |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
651 May be zero if W doesn't have a mode line. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
652 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
653 #define WINDOW_MODE_LINE_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
654 (WINDOW_WANTS_MODELINE_P ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
655 ? CURRENT_MODE_LINE_HEIGHT (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
656 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
657 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
658 #define WINDOW_MODE_LINE_LINES(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
659 (!! WINDOW_WANTS_MODELINE_P ((W))) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
660 |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
661 /* Height in pixels, and in lines, of the header line. |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
662 Zero if W doesn't have a header line. */ |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
663 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
664 #define WINDOW_HEADER_LINE_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
665 (WINDOW_WANTS_HEADER_LINE_P ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
666 ? CURRENT_HEADER_LINE_HEIGHT (W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
667 : 0) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
668 |
51426
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
669 #define WINDOW_HEADER_LINE_LINES(W) \ |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
670 (!! WINDOW_WANTS_HEADER_LINE_P ((W))) |
61b517a32e7b
(WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
Richard M. Stallman <rms@gnu.org>
parents:
51239
diff
changeset
|
671 |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
672 /* Pixel height of window W without mode line. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
673 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
674 #define WINDOW_BOX_HEIGHT_NO_MODE_LINE(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
675 (WINDOW_TOTAL_HEIGHT ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
676 - WINDOW_MODE_LINE_HEIGHT ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
677 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
678 /* Pixel height of window W without mode and header line. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
679 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
680 #define WINDOW_BOX_TEXT_HEIGHT(W) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
681 (WINDOW_TOTAL_HEIGHT ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
682 - WINDOW_MODE_LINE_HEIGHT ((W)) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
683 - WINDOW_HEADER_LINE_HEIGHT ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
684 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
685 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
686 /* Convert window W relative pixel X to frame pixel coordinates. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
687 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
688 #define WINDOW_TO_FRAME_PIXEL_X(W, X) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
689 ((X) + WINDOW_BOX_LEFT_EDGE_X ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
690 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
691 /* Convert window W relative pixel Y to frame pixel coordinates. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
692 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
693 #define WINDOW_TO_FRAME_PIXEL_Y(W, Y) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
694 ((Y) + WINDOW_TOP_EDGE_Y ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
695 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
696 /* Convert frame relative pixel X to window relative pixel X. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
697 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
698 #define FRAME_TO_WINDOW_PIXEL_X(W, X) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
699 ((X) - WINDOW_BOX_LEFT_EDGE_X ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
700 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
701 /* Convert frame relative pixel Y to window relative pixel Y. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
702 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
703 #define FRAME_TO_WINDOW_PIXEL_Y(W, Y) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
704 ((Y) - WINDOW_TOP_EDGE_Y ((W))) |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
705 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
706 /* Convert a text area relative x-position in window W to frame X |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
707 pixel coordinates. */ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
708 |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
709 #define WINDOW_TEXT_TO_FRAME_PIXEL_X(W, X) \ |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
710 (window_box_left ((W), TEXT_AREA) + (X)) |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
711 |
361 | 712 /* This is the window in which the terminal's cursor should |
713 be left when nothing is being done with it. This must | |
714 always be a leaf window, and its buffer is selected by | |
715 the top level editing loop at the end of each command. | |
716 | |
717 This value is always the same as | |
769 | 718 FRAME_SELECTED_WINDOW (selected_frame). */ |
361 | 719 |
720 extern Lisp_Object selected_window; | |
721 | |
722 /* This is a time stamp for window selection, so we can find the least | |
723 recently used window. Its only users are Fselect_window, | |
769 | 724 init_window_once, and make_frame. */ |
361 | 725 |
726 extern int window_select_count; | |
727 | |
769 | 728 /* The minibuffer window of the selected frame. |
361 | 729 Note that you cannot test for minibufferness of an arbitrary window |
998 | 730 by comparing against this; use the MINI_WINDOW_P macro instead. */ |
361 | 731 |
732 extern Lisp_Object minibuf_window; | |
733 | |
43572
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
734 /* Non-nil means it is the window whose mode line should be |
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
735 shown as the selected window when the minibuffer is selected. */ |
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
736 |
43595
b7964dae2379
(minibuf_selected_window): Renamed from Vminibuf_selected_window.
Kim F. Storm <storm@cua.dk>
parents:
43572
diff
changeset
|
737 extern Lisp_Object minibuf_selected_window; |
43572
33baa349c070
(Vminibuf_selected_window): Declare extern.
Kim F. Storm <storm@cua.dk>
parents:
39585
diff
changeset
|
738 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
739 /* Non-nil => window to for C-M-v to scroll when the minibuffer is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
740 selected. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
741 |
361 | 742 extern Lisp_Object Vminibuf_scroll_window; |
743 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
744 /* Nil or a symbol naming the window system under which emacs is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
745 running ('x is the only current possibility) */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
746 |
361 | 747 extern Lisp_Object Vwindow_system; |
748 | |
749 /* Version number of X windows: 10, 11 or nil. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
750 |
361 | 751 extern Lisp_Object Vwindow_system_version; |
752 | |
753 /* Window that the mouse is over (nil if no mouse support). */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
754 |
361 | 755 extern Lisp_Object Vmouse_window; |
756 | |
757 /* Last mouse-click event (nil if no mouse support). */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
758 |
361 | 759 extern Lisp_Object Vmouse_event; |
760 | |
20349 | 761 EXFUN (Fnext_window, 3); |
51048
7ac9c3bea5ea
(Fselect_window): Add optional arg `norecord'.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50996
diff
changeset
|
762 EXFUN (Fselect_window, 2); |
20856
1e37bbef998c
Change argument number of Fdisplay_buffer to 3.
Kenichi Handa <handa@m17n.org>
parents:
20700
diff
changeset
|
763 EXFUN (Fdisplay_buffer, 3); |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
764 EXFUN (Fset_window_buffer, 3); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
765 EXFUN (Fset_window_hscroll, 2); |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
766 EXFUN (Fwindow_hscroll, 1); |
55028
0f5f3d0c5f4c
(Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
Kim F. Storm <storm@cua.dk>
parents:
54228
diff
changeset
|
767 EXFUN (Fset_window_vscroll, 3); |
0f5f3d0c5f4c
(Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
Kim F. Storm <storm@cua.dk>
parents:
54228
diff
changeset
|
768 EXFUN (Fwindow_vscroll, 2); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
769 EXFUN (Fset_window_margins, 3); |
32991
a3db89bef2e5
* window.h (Fwindow_live_p): Declare.
Ken Raeburn <raeburn@raeburn.org>
parents:
30361
diff
changeset
|
770 EXFUN (Fwindow_live_p, 1); |
34497 | 771 EXFUN (Fset_window_point, 2); |
20349 | 772 extern Lisp_Object make_window P_ ((void)); |
773 extern void delete_window P_ ((Lisp_Object)); | |
50234
95acb541716a
(window_from_coordinates): Fix prototype.
Kim F. Storm <storm@cua.dk>
parents:
49600
diff
changeset
|
774 extern Lisp_Object window_from_coordinates P_ ((struct frame *, int, int, |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
775 enum window_part *, |
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
776 int *, int*, int)); |
20349 | 777 EXFUN (Fwindow_dedicated_p, 1); |
778 extern int window_height P_ ((Lisp_Object)); | |
779 extern int window_width P_ ((Lisp_Object)); | |
780 extern void set_window_height P_ ((Lisp_Object, int, int)); | |
781 extern void set_window_width P_ ((Lisp_Object, int, int)); | |
50368
d7a1f1ee84e9
(change_window_heights): Add prototype.
Kim F. Storm <storm@cua.dk>
parents:
50234
diff
changeset
|
782 extern void change_window_heights P_ ((Lisp_Object, int)); |
20349 | 783 extern void delete_all_subwindows P_ ((struct window *)); |
25713
54a8aba6712b
(freeze_window_starts): Fix typo in prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
25518
diff
changeset
|
784 extern void freeze_window_starts P_ ((struct frame *, int)); |
30361
e1ea6e214873
(foreach_window): Change prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
26249
diff
changeset
|
785 extern void foreach_window P_ ((struct frame *, |
e1ea6e214873
(foreach_window): Change prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
26249
diff
changeset
|
786 int (* fn) (struct window *, void *), |
e1ea6e214873
(foreach_window): Change prototype.
Gerd Moellmann <gerd@gnu.org>
parents:
26249
diff
changeset
|
787 void *)); |
25793
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
788 extern void grow_mini_window P_ ((struct window *, int)); |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
789 extern void shrink_mini_window P_ ((struct window *)); |
2bbee3534773
(struct window): New members orig_top, orig_height.
Gerd Moellmann <gerd@gnu.org>
parents:
25740
diff
changeset
|
790 |
361 | 791 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
792 /* Make WINDOW display BUFFER as its contents. RUN_HOOKS_P non-zero |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
793 means it's allowed to run hooks. See make_frame for a case where |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
794 it's not allowed. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
795 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
796 void set_window_buffer P_ ((Lisp_Object window, Lisp_Object buffer, |
51208
86d74f5ea803
(struct window): Rename members left to left_col,
Kim F. Storm <storm@cua.dk>
parents:
51048
diff
changeset
|
797 int run_hooks_p, int keep_margins_p)); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
798 |
361 | 799 /* Prompt to display in front of the minibuffer contents. */ |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
800 |
7950
c0a4d26e7498
(minibuf_prompt): Now a Lisp_Object. All uses changed.
Karl Heuer <kwzh@gnu.org>
parents:
5235
diff
changeset
|
801 extern Lisp_Object minibuf_prompt; |
361 | 802 |
488 | 803 /* The visual width of the above. */ |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
804 |
488 | 805 extern int minibuf_prompt_width; |
806 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
807 /* This is the window where the echo area message was displayed. It |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
808 is always a minibuffer window, but it may not be the same window |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
809 currently active as a minibuffer. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
810 |
12632
81f12c1d0178
(echo_area_window): Declared.
Richard M. Stallman <rms@gnu.org>
parents:
11171
diff
changeset
|
811 extern Lisp_Object echo_area_window; |
81f12c1d0178
(echo_area_window): Declared.
Richard M. Stallman <rms@gnu.org>
parents:
11171
diff
changeset
|
812 |
361 | 813 /* Depth in recursive edits. */ |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
814 |
361 | 815 extern int command_loop_level; |
816 | |
817 /* Depth in minibuffer invocations. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
818 |
361 | 819 extern int minibuf_level; |
820 | |
821 /* true iff we should redraw the mode lines on the next redisplay. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
822 |
361 | 823 extern int update_mode_lines; |
824 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
825 /* Nonzero if BEGV - BEG or Z - ZV of current buffer has changed since |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
826 last redisplay that finished. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
827 |
361 | 828 extern int clip_changed; |
829 | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
830 /* Nonzero if window sizes or contents have changed since last |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
831 redisplay that finished */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
832 |
361 | 833 extern int windows_or_buffers_changed; |
834 | |
43988
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
835 /* Nonzero means a frame's cursor type has been changed. */ |
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
836 |
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
837 extern int cursor_type_changed; |
44b653625dac
(cursor_type_changed): Hew variable.
Richard M. Stallman <rms@gnu.org>
parents:
43619
diff
changeset
|
838 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
839 /* Number of windows displaying the selected buffer. Normally this is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
840 1, but it can be more. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
841 |
361 | 842 extern int buffer_shared; |
998 | 843 |
844 /* If *ROWS or *COLS are too small a size for FRAME, set them to the | |
845 minimum allowable size. */ | |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
846 |
20349 | 847 extern void check_frame_size P_ ((struct frame *frame, int *rows, int *cols)); |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
848 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
849 /* Return a pointer to the glyph W's physical cursor is on. Value is |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
850 null if W's current matrix is invalid, so that no meaningfull glyph |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
851 can be returned. */ |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
852 |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
853 struct glyph *get_phys_cursor_glyph P_ ((struct window *w)); |
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
854 |
35399
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
855 /* Value is non-zero if WINDOW is a live window. */ |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
856 |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
857 #define WINDOW_LIVE_P(WINDOW) \ |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
858 (WINDOWP ((WINDOW)) && !NILP (XWINDOW ((WINDOW))->buffer)) |
21663e5e70de
(WINDOW_LIVE_P): New macro.
Gerd Moellmann <gerd@gnu.org>
parents:
34746
diff
changeset
|
859 |
50996
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
860 |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
861 /* These used to be in lisp.h. */ |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
862 |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
863 extern Lisp_Object Qwindowp, Qwindow_live_p; |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
864 extern Lisp_Object Vwindow_list; |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
865 |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
866 EXFUN (Fwindow_end, 2); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
867 EXFUN (Fselected_window, 0); |
67995
ab3fdc2bada6
(Fwindow_minibuffer_p): Declare (for use in minibuf.c).
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
65603
diff
changeset
|
868 EXFUN (Fwindow_minibuffer_p, 1); |
50996
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
869 EXFUN (Fdelete_window, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
870 EXFUN (Fwindow_buffer, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
871 EXFUN (Fget_buffer_window, 2); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
872 EXFUN (Fsave_window_excursion, UNEVALLED); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
873 EXFUN (Fsplit_window, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
874 EXFUN (Fset_window_configuration, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
875 EXFUN (Fcurrent_window_configuration, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
876 extern int compare_window_configurations P_ ((Lisp_Object, Lisp_Object, int)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
877 EXFUN (Fcoordinates_in_window_p, 2); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
878 EXFUN (Fwindow_at, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
879 EXFUN (Fpos_visible_in_window_p, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
880 extern void mark_window_cursors_off P_ ((struct window *)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
881 extern int window_internal_height P_ ((struct window *)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
882 extern int window_internal_width P_ ((struct window *)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
883 EXFUN (Frecenter, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
884 EXFUN (Fscroll_other_window, 1); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
885 EXFUN (Fset_window_start, 3); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
886 extern void temp_output_buffer_show P_ ((Lisp_Object)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
887 extern void replace_buffer_in_all_windows P_ ((Lisp_Object)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
888 extern void init_window_once P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
889 extern void init_window P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
890 extern void syms_of_window P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
891 extern void keys_of_window P_ ((void)); |
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
892 |
51239
d4574290ba8b
(window_box_text_cols): Declare.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
51208
diff
changeset
|
893 extern int window_box_text_cols P_ ((struct window *w)); |
50996
9c6d139afc0f
(Qwindowp, Qwindow_live_p, Vwindow_list)
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50368
diff
changeset
|
894 |
24996
429ec2c075e4
(struct window): Add vscroll.
Gerd Moellmann <gerd@gnu.org>
parents:
21938
diff
changeset
|
895 #endif /* not WINDOW_H_INCLUDED */ |
52401 | 896 |
897 /* arch-tag: d4a6942f-e433-4ffe-ac10-2c3574f28577 | |
898 (do not change this comment) */ |