X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=unix%2Fgtkfont.h;h=1ed202bfc134c91d1af829f88ddefff704f31829;hb=a063e522970946bf7d5dc052079d7773c0dee76d;hp=72f1f6bf6a56dc43864f7534f168680bac3288e5;hpb=24bad48f005b9db2844b43b4359b832bbcfcf6ff;p=PuTTY.git diff --git a/unix/gtkfont.h b/unix/gtkfont.h index 72f1f6bf..1ed202bf 100644 --- a/unix/gtkfont.h +++ b/unix/gtkfont.h @@ -28,6 +28,14 @@ typedef struct unifont { * Font dimensions needed by clients. */ int width, height, ascent, descent; + + /* + * Indicates whether this font is capable of handling all glyphs + * (Pango fonts can do this because Pango automatically supplies + * missing glyphs from other fonts), or whether it would like a + * fallback font to cope with missing glyphs. + */ + int want_fallback; } unifont; unifont *unifont_create(GtkWidget *widget, const char *name, @@ -38,6 +46,18 @@ void unifont_draw_text(GdkDrawable *target, GdkGC *gc, unifont *font, int x, int y, const wchar_t *string, int len, int wide, int bold, int cellwidth); +/* + * This function behaves exactly like the low-level unifont_create, + * except that as well as the requested font it also allocates (if + * necessary) a fallback font for filling in replacement glyphs. + * + * Return value is usable with unifont_destroy and unifont_draw_text + * as if it were an ordinary unifont. + */ +unifont *multifont_create(GtkWidget *widget, const char *name, + int wide, int bold, + int shadowoffset, int shadowalways); + /* * Unified font selector dialog. I can't be bothered to do a * proper GTK subclassing today, so this will just be an ordinary