Mercurial > emacs
changeset 2725:507115aff66d
* xdisp.c (display_text_line): Apply faces to characters according
to overlays and text properties; use compute_char_face to figure out
what face to use, and where a new face starts.
* xterm.c (dumpglyphs): Use the upper bits of the glyphs to decide
which frame face to use. Call GLYPH_FOLLOW_ALIASES to make sure
we're implementing the glyph table properly. If we're not using
the default or mode line face, call intern_face to find a display
face for the frame face selected by the glyph code. Implement
underlining. Remove the `font' argument; we have to derive this
from the frame and face anyway. Change all callers.
* disptab.h (GLYPH_FOLLOW_ALIASES): New macro.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Mon, 10 May 1993 00:16:34 +0000 |
parents | 56a657acd984 |
children | 954251d0fbd1 |
files | src/disptab.h |
diffstat | 1 files changed, 6 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/disptab.h Mon May 10 00:15:58 1993 +0000 +++ b/src/disptab.h Mon May 10 00:16:34 1993 +0000 @@ -63,6 +63,12 @@ return the alias for G. */ #define GLYPH_ALIAS(base, g) XINT (base[g]) +/* Follow all aliases for G in the glyph table given by (BASE, + LENGTH), and set G to the final glyph. */ +#define GLYPH_FOLLOW_ALIASES(base, length, g) \ + while (GLYPH_ALIAS_P ((base), (length), (g))) \ + (g) = GLYPH_ALIAS ((base), (g)); + /* Assuming that GLYPH_SIMPLE_P (BASE, LEN, G) is 0, return the length and the address of the character-sequence used for outputting GLYPH G. */