Mercurial > hg > xemacs-beta
diff src/redisplay.h @ 185:3d6bfa290dbd r20-3b19
Import from CVS: tag r20-3b19
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:55:28 +0200 |
parents | e121b013d1f0 |
children | b2472a1930f2 |
line wrap: on
line diff
--- a/src/redisplay.h Mon Aug 13 09:54:24 2007 +0200 +++ b/src/redisplay.h Mon Aug 13 09:55:28 2007 +0200 @@ -46,15 +46,16 @@ end buffer positions for a contiguous set of lines on that piece of paper. */ +typedef struct line_start_cache line_start_cache; struct line_start_cache { Bufpos start, end; int height; }; -typedef struct line_start_cache_dynarr_type +typedef struct { - Dynarr_declare (struct line_start_cache); + Dynarr_declare (line_start_cache); } line_start_cache_dynarr; /* The possible types of runes. @@ -88,7 +89,8 @@ (Printable characters typically have one rune associated with them, but control characters have two -- a ^ and a letter -- and other non-printing characters (those displayed in octal) have four. */ - + +typedef struct rune rune; struct rune { face_index findex; /* face rune is displayed with. The @@ -132,13 +134,13 @@ glyph to the left while still clipping at XPOS. */ } dglyph; - + /* CHAR */ struct { Emchar ch; /* Cbaracter of this rune. */ } chr; - + /* HLINE */ struct { @@ -148,9 +150,9 @@ } object; /* actual rune object */ }; -typedef struct rune_dynarr_type +typedef struct { - Dynarr_declare (struct rune); + Dynarr_declare (rune); } rune_dynarr; /* These must have distinct values. Note that the ordering actually @@ -188,6 +190,7 @@ reduce the amount of X traffic, which will help things significantly on a slow line. */ +typedef struct display_block display_block; struct display_block { enum display_type type; /* type of display block */ @@ -198,9 +201,9 @@ rune_dynarr *runes; /* Dynamic array of runes */ }; -typedef struct display_block_dynarr_type +typedef struct { - Dynarr_declare (struct display_block); + Dynarr_declare (display_block); } display_block_dynarr; typedef struct layout_bounds_type @@ -213,6 +216,7 @@ int right_out; } layout_bounds; +typedef struct glyph_block glyph_block; struct glyph_block { Lisp_Object glyph; @@ -223,11 +227,12 @@ int width; }; -typedef struct glyph_block_dynarr_type +typedef struct { - Dynarr_declare (struct glyph_block); + Dynarr_declare (glyph_block); } glyph_block_dynarr; +typedef struct display_line display_line; struct display_line { short ypos; /* vertical position in pixels @@ -264,19 +269,19 @@ glyph_block_dynarr *right_glyphs; }; -typedef struct display_line_dynarr_type +typedef struct { - Dynarr_declare (struct display_line); + Dynarr_declare (display_line); } display_line_dynarr; /* It could be argued that the following two structs belong in extents.h, but they're only used by redisplay and it simplifies the header files to put them here. */ -typedef struct extent_dynarr_type +typedef struct { - Dynarr_declare (struct extent *); -} extent_dynarr; + Dynarr_declare (EXTENT); +} EXTENT_dynarr; struct font_metric_info { @@ -296,7 +301,7 @@ Lisp_Object object; /* buffer or string */ struct frame *frm; Bytind pos, end; - extent_dynarr *extents; + EXTENT_dynarr *extents; glyph_block_dynarr *begin_glyphs, *end_glyphs; unsigned int invisible:1; unsigned int invisible_ellipses:1;