comparison src/faces.h @ 272:c5d627a313b1 r21-0b34

Import from CVS: tag r21-0b34
author cvs
date Mon, 13 Aug 2007 10:28:48 +0200
parents b2472a1930f2
children 558f606b08ae
comparison
equal deleted inserted replaced
271:c7b7086b0a39 272:c5d627a313b1
22 /* Synched up with: Not in FSF. */ 22 /* Synched up with: Not in FSF. */
23 23
24 #ifndef _XEMACS_FACES_H_ 24 #ifndef _XEMACS_FACES_H_
25 #define _XEMACS_FACES_H_ 25 #define _XEMACS_FACES_H_
26 26
27 #include "dynarr.h"
28 #include "buffer.h" /* for NUM_LEADING_BYTES */ 27 #include "buffer.h" /* for NUM_LEADING_BYTES */
29 28
30 /* a struct Lisp_Face is the C object corresponding to a face. There 29 /* a struct Lisp_Face is the C object corresponding to a face. There
31 is one of these per face. It basically contains all of the specifiers 30 is one of these per face. It basically contains all of the specifiers
32 for the built-in face properties, plus the plist of user-specified 31 for the built-in face properties, plus the plist of user-specified
253 #ifdef MEMORY_USAGE_STATS 252 #ifdef MEMORY_USAGE_STATS
254 int compute_face_cachel_usage (face_cachel_dynarr *face_cachels, 253 int compute_face_cachel_usage (face_cachel_dynarr *face_cachels,
255 struct overhead_stats *ovstats); 254 struct overhead_stats *ovstats);
256 #endif /* MEMORY_USAGE_STATS */ 255 #endif /* MEMORY_USAGE_STATS */
257 256
257 EXFUN (Fface_name, 1);
258 EXFUN (Ffind_face, 1);
259 EXFUN (Fget_face, 1);
260
261 extern Lisp_Object Qstrikethru, Vbuilt_in_face_specifiers, Vdefault_face;
262 extern Lisp_Object Vleft_margin_face, Vpointer_face, Vright_margin_face;
263 extern Lisp_Object Vtext_cursor_face;
264
258 void mark_all_faces_as_clean (void); 265 void mark_all_faces_as_clean (void);
259 void init_frame_faces (struct frame *f); 266 void init_frame_faces (struct frame *f);
260 void init_device_faces (struct device *d); 267 void init_device_faces (struct device *d);
261 void init_global_faces (struct device *d); 268 void init_global_faces (struct device *d);
262 face_index get_extent_fragment_face_cache_index (struct window *w, 269 face_index get_extent_fragment_face_cache_index (struct window *w,
263 struct extent_fragment *ef); 270 struct extent_fragment *ef);
264 Lisp_Object Ffind_face (Lisp_Object face_or_name);
265 Lisp_Object Fget_face (Lisp_Object face_or_name);
266 void update_frame_face_values (struct frame *f); 271 void update_frame_face_values (struct frame *f);
267 void face_property_was_changed (Lisp_Object face, Lisp_Object property, 272 void face_property_was_changed (Lisp_Object face, Lisp_Object property,
268 Lisp_Object locale); 273 Lisp_Object locale);
269 void default_face_font_info (Lisp_Object domain, int *ascent, 274 void default_face_font_info (Lisp_Object domain, int *ascent,
270 int *descent, int *height, int *width, 275 int *descent, int *height, int *width,
271 int *proportional_p); 276 int *proportional_p);
272 void default_face_height_and_width (Lisp_Object domain, 277 void default_face_height_and_width (Lisp_Object domain,
273 int *height, int *width); 278 int *height, int *width);
274 void default_face_height_and_width_1 (Lisp_Object domain, 279 void default_face_height_and_width_1 (Lisp_Object domain,
275 int *height, int *width); 280 int *height, int *width);
276
277 extern Lisp_Object Qforeground, Qbackground, Qfont, Qdisplay_table;
278 extern Lisp_Object Qbackground_pixmap, Qunderline, Qhighlight, Qdim;
279 extern Lisp_Object Qstrikethru,Qblinking, Qreverse;
280
281 extern Lisp_Object Vdefault_face, Vmodeline_face;
282 extern Lisp_Object Vleft_margin_face, Vright_margin_face, Vtext_cursor_face;
283 extern Lisp_Object Vpointer_face;
284 281
285 #define FACE_CACHEL_FONT(cachel, charset) \ 282 #define FACE_CACHEL_FONT(cachel, charset) \
286 (cachel->font[XCHARSET_LEADING_BYTE (charset) - 128]) 283 (cachel->font[XCHARSET_LEADING_BYTE (charset) - 128])
287 284
288 #define WINDOW_FACE_CACHEL(window, index) \ 285 #define WINDOW_FACE_CACHEL(window, index) \