summaryrefslogtreecommitdiff
path: root/src/window.h
diff options
context:
space:
mode:
authorDmitry Antipov <dmantipov@yandex.ru>2013-02-01 11:23:18 +0400
committerDmitry Antipov <dmantipov@yandex.ru>2013-02-01 11:23:18 +0400
commit422ff52b80abd9233225b22ccdc5263631cbe482 (patch)
tree4baeece0a77f8281603ae6ce4f5e7624caab0711 /src/window.h
parent8654f9d7d6d7c3ee97232a34a40250dcbc57af8e (diff)
downloademacs-422ff52b80abd9233225b22ccdc5263631cbe482.tar.gz
* window.h (struct window): Convert base_line_number, base_line_pos
and column_number_displayed members from Lisp_Object to ptrdiff_t. Convert region_showing member from Lisp_Object to bitfield. Remove sequence_number member. Adjust comments. * window.c (sequence_number): Remove. (make_window): Initialize column_number_displayed. * print.c (print_object): Follow the printed representation of frames and print window pointer to distinguish between windows. (adjust_window_count): Invalidate base_line_pos. Adjust comment. * xdisp.c (wset_base_line_number, wset_base_line_pos) (wset_column_number_displayed, wset_region_showing): Remove. (window_buffer_changed, mode_line_update_needed, redisplay_internal) (try_scrolling, try_cursor_movement, redisplay_window) (try_window_reusing_current_matrix, try_window_id, display_line) (display_mode_lines, decode_mode_spec): Adjust users. * .gdbinit (pwinx): Do not print sequence_number.
Diffstat (limited to 'src/window.h')
-rw-r--r--src/window.h36
1 files changed, 16 insertions, 20 deletions
diff --git a/src/window.h b/src/window.h
index 135f591ded7..f28ce1424d0 100644
--- a/src/window.h
+++ b/src/window.h
@@ -192,23 +192,6 @@ struct window
and Qt, so bitfield can't be used here. */
Lisp_Object dedicated;
- /* Line number and position of a line somewhere above the top of the
- screen. If this field is nil, it means we don't have a base
- line. */
- Lisp_Object base_line_number;
- /* If this field is nil, it means we don't have a base line.
- If it is a buffer, it means don't display the line number
- as long as the window shows that buffer. */
- Lisp_Object base_line_pos;
-
- /* If we have highlighted the region (or any part of it),
- this is the mark position that we used, as an integer. */
- Lisp_Object region_showing;
-
- /* The column number currently displayed in this window's mode line,
- or nil if column numbers are not being displayed. */
- Lisp_Object column_number_displayed;
-
/* If redisplay in this window goes beyond this buffer position,
must run the redisplay-end-trigger-hook. */
Lisp_Object redisplay_end_trigger;
@@ -238,9 +221,6 @@ struct window
/* Number saying how recently window was selected. */
int use_time;
- /* Unique number of window assigned when it was created. */
- int sequence_number;
-
/* Number of columns display within the window is scrolled to the left. */
ptrdiff_t hscroll;
@@ -260,6 +240,19 @@ struct window
it should be positive. */
ptrdiff_t last_point;
+ /* Line number and position of a line somewhere above the top of the
+ screen. If this field is zero, it means we don't have a base line. */
+ ptrdiff_t base_line_number;
+
+ /* If this field is zero, it means we don't have a base line.
+ If it is -1, it means don't display the line number as long
+ as the window shows its buffer. */
+ ptrdiff_t base_line_pos;
+
+ /* The column number currently displayed in this window's mode
+ line, or -1 if column numbers are not being displayed. */
+ ptrdiff_t column_number_displayed;
+
/* Scaling factor for the glyph_matrix size calculation in this window.
Used if window contains many small images or uses proportional fonts,
as the normal may yield a matrix which is too small. */
@@ -340,6 +333,9 @@ struct window
the frame image that window_end_pos did not get onto the frame. */
unsigned window_end_valid : 1;
+ /* Nonzero if we have highlighted the region (or any part of it). */
+ unsigned region_showing : 1;
+
/* Amount by which lines of this window are scrolled in
y-direction (smooth scrolling). */
int vscroll;