[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/dispnew.c
From: |
Richard M . Stallman |
Subject: |
[Emacs-diffs] Changes to emacs/src/dispnew.c |
Date: |
Fri, 17 Jun 2005 10:03:08 -0400 |
Index: emacs/src/dispnew.c
diff -c emacs/src/dispnew.c:1.346 emacs/src/dispnew.c:1.347
*** emacs/src/dispnew.c:1.346 Sun May 1 19:59:45 2005
--- emacs/src/dispnew.c Fri Jun 17 14:03:08 2005
***************
*** 2722,2727 ****
--- 2722,2728 ----
right_border_glyph = (dp && INTEGERP (DISP_BORDER_GLYPH (dp))
? XINT (DISP_BORDER_GLYPH (dp))
: '|');
+ right_border_glyph = spec_glyph_lookup_face (w, right_border_glyph);
}
}
else
***************
*** 2802,2807 ****
--- 2803,2829 ----
}
}
+ /* Given a user-specified glyph, possibly including a Lisp-level face
+ ID, return a glyph that has a realized face ID.
+ This is used for glyphs displayed specially and not part of the text;
+ for instance, vertical separators, truncation markers, etc. */
+
+ GLYPH
+ spec_glyph_lookup_face (w, glyph)
+ struct window *w;
+ GLYPH glyph;
+ {
+ int lface_id = FAST_GLYPH_FACE (glyph);
+ /* Convert the glyph's specified face to a realized (cache) face. */
+ if (lface_id > 0)
+ {
+ int face_id = merge_faces (XFRAME (w->frame),
+ Qt, lface_id, DEFAULT_FACE_ID);
+ glyph
+ = FAST_MAKE_GLYPH (FAST_GLYPH_CHAR (glyph), face_id);
+ }
+ return glyph;
+ }
/* Add spaces to a glyph row ROW in a window matrix.
- [Emacs-diffs] Changes to emacs/src/dispnew.c,
Richard M . Stallman <=