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