diff options
author | rubidium <rubidium@openttd.org> | 2008-11-24 18:53:17 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2008-11-24 18:53:17 +0000 |
commit | fea78fbfbb2bfe5c6ddf90adb811eb60f4ecfc50 (patch) | |
tree | ead76c1aeb888d0a95a040f598f2614ff0ad201e /src/fontcache.h | |
parent | 6878b181c7371ecc4af39eef6b01b710cc9f088b (diff) | |
download | openttd-fea78fbfbb2bfe5c6ddf90adb811eb60f4ecfc50.tar.xz |
(svn r14618) -Feature: when the chosen language isn't supported by the current font, try to find a font that does and use that instead. Thanks to glx/michi_cc for the Windows implementation.
Diffstat (limited to 'src/fontcache.h')
-rw-r--r-- | src/fontcache.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/fontcache.h b/src/fontcache.h index bf32c2927..e72fc8225 100644 --- a/src/fontcache.h +++ b/src/fontcache.h @@ -19,9 +19,9 @@ void InitializeUnicodeGlyphMap(); #ifdef WITH_FREETYPE struct FreeTypeSettings { - char small_font[260]; - char medium_font[260]; - char large_font[260]; + char small_font[MAX_PATH]; + char medium_font[MAX_PATH]; + char large_font[MAX_PATH]; uint small_size; uint medium_size; uint large_size; @@ -33,13 +33,26 @@ struct FreeTypeSettings { extern FreeTypeSettings _freetype; void InitFreeType(); +void UninitFreeType(); const struct Sprite *GetGlyph(FontSize size, uint32 key); uint GetGlyphWidth(FontSize size, uint32 key); +/** + * We would like to have a fallback font as the current one + * doesn't contain all characters we need. + * This function must set all fonts of settings. + * @param settings the settings to overwrite the fontname of. + * @param language_isocode the language, e.g. en_GB. + * @param winlangid the language ID windows style. + * @return true if a font has been set, false otherwise. + */ +bool SetFallbackFont(FreeTypeSettings *settings, const char *language_isocode, int winlangid); + #else /* Stub for initializiation */ static inline void InitFreeType() {} +static inline void UninitFreeType() {} /** Get the Sprite for a glyph */ static inline const Sprite *GetGlyph(FontSize size, uint32 key) |