Commit graph

30 commits

Author SHA1 Message Date
Richard M. Stallman
490fe8b05c (WINDOW_RIGHT_MARGIN): Don't subtract 1 from width when there are no
vertical scrollbars and this is the rightmost window in the frame.
1998-05-04 20:14:36 +00:00
Kenichi Handa
c257933282 Change argument number of Fdisplay_buffer to 3. 1998-02-06 13:45:24 +00:00
Richard M. Stallman
14a65ffe42 (WINDOW_RIGHT_MARGIN): Deduct width of vertical line
if frame has no scroll bars.
1998-01-21 21:43:58 +00:00
Andreas Schwab
4c571d0903 Add prototypes. 1997-11-25 13:44:34 +00:00
Richard M. Stallman
fbf44f72c8 (struct window): New field optional_new_start. 1996-11-10 00:25:20 +00:00
Richard M. Stallman
8516ba9afe (WINDOW_LEFT_MARGIN): New macro.
(WINDOW_RIGHT_EDGE, WINDOW_RIGHT_MARGIN): New macros.
(WINDOW_FULL_WIDTH_P, WINDOW_RIGHTMOST_P): New macros.
1996-09-21 03:31:53 +00:00
Richard M. Stallman
cc885e42e3 (struct window): New field last_overlay_modified. 1996-09-15 01:49:52 +00:00
Richard M. Stallman
30308d5e72 (struct window): New field, last_had_star. 1996-06-28 08:09:53 +00:00
Erik Naggum
3b7ad313e0 Update FSF's address in the preamble. 1996-01-15 09:18:04 +00:00
Richard M. Stallman
a3bee872ef (struct window): New field redisplay_end_trigger. 1995-11-10 16:05:24 +00:00
Richard M. Stallman
c0acc1122b (echo_area_window): Declared. 1995-07-21 07:51:20 +00:00
Karl Heuer
0bb083c202 Fix comment. 1995-03-31 19:13:22 +00:00
Karl Heuer
1262267aa8 (struct window): New member column_number_displayed. 1995-01-17 01:51:57 +00:00
Richard M. Stallman
dc83de2d44 (struct window): Use EMACS_INT. 1994-09-17 00:43:45 +00:00
Karl Heuer
2182673466 (minibuf_prompt): Now a Lisp_Object. All uses changed. 1994-06-18 00:13:02 +00:00
Richard M. Stallman
7f434d8e60 (echo_area_glyphs_length): Declared. 1993-12-23 01:13:02 +00:00
Jim Blandy
c6c5df7f76 Updated copyright years. 1993-05-22 21:34:42 +00:00
Richard M. Stallman
096855a66a (struct window): New slot region_showing. 1993-05-18 04:49:52 +00:00
Richard M. Stallman
e024395e6d (struct window): New fields base_line_number and base_line_pos. 1993-03-21 23:06:23 +00:00
Jim Blandy
a3c87d4e63 Use the term scroll bar', instead of scrollbar'.
* alloc.c, frame.c, frame.h, indent.c, keyboard.c, keyboard.h,
	lisp.h, term.c, termhooks.h, window.c, window.h, xdisp.c, xfns.c,
	xterm.c, xterm.h: Terminology changed.
1993-03-02 08:22:42 +00:00
Jim Blandy
832a07261f * dispnew.c (remake_frame_glyphs): When re-allocating the frame's
message buffer when echo_area_glyphs is pointing at it, relocate
	echo_area_glyphs too.  Same for previous_echo_glyphs.
	* window.h (previous_echo_glyphs): Add extern declaration for this.
1993-02-14 14:39:09 +00:00
Jim Blandy
7c299e7aa4 Make scrollbar structures into lisp objects, so that they can be
GC'd; this allows windows and scrollbars can refer to each other
	without worrying about dangling pointers.
	* xterm.h (struct x_display): vertical_scrollbars and
	judge_timestamp members deleted.
	(struct scrollbar): Redesigned to be a template for a Lisp_Vector.
	(SCROLLBAR_VEC_SIZE, XSCROLLBAR, SCROLLBAR_PACK, SCROLLBAR_UNPACK,
	SCROLLBAR_X_WINDOW, SET_SCROLLBAR_X_WINDOW,
	VERTICAL_SCROLLBAR_INSIDE_WIDTH, VERTICAL_SCROLLBAR_TOP_RANGE,
	VERTICAL_SCROLLBAR_INSIDE_HEIGHT, VERTICAL_SCROLLBAR_MIN_HANDLE):
	New macros, to help deal with the lispy structures, and deal with
	the graphics.
	* frame.h (WINDOW_VERTICAL_SCROLLBAR): Macro deleted.
	(struct frame): New fields `scrollbars' and
	`condemned_scrollbars', for use by the scrollbar implementation.
	[MULTI_FRAME and not MULTI_FRAME] (FRAME_SCROLLBARS,
	FRAME_CONDEMNED_SCROLLBARS): Accessors for the new field.
	* window.h (struct window): Doc fix for vertical_scrollbar field.
	* frame.c (make_frame): Initialize the `scrollbars' and
	`condemned_scrollbars' fields of the new frame.
	* alloc.c (mark_object): Mark the `scrollbars' and
	`condemned_scrollbars' slots of frames.
	* xterm.c (x_window_to_scrollbar): Scrollbars are chained on
	frames' scrollbar field, not their x.display->vertical_scrollbars
	field.
	(x_scrollbar_create, x_scrollbar_set_handle, x_scrollbar_move,
	x_scrollbar_remove, XTset_vertical_scrollbar,
	XTcondemn_scrollbars, XTredeem_scrollbar, XTjudge_scrollbars,
	x_scrollbar_expose, x_scrollbar_handle_click,
	x_scrollbar_handle_motion): Substantially rewritten to correct
	typos and brainos, and to accomodate the lispy structures.
