# HG changeset patch # User Kenichi Handa # Date 1154395766 0 # Node ID cb3eb61507045365ad8d0a03c79de3e1b8e47bf2 # Parent 7c29515f7c2a40ae9ac2231bfdfe3fbd5690f052 (struct font_driver): New member `match'. (font_update_drivers): Prototype adjusted. diff -r 7c29515f7c2a -r cb3eb6150704 src/font.h --- a/src/font.h Tue Aug 01 01:28:43 2006 +0000 +++ b/src/font.h Tue Aug 01 01:29:26 2006 +0000 @@ -291,11 +291,16 @@ cons whose cdr part is the actual cache area. */ Lisp_Object (*get_cache) P_ ((Lisp_Object frame)); - /* List fonts matching with FONT_SPEC on FRAME. The value is a - vector of font-entities. This is the sole API that allocates - font-entities. */ + /* List fonts exactly matching with FONT_SPEC on FRAME. The value + is a vector of font-entities. This is the sole API that + allocates font-entities. */ Lisp_Object (*list) P_ ((Lisp_Object frame, Lisp_Object font_spec)); + /* Return a font entity most closely maching with FONT_SPEC on + FRAME. The closeness is detemined by the font backend, thus + `face-font-selection-order' is ignored here. */ + Lisp_Object (*match) P_ ((Lisp_Object frame, Lisp_Object font_spec)); + /* Optional. List available families. The value is a list of family names (symbols). */ @@ -480,8 +485,7 @@ char *name, int bytes)); extern void register_font_driver P_ ((struct font_driver *driver, FRAME_PTR f)); extern void free_font_driver_list P_ ((FRAME_PTR f)); -extern void font_update_drivers P_ ((FRAME_PTR f, Lisp_Object name_list, - struct font *)); +extern Lisp_Object font_update_drivers P_ ((FRAME_PTR f, Lisp_Object list)); extern Lisp_Object font_at P_ ((int c, EMACS_INT pos, struct face *face, struct window *w, Lisp_Object object));