diff options
| author | YAMAMOTO Mitsuharu | 2005-10-07 07:38:12 +0000 |
|---|---|---|
| committer | YAMAMOTO Mitsuharu | 2005-10-07 07:38:12 +0000 |
| commit | 10a07952dc440e65684d1f45dd9a752b6b26ea80 (patch) | |
| tree | bb99d56585d1e51ad0ece62edcf534c8c843bda8 /src | |
| parent | 3907c787a12499e7d10d7dec45a0d6a2eb7b09d2 (diff) | |
| download | emacs-10a07952dc440e65684d1f45dd9a752b6b26ea80.tar.gz emacs-10a07952dc440e65684d1f45dd9a752b6b26ea80.zip | |
(struct glyph_string): Rename member for_overlaps_p
to for_overlaps. Now occupy 3 bits.
(OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
(OVERLAPS_ERASED_CURSOR): New defines.
(struct redisplay_interface): Add new OVERLAPS arg to member
fix_overlapping_area.
(x_fix_overlapping_area): Add new OVERLAPS arg.
(get_glyph_string_clip_rects): Add extern.
Diffstat (limited to 'src')
| -rw-r--r-- | src/dispextern.h | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/src/dispextern.h b/src/dispextern.h index 2fa33e87ebb..63922183a0b 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -1182,10 +1182,18 @@ struct glyph_string | |||
| 1182 | stipple pattern. */ | 1182 | stipple pattern. */ |
| 1183 | unsigned stippled_p : 1; | 1183 | unsigned stippled_p : 1; |
| 1184 | 1184 | ||
| 1185 | /* 1 means only the foreground of this glyph string must be drawn, | 1185 | #define OVERLAPS_PRED (1 << 0) |
| 1186 | and we should use the physical height of the line this glyph | 1186 | #define OVERLAPS_SUCC (1 << 1) |
| 1187 | string appears in as clip rect. */ | 1187 | #define OVERLAPS_BOTH (OVERLAPS_PRED | OVERLAPS_SUCC) |
| 1188 | unsigned for_overlaps_p : 1; | 1188 | #define OVERLAPS_ERASED_CURSOR (1 << 2) |
| 1189 | /* Non-zero means only the foreground of this glyph string must be | ||
| 1190 | drawn, and we should use the physical height of the line this | ||
| 1191 | glyph string appears in as clip rect. If the value is | ||
| 1192 | OVERLAPS_ERASED_CURSOR, the clip rect is restricted to the rect | ||
| 1193 | of the erased cursor. OVERLAPS_PRED and OVERLAPS_SUCC mean we | ||
| 1194 | draw overlaps with the preceding and the succeeding rows, | ||
| 1195 | respectively. */ | ||
| 1196 | unsigned for_overlaps : 3; | ||
| 1189 | 1197 | ||
| 1190 | /* The GC to use for drawing this glyph string. */ | 1198 | /* The GC to use for drawing this glyph string. */ |
| 1191 | #if defined(HAVE_X_WINDOWS) || defined(MAC_OS) | 1199 | #if defined(HAVE_X_WINDOWS) || defined(MAC_OS) |
| @@ -2266,7 +2274,7 @@ struct redisplay_interface | |||
| 2266 | This function is called from redraw_overlapping_rows after | 2274 | This function is called from redraw_overlapping_rows after |
| 2267 | desired rows have been made current. */ | 2275 | desired rows have been made current. */ |
| 2268 | void (*fix_overlapping_area) P_ ((struct window *w, struct glyph_row *row, | 2276 | void (*fix_overlapping_area) P_ ((struct window *w, struct glyph_row *row, |
| 2269 | enum glyph_row_area area)); | 2277 | enum glyph_row_area area, int)); |
| 2270 | 2278 | ||
| 2271 | #ifdef HAVE_WINDOW_SYSTEM | 2279 | #ifdef HAVE_WINDOW_SYSTEM |
| 2272 | 2280 | ||
| @@ -2664,7 +2672,7 @@ extern int x_stretch_cursor_p; | |||
| 2664 | extern struct cursor_pos output_cursor; | 2672 | extern struct cursor_pos output_cursor; |
| 2665 | 2673 | ||
| 2666 | extern void x_fix_overlapping_area P_ ((struct window *, struct glyph_row *, | 2674 | extern void x_fix_overlapping_area P_ ((struct window *, struct glyph_row *, |
| 2667 | enum glyph_row_area)); | 2675 | enum glyph_row_area, int)); |
| 2668 | extern void draw_phys_cursor_glyph P_ ((struct window *, | 2676 | extern void draw_phys_cursor_glyph P_ ((struct window *, |
| 2669 | struct glyph_row *, | 2677 | struct glyph_row *, |
| 2670 | enum draw_glyphs_face)); | 2678 | enum draw_glyphs_face)); |
| @@ -2682,6 +2690,8 @@ extern void x_clear_cursor P_ ((struct window *)); | |||
| 2682 | extern void x_draw_vertical_border P_ ((struct window *w)); | 2690 | extern void x_draw_vertical_border P_ ((struct window *w)); |
| 2683 | 2691 | ||
| 2684 | extern void frame_to_window_pixel_xy P_ ((struct window *, int *, int *)); | 2692 | extern void frame_to_window_pixel_xy P_ ((struct window *, int *, int *)); |
| 2693 | extern int get_glyph_string_clip_rects P_ ((struct glyph_string *, | ||
| 2694 | NativeRectangle *, int)); | ||
| 2685 | extern void get_glyph_string_clip_rect P_ ((struct glyph_string *, | 2695 | extern void get_glyph_string_clip_rect P_ ((struct glyph_string *, |
| 2686 | NativeRectangle *nr)); | 2696 | NativeRectangle *nr)); |
| 2687 | extern Lisp_Object find_hot_spot P_ ((Lisp_Object, int, int)); | 2697 | extern Lisp_Object find_hot_spot P_ ((Lisp_Object, int, int)); |