1993-01-14 15:17:39 +00:00
Jim Blandy
20a558dc14 * frame.h (struct frame): New fields `can_have_scrollbars' and
`has_vertical_scrollbars'.
	(FRAME_CAN_HAVE_SCROLLBARS, FRAME_HAS_VERTICAL_SCROLLBARS): New
	accessors, for both the MULTI_FRAME and non-MULTI_FRAME.
	(VERTICAL_SCROLLBAR_WIDTH, WINDOW_VERTICAL_SCROLLBAR,
	WINDOW_VERTICAL_SCROLLBAR_COLUMN,
	WINDOW_VERTICAL_SCROLLBAR_HEIGHT): New macros.
	* window.h (struct window): New field `vertical_scrollbar'.
	* xterm.h (struct x_display): vertical_scrollbars,
	judge_timestamp, vertical_scrollbar_extra: New fields.
	(struct scrollbar): New struct.
	(VERTICAL_SCROLLBAR_PIXEL_WIDTH, VERTICAL_SCROLLBAR_PIXEL_HEIGHT,
	VERTICAL_SCROLLBAR_LEFT_BORDER, VERTICAL_SCROLLBAR_RIGHT_BORDER,
	VERTICAL_SCROLLBAR_TOP_BORDER, VERTICAL_SCROLLBAR_BOTTOM_BORDER,
	CHAR_TO_PIXEL_WIDTH, CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_WIDTH,
	PIXEL_TO_CHAR_HEIGHT): New accessors and macros.
	* frame.c (make_frame): Initialize the `can_have_scrollbars' and
	`has_vertical_scrollbars' fields of the frame.
	* term.c (term_init): Note that TERMCAP terminals don't support
	scrollbars.
	(mouse_position_hook): Document new args.
	(set_vertical_scrollbar_hook, condemn_scrollbars_hook,
	redeem_scrollbar_hook, judge_scrollbars_hook): New hooks.
	* termhooks.h: Declare and document them.
	(enum scrollbar_part): New type.
	(struct input_event): Describe the new form of the scrollbar_click
	event type.  Change `part' from a Lisp_Object to an enum
	scrollbar_part.  Add a new field `scrollbar'.
	* keyboard.c (kbd_buffer_get_event): Pass appropriate new
	parameters to *mouse_position_hook, and make_lispy_movement.
	* xfns.c (x_set_vertical_scrollbar): New function.
	(x_figure_window_size): Use new macros to calculate frame size.
	(Fx_create_frame): Note that X Windows frames do support scroll
	bars.  Default to "yes".
	* xterm.c: #include <X11/cursorfont.h> and "window.h".
	(x_vertical_scrollbar_cursor): New variable.
	(x_term_init): Initialize it.
	(last_mouse_bar, last_mouse_bar_frame, last_mouse_part,
	last_mouse_scroll_range_start, last_mouse_scroll_range_end): New
	variables.
	(XTmouse_position): Use them to return scrollbar movement events.
	Take new arguments, for that purpose.
	(x_window_to_scrollbar, x_scrollbar_create,
	x_scrollbar_set_handle, x_scrollbar_remove, x_scrollbar_move,
	XTset_scrollbar, XTcondemn_scrollbars, XTredeem_scrollbar,
	XTjudge_scrollbars, x_scrollbar_expose,
	x_scrollbar_background_expose, x_scrollbar_handle_click,
	x_scrollbar_handle_motion): New functions to implement scrollbars.
	(x_term_init): Set the termhooks.h hooks to point to them.
	(x_set_window_size): Use new macros to calculate frame size.  Set
	vertical_scrollbar_extra field.
	(x_make_frame_visible): Use the frame accessor
	FRAME_HAS_VERTICAL_SCROLLBARS to decide if we need to map the
	frame's subwindows as well.
	(XTread_socket): Use new size-calculation macros from xterm.h when
	processing ConfigureNotify events.
	(x_wm_set_size_hint): Use PIXEL_TO_CHAR_WIDTH and
	PIXEL_TO_CHAR_HEIGHT macros.
	* ymakefile (xdisp.o): This now depends on termhooks.h.
	(xterm.o): This now depends on window.h.
1992-12-24 06:17:18 +00:00
Jim Blandy
77511369af * window.h (make_window, window_from_coordinates,
Fwindow_dedicated_p): Add extern declarations for these.
1992-10-31 05:40:28 +00:00
Jim Blandy
27daff1e90 * window.h (struct window): Doc fix. 1992-10-19 18:47:21 +00:00
Jim Blandy
fbfed6f05f entered into RCS 1992-08-19 03:54:46 +00:00
Jim Blandy
44fa5b1e24 *** empty log message *** 1992-07-14 15:21:18 +00:00
Jim Blandy
e5d77022e8 *** empty log message *** 1992-06-30 13:54:21 +00:00
Jim Blandy
56a98455a6 *** empty log message *** 1992-01-14 02:48:51 +00:00
Jim Blandy
83b2229fc6 Initial revision 1991-07-28 14:31:16 +00:00