Mercurial > hg > xemacs-beta
diff src/faces.h @ 412:697ef44129c6 r21-2-14
Import from CVS: tag r21-2-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:20:41 +0200 |
parents | 2f8bb876ab1d |
children | 11054d720c21 |
line wrap: on
line diff
--- a/src/faces.h Mon Aug 13 11:19:22 2007 +0200 +++ b/src/faces.h Mon Aug 13 11:20:41 2007 +0200 @@ -21,14 +21,14 @@ /* Synched up with: Not in FSF. */ -#ifndef INCLUDED_faces_h_ -#define INCLUDED_faces_h_ +#ifndef _XEMACS_FACES_H_ +#define _XEMACS_FACES_H_ #include "buffer.h" /* for NUM_LEADING_BYTES */ -/* a Lisp_Face is the C object corresponding to a face. There is one - of these per face. It basically contains all of the specifiers for - the built-in face properties, plus the plist of user-specified +/* a struct Lisp_Face is the C object corresponding to a face. There + is one of these per face. It basically contains all of the specifiers + for the built-in face properties, plus the plist of user-specified properties. */ struct Lisp_Face @@ -125,7 +125,7 @@ corresponding single-face cachels. Formerly we didn't bother to keep track of the faces used for - merging. We do now because we need to do so because there is no + merging. We do know because we need to do so because there is no other way to properly handle multiple charsets for Mule in the presence of display tables short of always computing the values for all charsets, which is very expensive. Instead, we use a @@ -222,10 +222,11 @@ unsigned char font_updated[NUM_LEADING_BYTES]; }; -DECLARE_LRECORD (face, Lisp_Face); -#define XFACE(x) XRECORD (x, face, Lisp_Face) +DECLARE_LRECORD (face, struct Lisp_Face); +#define XFACE(x) XRECORD (x, face, struct Lisp_Face) #define XSETFACE(x, p) XSETRECORD (x, p, face) #define FACEP(x) RECORDP (x, face) +#define GC_FACEP(x) GC_RECORDP (x, face) #define CHECK_FACE(x) CHECK_RECORD (x, face) Lisp_Object ensure_face_cachel_contains_charset (struct face_cachel *cachel, @@ -240,7 +241,8 @@ void face_cachel_charset_font_metric_info (struct face_cachel *cachel, unsigned char *charsets, struct font_metric_info *fm); -void mark_face_cachels (face_cachel_dynarr *elements); +void mark_face_cachels (face_cachel_dynarr *elements, + void (*markobj) (Lisp_Object)); void mark_face_cachels_as_clean (struct window *w); void mark_face_cachels_as_not_updated (struct window *w); void reset_face_cachel (struct face_cachel *inst); @@ -258,7 +260,7 @@ extern Lisp_Object Qstrikethru, Vbuilt_in_face_specifiers, Vdefault_face; extern Lisp_Object Vleft_margin_face, Vpointer_face, Vright_margin_face; -extern Lisp_Object Vtext_cursor_face, Vvertical_divider_face; +extern Lisp_Object Vtext_cursor_face, Vvertical_divider_face; extern Lisp_Object Vtoolbar_face, Vgui_element_face, Vwidget_face; void mark_all_faces_as_clean (void); @@ -358,8 +360,6 @@ FACE_PROPERTY_INSTANCE (face, Qbackground_pixmap, domain, 0, Qzero) #define FACE_UNDERLINE_P(face, domain) \ (!NILP (FACE_PROPERTY_INSTANCE (face, Qunderline, domain, 0, Qzero))) -#define FACE_STRIKETHRU_P(face, domain) \ - (!NILP (FACE_PROPERTY_INSTANCE (face, Qstrikethru, domain, 0, Qzero))) #define FACE_HIGHLIGHT_P(face, domain) \ (!NILP (FACE_PROPERTY_INSTANCE (face, Qhighlight, domain, 0, Qzero))) #define FACE_DIM_P(face, domain) \ @@ -369,4 +369,4 @@ #define FACE_REVERSE_P(face, domain) \ (!NILP (FACE_PROPERTY_INSTANCE (face, Qreverse, domain, 0, Qzero))) -#endif /* INCLUDED_faces_h_ */ +#endif /* _XEMACS_FACES_H_ */