aboutsummaryrefslogtreecommitdiffstats
path: root/src/font.h
diff options
context:
space:
mode:
authorKenichi Handa2006-07-24 04:44:13 +0000
committerKenichi Handa2006-07-24 04:44:13 +0000
commit0bd4cc79df4c781897aecbc8de8b222e62099e41 (patch)
tree48457974862b3041b2062cee5aa1295a06880e69 /src/font.h
parent10d16101060a14542ce23344ef897d5b7ec81562 (diff)
downloademacs-0bd4cc79df4c781897aecbc8de8b222e62099e41.tar.gz
emacs-0bd4cc79df4c781897aecbc8de8b222e62099e41.zip
(LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
(LGLYPH_SET_TO): New macros. (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment element of G is vector or not. (font_at): Extern it.
Diffstat (limited to 'src/font.h')
-rw-r--r--src/font.h18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/font.h b/src/font.h
index 85f36d20872..019e12cfb80 100644
--- a/src/font.h
+++ b/src/font.h
@@ -255,21 +255,25 @@ struct composition;
255#define LGSTRING_LENGTH(lgs) (ASIZE ((lgs)) - 1) 255#define LGSTRING_LENGTH(lgs) (ASIZE ((lgs)) - 1)
256#define LGSTRING_GLYPH(lgs, idx) AREF ((lgs), (idx) + 1) 256#define LGSTRING_GLYPH(lgs, idx) AREF ((lgs), (idx) + 1)
257 257
258#define LGLYPH_FROM(g) AREF ((g), 0)
259#define LGLYPH_TO(g) AREF ((g), 1)
258#define LGLYPH_CHAR(g) AREF ((g), 2) 260#define LGLYPH_CHAR(g) AREF ((g), 2)
259#define LGLYPH_CODE(g) AREF ((g), 3) 261#define LGLYPH_CODE(g) AREF ((g), 3)
260#define LGLYPH_WIDTH(g) AREF ((g), 4) 262#define LGLYPH_WIDTH(g) AREF ((g), 4)
261#define LGLYPH_ADJUSTMENT(g) AREF ((g), 5) 263#define LGLYPH_ADJUSTMENT(g) AREF ((g), 5)
264#define LGLYPH_SET_FROM(g, val) ASET ((g), 0, (val))
265#define LGLYPH_SET_TO(g, val) ASET ((g), 1, (val))
262#define LGLYPH_SET_CHAR(g, val) ASET ((g), 2, (val)) 266#define LGLYPH_SET_CHAR(g, val) ASET ((g), 2, (val))
263#define LGLYPH_SET_CODE(g, val) ASET ((g), 3, (val)) 267#define LGLYPH_SET_CODE(g, val) ASET ((g), 3, (val))
264#define LGLYPH_SET_WIDTH(g, val) ASET ((g), 4, (val)) 268#define LGLYPH_SET_WIDTH(g, val) ASET ((g), 4, (val))
265#define LGLYPH_SET_ADJUSTMENT(g, val) ASET ((g), 5, (val)) 269#define LGLYPH_SET_ADJUSTMENT(g, val) ASET ((g), 5, (val))
266 270
267#define LGLYPH_XOFF(g) (NILP (LGLYPH_ADJUSTMENT (g)) ? 0 \ 271#define LGLYPH_XOFF(g) (VECTORP (LGLYPH_ADJUSTMENT (g)) \
268 : XINT (AREF (LGLYPH_ADJUSTMENT (g), 0))) 272 ? XINT (AREF (LGLYPH_ADJUSTMENT (g), 0)) : 0)
269#define LGLYPH_YOFF(g) (NILP (LGLYPH_ADJUSTMENT (g)) ? 0 \ 273#define LGLYPH_YOFF(g) (VECTORP (LGLYPH_ADJUSTMENT (g)) \
270 : XINT (AREF (LGLYPH_ADJUSTMENT (g), 1))) 274 ? XINT (AREF (LGLYPH_ADJUSTMENT (g), 1)) : 0)
271#define LGLYPH_WADJUST(g) (NILP (LGLYPH_ADJUSTMENT (g)) ? 0 \ 275#define LGLYPH_WADJUST(g) (VECTORP (LGLYPH_ADJUSTMENT (g)) \
272 : XINT (AREF (LGLYPH_ADJUSTMENT (g), 2))) 276 ? XINT (AREF (LGLYPH_ADJUSTMENT (g), 2)) : 0)
273 277
274#define FONT_INVALID_CODE 0xFFFFFFFF 278#define FONT_INVALID_CODE 0xFFFFFFFF
275 279
@@ -470,6 +474,8 @@ extern int font_unparse_fcname P_ ((Lisp_Object font, int pixel_size,
470 char *name, int bytes)); 474 char *name, int bytes));
471extern void register_font_driver P_ ((struct font_driver *driver, FRAME_PTR f)); 475extern void register_font_driver P_ ((struct font_driver *driver, FRAME_PTR f));
472extern void free_font_driver_list P_ ((FRAME_PTR f)); 476extern void free_font_driver_list P_ ((FRAME_PTR f));
477extern Lisp_Object font_at P_ ((int c, EMACS_INT pos, struct face *face,
478 struct window *w, Lisp_Object object));
473 479
474extern struct font *font_prepare_composition P_ ((struct composition *cmp)); 480extern struct font *font_prepare_composition P_ ((struct composition *cmp));
475 481