Mercurial > emacs
changeset 25031:c4a2a30142bd
(FONT_INFO_ID): Build an ID from a font_info pointer.
(FONT_INFO_FROM_ID): Get a font_info pointer from an ID.
(toplevel): Add extern declarations for Vfontset_alias_alist
and Vglobal_fontset_alist.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Wed, 21 Jul 1999 21:43:52 +0000 |
parents | c69d9e48269b |
children | ae314c884db0 |
files | src/fontset.h |
diffstat | 1 files changed, 22 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/fontset.h Wed Jul 21 21:43:52 1999 +0000 +++ b/src/fontset.h Wed Jul 21 21:43:52 1999 +0000 @@ -217,6 +217,8 @@ EXFUN (Fquery_fontset, 2); extern Lisp_Object list_fontsets P_ ((struct frame *, Lisp_Object, int)); extern Lisp_Object Vglobal_fontset_alist; +struct frame; +int fs_query_fontset P_ ((struct frame *f, char *name)); extern Lisp_Object Qfontset; extern Lisp_Object Vuse_default_ascent; @@ -243,4 +245,24 @@ ? font_table + font_idx_temp \ : fs_load_font (f, font_table, charset, fontname, fontset)) +extern Lisp_Object Vfontset_alias_alist; +extern Lisp_Object Vglobal_fontset_alist; + + +/* Return an immutable id for font_info FONT_INFO on frame F. The + reason for this macro is hat one cannot hold pointers to font_info + structures in other data structures, because the table is + reallocated in x_list_fonts. */ + +#define FONT_INFO_ID(F, FONT_INFO) \ + (FONT_INFO) - (FRAME_X_DISPLAY_INFO ((F))->font_table) + +/* Given a font_info id ID, return a pointer to the font_info + structure on frame F. If ID is invalid, return null. */ + +#define FONT_INFO_FROM_ID(F, ID) \ + (((ID) >= 0 && (ID) < FRAME_X_DISPLAY_INFO ((F))->font_table_size) \ + ? (FRAME_X_DISPLAY_INFO ((F))->font_table + (ID)) \ + : 0) + #endif /* _FONTSET_H */