/* Synched up with: Not in FSF. */
-#ifndef _XEMACS_FACES_H_
-#define _XEMACS_FACES_H_
+#ifndef INCLUDED_faces_h_
+#define INCLUDED_faces_h_
#include "buffer.h" /* for NUM_LEADING_BYTES */
-/* 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
+/* 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
properties. */
struct Lisp_Face
corresponding single-face cachels.
Formerly we didn't bother to keep track of the faces used for
- merging. We do know because we need to do so because there is no
+ merging. We do now 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
unsigned char font_updated[NUM_LEADING_BYTES];
};
-DECLARE_LRECORD (face, struct Lisp_Face);
-#define XFACE(x) XRECORD (x, face, struct Lisp_Face)
+DECLARE_LRECORD (face, Lisp_Face);
+#define XFACE(x) XRECORD (x, face, Lisp_Face)
#define XSETFACE(x, p) XSETRECORD (x, p, face)
#define FACEP(x) RECORDP (x, face)
#define CHECK_FACE(x) CHECK_RECORD (x, face)
Lisp_Object charset);
void ensure_face_cachel_complete (struct face_cachel *cachel,
Lisp_Object domain,
- unsigned char *charsets);
+ Charset_ID *charsets);
void update_face_cachel_data (struct face_cachel *cachel,
Lisp_Object domain,
Lisp_Object face);
void face_cachel_charset_font_metric_info (struct face_cachel *cachel,
- unsigned char *charsets,
+ Charset_ID *charsets,
struct font_metric_info *fm);
void mark_face_cachels (face_cachel_dynarr *elements);
void mark_face_cachels_as_clean (struct window *w);
int *height, int *width);
#define FACE_CACHEL_FONT(cachel, charset) \
- (cachel->font[XCHARSET_LEADING_BYTE (charset) - 128])
+ (cachel->font[XCHARSET_LEADING_BYTE (charset) - MIN_LEADING_BYTE])
#define WINDOW_FACE_CACHEL(window, index) \
Dynarr_atp ((window)->face_cachels, index)
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) \
#define FACE_REVERSE_P(face, domain) \
(!NILP (FACE_PROPERTY_INSTANCE (face, Qreverse, domain, 0, Qzero)))
-#endif /* _XEMACS_FACES_H_ */
+#endif /* INCLUDED_faces_h_ */