diff options
author | Jim Blandy <jimb@redhat.com> | 1993-05-10 00:16:34 +0000 |
---|---|---|
committer | Jim Blandy <jimb@redhat.com> | 1993-05-10 00:16:34 +0000 |
commit | be269961dc77973b482f07bd5c84cb9093e4443c (patch) | |
tree | 9860753ddad19e90443d6fec0b6cf3b09591e47f /src/disptab.h | |
parent | 88fd275e697fe57fd686e4fedde7f879c943a04f (diff) | |
download | emacs-be269961dc77973b482f07bd5c84cb9093e4443c.tar.gz |
* 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.
Diffstat (limited to 'src/disptab.h')
-rw-r--r-- | src/disptab.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/disptab.h b/src/disptab.h index 37f4bc76db2..d8a4c9ab06d 100644 --- a/src/disptab.h +++ b/src/disptab.h @@ -63,6 +63,12 @@ extern Lisp_Object Vglyph_table; 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. */ |