From: Jason Rumney Date: Sat, 10 Nov 2001 13:51:02 +0000 (+0000) Subject: (enum_font_cb2): Use leading @ on face name to detect X-Git-Tag: ttn-vms-21-2-B4~18707 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=66895301efde9fd7a6e29cdabaa6b8e53bd705dc;p=emacs.git (enum_font_cb2): Use leading @ on face name to detect vertical fonts. Allow them if face name is explicitly specified. Do not give up if we find a font that cannot be converted to an xlfd. --- diff --git a/src/w32fns.c b/src/w32fns.c index def351562db..9a2a1e31661 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -6672,10 +6672,16 @@ enum_font_cb2 (lplf, lptm, FontType, lpef) int FontType; enumfont_t * lpef; { - /* Ignore struck out, underlined and vertical versions of fonts. */ - if (lplf->elfLogFont.lfStrikeOut || lplf->elfLogFont.lfUnderline - || lplf->elfLogFont.lfEscapement != 0 - || lplf->elfLogFont.lfOrientation != 0) + /* Ignore struck out and underlined versions of fonts. */ + if (lplf->elfLogFont.lfStrikeOut || lplf->elfLogFont.lfUnderline) + return 1; + + /* Only return fonts with names starting with @ if they were + explicitly specified, since Microsoft uses an initial @ to + denote fonts for vertical writing, without providing a more + convenient way of identifying them. */ + if (lplf->elfLogFont.lfFaceName[0] == '@' + && lpef->logfont.lfFaceName[0] != '@') return 1; /* Check that the character set matches if it was specified */ @@ -6728,7 +6734,7 @@ enum_font_cb2 (lplf, lptm, FontType, lpef) /* TODO: List all relevant charsets if charset not specified. */ if (!w32_to_x_font (&(lplf->elfLogFont), buf, 100, charset)) - return 0; + return 1; if (NILP (*(lpef->pattern)) || w32_font_match (buf, XSTRING (*(lpef->pattern))->data))