changeset 50239:9fab063b5369

*** empty log message ***
author Kim F. Storm <storm@cua.dk>
date Fri, 21 Mar 2003 14:05:12 +0000
parents 20e4ebf5399d
children 22d0f894909f
files mac/ChangeLog src/ChangeLog
diffstat 2 files changed, 146 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mac/ChangeLog	Fri Mar 21 13:52:57 2003 +0000
+++ b/mac/ChangeLog	Fri Mar 21 14:05:12 2003 +0000
@@ -1,3 +1,8 @@
+2003-03-21  Kim F. Storm  <storm@cua.dk>
+
+	* makefile.MPW (xdisp.c.x):  Add dependency on blockinput.h and
+	files included from it.  Add dependency on keymap.h.
+
 2003-01-14  Steven Tamm  <steventamm@mac.com>
 
 	* make-package: Fixed problem where the building without
--- a/src/ChangeLog	Fri Mar 21 13:52:57 2003 +0000
+++ b/src/ChangeLog	Fri Mar 21 14:05:12 2003 +0000
@@ -1,3 +1,144 @@
+2003-03-21  Kim F. Storm  <storm@cua.dk>
+
+	The following changes consolidate code related to writing and
+	inserting glyphs, exposing frame, the tool bar, the mouse face,
+	the output cursor, and help echo from xterm.c, w32term.c and
+	macterm.c into xdisp.c.  It also generalizes the use of the
+	window_part enum instead of using numeric values throughout.
+	
+	* xdisp.c: Consolidate gui-independent code here.
+	Include keymap.h.
+	(Qhelp_echo): Import.
+	(mouse_autoselect_window, x_stretch_cursor_p): Declare here.
+	(help_echo_string, help_echo_window, help_echo_object)
+	(previous_help_echo_string, help_echo_pos): Declare here.
+	(output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
+	(estimate_mode_line_height): Define here.  Handle windowing
+	systems directly (without using estimate_mode_line_height_hook).
+	(x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
+	(update_window_cursor, update_cursor_in_window_tree)
+	(fast_find_position, fast_find_string_pos)
+	(note_mode_line_highlight, note_mode_line_or_margin_highlight)
+	(expose_area, expose_line, expose_overlaps, expose_window)
+	(expose_window_tree, phys_cursor_in_rect_p): New generic versions;
+	declared static as they are only used locally in xdisp.c.
+	(draw_glyphs): Rename from x_draw_glyphs and make static.
+	(tool_bar_item_info, notice_overwritten_cursor): Make static.
+	(frame_to_window_pixel_xy, get_glyph_string_clip_rect)
+	(set_output_cursor, x_cursor_to, handle_tool_bar_click)
+	(x_write_glyphs, x_insert_glyphs, x_clear_end_of_line): 
+	(x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
+	(display_and_set_cursor, x_update_cursor, x_clear_cursor)
+	(show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
+	(note_mouse_highlight, x_clear_window_mouse_face)
+	(cancel_mouse_face, x_draw_vertical_border, expose_frame)
+	(x_intersect_rectangles): New generic functions for use by xdisp.c
+	and GUI front-ends.
+	(syms_of_xdisp): Initialize and staticpro help_echo* variables.
+	Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
+
+	* dispextern.h (Display_Info): Generic typedef for *_display_info.
+	(NativeRectangle): Generic typedef for rectangle type.
+	(enum window_part): Move here from window.c.
+	(struct redisplay_interface): New members flush_display_optional,
+	define_frame_cursor, clear_frame_area, draw_window_cursor,
+	draw_vertical_window_border, shift_glyphs_for_insert.
+	Rename member clear_mouse_face to clear_window_mouse_face.
+	(estimate_mode_line_height_hook): Remove hook.
+	(auto_raise_tool_bar_buttons_p): Don't declare extern.
+	(tool_bar_item_info): Remove prototype.
+	(help_echo_string, help_echo_window, help_echo_object)
+	(previous_help_echo_string, help_echo_pos)
+	(last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
+	(x_stretch_cursor_p, output_cursor): Declare extern.
+	(x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
+	(x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
+	(x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
+	(display_and_set_cursor, set_output_cursor, x_cursor_to)
+	(x_update_cursor, x_clear_cursor, x_draw_vertical_border)
+	(frame_to_window_pixel_xy, get_glyph_string_clip_rect)
+	(note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
+	(handle_tool_bar_click, clear_mouse_face, show_mouse_face)
+	(cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
+	Add prototypes.
+	(mode_line_string, marginal_area_string): Fix prototypes.
+
+	* window.c (enum window_part): Move to dispextern.h.
+	(coordinates_in_window): Use enum window_part member names
+	instead of numbers to describe return value.
+	(struct check_window_data): Change part member to window_part.
+	(check_window_containing): Return window_part unaltered.
+	(window_from_coordinates): Change part arg from int to enum
+	window_part.  Allow part arg to be null.  All users changed.
+
+	* window.h (window_from_coordinates): Fix prototype.
+
+	* term.c (estimate_mode_line_height): Move to xdisp.c.
+
+	* keyboard.c (make_lispy_event): Use enum window_part.
+
+	* dispnew.c (mode_line_string, marginal_area_string): Use enum
+	window_part instead of int in arg list.  Users changed.
+
+	* xterm.h (No_Cursor): Declare as None for X.
+	(struct mac_output): Replace member cross_cursor by hand_cursor.
+	
+	* xterm.c: Remove consolidated defines and code.
+	(BETWEEN): Remove unused macro.
+	(x_draw_vertical_window_border, x_shift_glyphs_for_insert)
+	(x_define_frame_cursor, x_clear_frame_area)
+	(x_draw_window_cursor): New X-specific functions for RIF.
+	(x_redisplay_interface): Add new members.
+
+	* xfns.c: Setup and use hand_cursor instead of cross_cursor.
+
+	* w32term.h (struct w32_output): Remove cross_cursor member.
+
+	* w32term.c: Remove consolidated defines and code.
+	(BETWEEN): Remove unused macro.
+	(w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
+	(w32_define_frame_cursor, w32_clear_frame_area)
+	(w32_draw_window_cursor): New W32-specific functions for RIF.
+	(w32_redisplay_interface): Add new members.
+
+	* w32gui.h (No_Cursor):  Define as 0 for W32.
+	(XRectangle): Add X compatible rectangle type.
+	(NativeRectangle): Declare as RECT for W32.
+	(CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
+
+	* w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
+
+	* w32console.c: Remove consolidated defines and code.
+	
+	* msdos.h (Display_Info): Add generic typedef.
+
+	* msdos.c: Remove consolidated defines and code.
+	(IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
+
+	* macterm.h (struct mac_output): Replace member cross_cursor by
+	hand_cursor.
+	(activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
+
+	* macterm.c: Remove consolidated defines and code.
+	(BETWEEN): Remove unused macro.
+	(mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
+	(mac_define_frame_cursor, mac_clear_frame_area)
+	(mac_draw_window_cursor): New Mac-specific functions for RIF.
+	(x_redisplay_interface): Add new members.
+
+	* macgui.h (No_Cursor): Define as 0 for Mac.
+	(XRectangle): Add X compatible rectangle type.
+	(NativeRectangle): Declare as Rect for Mac.
+	(CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
+
+	* macfns.c (x_set_mouse_color): Setup hand_cursor instead of cross_cursor.
+	(x_set_cursor_color): Use x_display_and_set_cursor instead of x_display_cursor.
+
+	* Makefile.in (xdisp.o):  Add dependency on blockinput.h and files
+	included from it.  Add dependency on keymap.h.
+
+	* makefile.w32-in (xdisp.o): Add dependency on keymap.h.
+
 2003-03-21  Kenichi Handa  <handa@m17n.org>
 
 	* fileio.c (Fexpand_file_name): Fix previous change.