1. 26 May, 2003 6 commits
  2. 25 May, 2003 26 commits
  3. 24 May, 2003 8 commits
    • Kim F. Storm's avatar
      6f8968c8
    • Kim F. Storm's avatar
      (struct x_output): Move members left_pos, top_pos, · 43a74f12
      Kim F. Storm authored
      border_width, pixel_height, pixel_width, line_height,
      internal_border_width, vertical_scroll_bar_extra,
      left_fringe_width, right_fringe_width, fringe_cols,
      fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
      x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
      (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
      (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
      (PIXEL_WIDTH, PIXEL_HEIGHT)
      (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
      (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
      frame.h and renamed [see frame.h changes].
      (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
      (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
      (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
      and renamed [see frame.h changes].
      43a74f12
    • Kim F. Storm's avatar
      Make (several) trivial substitutions for renamed and · 0899d58c
      Kim F. Storm authored
      new macros in dispextern.h, frame.h and window.h.
      (x_draw_glyph_string_box): Adapt to per-window fringes and
      scroll-bars.
      (scroll_run): Adapt to new fringe position.
      (glyph_rect): Use window coordinates returned from
      window_from_coordinates rather than frame_to_window_pixel_xy.
      (XTset_vertical_scroll_bar): Adapt to per-window fringes and
      scroll-bars.
      (handle_one_xevent): Simplify a USE_GTK conditional.
      (x_clip_to_row): Remove superfluous whole_line_p arg and code
      (fringes are now inside margins, i.e. always in the clipping area).
      All callers changed.
      (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
      directly, then call compute_fringe_widths.  Don't call
      frame_update_line_height.
      0899d58c
    • Kim F. Storm's avatar
      Make (some) trivial substitutions for renamed and · 9882535b
      Kim F. Storm authored
      new macros in dispextern.h, frame.h and window.h.
      9882535b
    • Kim F. Storm's avatar
      Make (many) trivial substitutions for renamed and · be786000
      Kim F. Storm authored
      new macros in dispextern.h, frame.h and window.h.
      be786000
    • Kim F. Storm's avatar
      [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to · c623bbd3
      Kim F. Storm authored
      where it's used in x_list_fonts (for clarity).
      (frame_update_line_height): Remove unused function; functionality
      is now done directly when setting the default font in x_set_font.
      c623bbd3
    • Kim F. Storm's avatar
      Make (many) trivial substitutions for renamed and · da8b7f4f
      Kim F. Storm authored
      new macros in dispextern.h, frame.h and window.h.
      (window_box_width): Adapt to per-window fringes and scroll bars,
      and new fringe vs. display margin position. Note that returned
      value is no longer guaranteed to be a whole multiple of the frame
      column width, since per-window fringes may now be any width.
      (window_box_left_offset): New function like window_box_left, but
      value is relative to left border of window (rather than frame).
      (window_box_right_offset): New function like window_box_right,
      but value is relative to left border of window.
      (window_box_left): Adapt to per-window fringes and scroll bars,
      and new fringe vs. display margin position.  Simplify by using
      WINDOW_LEFT_EDGE_X and window_box_left_offset.
      (window_box): Allow null args for unnecessary return values;
      change/simplify relevant callers.
      (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
      and new fringe vs. display margin position.  Use
      window_box_left_offset and window_box_right_offset
      (get_glyph_string_clip_rect): Adapt to per-window fringes and
      scroll bars, and new fringe vs. display margin position.  Use
      WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
      (draw_fringe_bitmap): Rework to handle per-window fringes and new
      fringe vs. display margin position.
      (hscroll_window_tree): Use window_box_width instead of window_box.
      (redisplay_window):  Adapt to per-window scroll bars.
      (draw_glyphs):  Rework to handle per-window fringes and scroll
      bars, and new fringe vs. display margin position.  Use
      WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
      (x_clear_end_of_line):  Adapt to per-window fringes and scroll
      bars, and new fringe vs. display margin position.  Fix bug which
      increased total width of full_width rows by width of scroll bars
      although window's total width already includes that.
      (x_fix_overlapping_area): Simplify using window_box_left_offset.
      (expose_area): Simplify using window_box_left_offset.
      (x_draw_vertical_border): Handle per-window scroll bar settings,
      mixing windows with left, right and no scroll bars.
      da8b7f4f
    • Kim F. Storm's avatar
      (struct window): Rename members left to left_col, · 6000501b
      Kim F. Storm authored
      top to top_line, height to total_lines, width to total_cols,
      left_margin_width to left_margin_cols, right_margin_width to
      right_margin_cols, orig_height to orig_total_lines, orig_top to
      orig_top_line.  All uses changed.
      (struct window): New members left_fringe_width, right_fringe_width,
      fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
      (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
      New macros primarily used to simplify other macros.
      (WINDOW_TOTAL_COLS): New macro.  Change relevant code that
      referred to XINT (w->width).
      (WINDOW_TOTAL_LINES): New macro.  Change relevant code that
      referred to XINT (w->height).
      (WINDOW_TOTAL_WIDTH): New macro.  Change relevant code that
      referred to XINT (w->width) * canon_x_unit.
      (WINDOW_TOTAL_HEIGHT): New macro.  Change relevant code that
      referred to XINT (w->height) * canon_y_unit.
      (WINDOW_LEFT_EDGE_COL): New macro.  Change relevant code that
      referred to XINT (w->left).
      (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE.  Change
      all uses and code that referred to XINT (w->left) + XINT (w->width).
      (WINDOW_TOP_EDGE_LINE): New macro.  Change relevant code that
      referred to XINT (w->top).
      (WINDOW_BOTTOM_EDGE_LINE): New macro.  Change relevant code that
      referred to XINT (w->top) + XINT (w->height).
      (WINDOW_LEFT_EDGE_X): New macro.  Change relevant code that
      referred to XINT (w->left) * canon_x_unit.
      (WINDOW_RIGHT_EDGE_X): New macro.  Change relevant code that
      referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
      (WINDOW_TOP_EDGE_Y): New macro.  Change relevant code that
      referred to XINT (w->top) * canon_y_unit.
      (WINDOW_BOTTOM_EDGE_Y): New macro.  Change relevant code that
      referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
      (WINDOW_LEFTMOST_P): New macro.
      (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
      All uses changed.
      (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
      All uses changed.
      (WINDOW_BOX_LEFT_EDGE_X): Renamed from
      WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
      Do not exclude left fringe width.
      (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
      WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
      Do not exclude fringe widths.
      (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
      (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
      Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
      FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
      FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
      (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
      (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
      (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
      (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
      (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
      New macros.  Change code which referenced corresponding
      FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
      FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
      FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
      FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
      allow per-window scroll-bar settings.
      (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
      (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro.  Change code that
      referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
      (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro.  Change code
      that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
      FRAME_SCROLL_BAR_WIDTH.
      (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
      (WINDOW_SCROLL_BAR_AREA_X): New macros.
      (WINDOW_HEADER_LINE_HEIGHT): Renamed from
      WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
      (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
      WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
      (WINDOW_BOX_TEXT_HEIGHT): Renamed from
      WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
      (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
      (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
      (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
      (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
      WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
      (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
      WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
      (window_from_coordinates): Update prototype.
      (Fset_window_buffer): Update EXFUN.
      (set_window_buffer): Update prototype.
      6000501b