diff options
| author | Kim F. Storm | 2003-03-12 12:09:39 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2003-03-12 12:09:39 +0000 |
| commit | f4e1400d40a45059b6cc54b67787da1792630e02 (patch) | |
| tree | 6aa9930688b19dad0583ac25b6e6d3a6e93d6898 /src | |
| parent | 9668be7cb01276c7e7a6b24544d7fe912fe885b5 (diff) | |
| download | emacs-f4e1400d40a45059b6cc54b67787da1792630e02.tar.gz emacs-f4e1400d40a45059b6cc54b67787da1792630e02.zip | |
(enum fringe_bitmap_type): Define here.
(struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
(fringe_bitmaps): Declare extern.
(struct redisplay_interface): New member draw_fringe_bitmap.
(draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
Diffstat (limited to 'src')
| -rw-r--r-- | src/dispextern.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/src/dispextern.h b/src/dispextern.h index 27c24dd56de..37ef222aa0f 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -1482,6 +1482,50 @@ extern int face_change_count; | |||
| 1482 | 1482 | ||
| 1483 | 1483 | ||
| 1484 | /*********************************************************************** | 1484 | /*********************************************************************** |
| 1485 | Fringes | ||
| 1486 | ***********************************************************************/ | ||
| 1487 | |||
| 1488 | enum fringe_bitmap_type | ||
| 1489 | { | ||
| 1490 | NO_FRINGE_BITMAP = 0, | ||
| 1491 | LEFT_TRUNCATION_BITMAP, | ||
| 1492 | RIGHT_TRUNCATION_BITMAP, | ||
| 1493 | CONTINUED_LINE_BITMAP, | ||
| 1494 | CONTINUATION_LINE_BITMAP, | ||
| 1495 | OVERLAY_ARROW_BITMAP, | ||
| 1496 | ZV_LINE_BITMAP, | ||
| 1497 | MAX_FRINGE_BITMAPS | ||
| 1498 | }; | ||
| 1499 | |||
| 1500 | struct fringe_bitmap | ||
| 1501 | { | ||
| 1502 | int width; | ||
| 1503 | int height; | ||
| 1504 | int period; | ||
| 1505 | unsigned char *bits; | ||
| 1506 | }; | ||
| 1507 | |||
| 1508 | /* Structure used to describe where and how to draw a fringe bitmap. | ||
| 1509 | WHICH is the fringe bitmap to draw. WD and H is the (adjusted) | ||
| 1510 | width and height of the bitmap, DH is the height adjustment (if | ||
| 1511 | bitmap is periodic). X and Y are frame coordinates of the area to | ||
| 1512 | display the bitmap, DY is relative offset of the bitmap into that | ||
| 1513 | area. BX, NX, BY, NY specifies the area to clear if the bitmap | ||
| 1514 | does not fill the entire area. FACE is the fringe face. */ | ||
| 1515 | |||
| 1516 | struct draw_fringe_bitmap_params | ||
| 1517 | { | ||
| 1518 | enum fringe_bitmap_type which; | ||
| 1519 | int wd, h, dh; | ||
| 1520 | int x, y; | ||
| 1521 | int bx, nx, by, ny; | ||
| 1522 | struct face *face; | ||
| 1523 | }; | ||
| 1524 | |||
| 1525 | extern struct fringe_bitmap fringe_bitmaps[MAX_FRINGE_BITMAPS]; | ||
| 1526 | |||
| 1527 | |||
| 1528 | /*********************************************************************** | ||
| 1485 | Display Iterator | 1529 | Display Iterator |
| 1486 | ***********************************************************************/ | 1530 | ***********************************************************************/ |
| 1487 | 1531 | ||
| @@ -1977,6 +2021,11 @@ struct redisplay_interface | |||
| 1977 | desired rows have been made current. */ | 2021 | desired rows have been made current. */ |
| 1978 | void (*fix_overlapping_area) P_ ((struct window *w, struct glyph_row *row, | 2022 | void (*fix_overlapping_area) P_ ((struct window *w, struct glyph_row *row, |
| 1979 | enum glyph_row_area area)); | 2023 | enum glyph_row_area area)); |
| 2024 | |||
| 2025 | /* Draw a fringe bitmap in window W of row ROW using parameters P. */ | ||
| 2026 | void (*draw_fringe_bitmap) P_ ((struct window *w, struct glyph_row *row, | ||
| 2027 | struct draw_fringe_bitmap_params *p)); | ||
| 2028 | |||
| 1980 | }; | 2029 | }; |
| 1981 | 2030 | ||
| 1982 | /* The current interface for window-based redisplay. */ | 2031 | /* The current interface for window-based redisplay. */ |
| @@ -2283,6 +2332,8 @@ int in_display_vector_p P_ ((struct it *)); | |||
| 2283 | int frame_mode_line_height P_ ((struct frame *)); | 2332 | int frame_mode_line_height P_ ((struct frame *)); |
| 2284 | void highlight_trailing_whitespace P_ ((struct frame *, struct glyph_row *)); | 2333 | void highlight_trailing_whitespace P_ ((struct frame *, struct glyph_row *)); |
| 2285 | int tool_bar_item_info P_ ((struct frame *, struct glyph *, int *)); | 2334 | int tool_bar_item_info P_ ((struct frame *, struct glyph *, int *)); |
| 2335 | void draw_row_fringe_bitmaps P_ ((struct window *, struct glyph_row *)); | ||
| 2336 | void compute_fringe_widths P_ ((struct frame *, int)); | ||
| 2286 | extern Lisp_Object Qtool_bar; | 2337 | extern Lisp_Object Qtool_bar; |
| 2287 | extern Lisp_Object Vshow_trailing_whitespace; | 2338 | extern Lisp_Object Vshow_trailing_whitespace; |
| 2288 | extern int mode_line_in_non_selected_windows; | 2339 | extern int mode_line_in_non_selected_windows; |