# HG changeset patch # User Kim F. Storm # Date 1048255512 0 # Node ID 9fab063b5369325f205d8cdfeb4a7a7db18ca972 # Parent 20e4ebf5399dbfe9928ec697585179da9d8073f5 *** empty log message *** diff -r 20e4ebf5399d -r 9fab063b5369 mac/ChangeLog --- 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 + + * 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 * make-package: Fixed problem where the building without diff -r 20e4ebf5399d -r 9fab063b5369 src/ChangeLog --- 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 + + 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 * fileio.c (Fexpand_file_name): Fix previous change.