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.  */