OpenTTD Source 20260304-master-g1baaa74679
Win32FontCacheFactory Class Reference
Inheritance diagram for Win32FontCacheFactory:
FontCacheFactory

Public Member Functions

std::unique_ptr< FontCacheLoadFont (FontSize fs, FontType fonttype) const override
 Loads the GDI font.
bool FindFallbackFont (FontCacheSettings *settings, const std::string &language_isocode, MissingGlyphSearcher *callback) const override
 We would like to have a fallback font as the current one doesn't contain all characters we need.

Static Private Member Functions

static std::unique_ptr< FontCacheLoadWin32Font (FontSize fs, const LOGFONT &logfont, uint size, std::string_view font_name)
static bool TryLoadFontFromFile (const std::string &font_name, LOGFONT &logfont)

Static Private Attributes

static Win32FontCacheFactory instance

Additional Inherited Members

Private Member Functions inherited from FontCacheFactory
 FontCacheFactory (std::string_view name, std::string_view description)
 ~FontCacheFactory () override
 Unregister this factory.
Private Member Functions inherited from BaseProvider< FontCacheFactory >
constexpr BaseProvider (std::string_view name, std::string_view description)
virtual ~BaseProvider ()=default
 Ensure the destructor of the sub classes are called as well.
std::string_view GetName () const
std::string_view GetDescription () const
Private Attributes inherited from BaseProvider< FontCacheFactory >
const std::string_view name
const std::string_view description

Detailed Description

Definition at line 269 of file font_win32.cpp.

Constructor & Destructor Documentation

◆ Win32FontCacheFactory()

Win32FontCacheFactory::Win32FontCacheFactory ( )
inline

Definition at line 271 of file font_win32.cpp.

Member Function Documentation

◆ FindFallbackFont()

bool Win32FontCacheFactory::FindFallbackFont ( FontCacheSettings * settings,
const std::string & language_isocode,
MissingGlyphSearcher * callback ) const
inlineoverridevirtual

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.

Parameters
settingsThe settings to overwrite the fontname of.
language_isocodeThe language, e.g. en_GB.
callbackThe function to call to check for missing glyphs.
Returns
true if a font has been set, false otherwise.

Implements FontCacheFactory.

Definition at line 313 of file font_win32.cpp.

References Debug, OTTD2FS(), and settings.

◆ LoadFont()

std::unique_ptr< FontCache > Win32FontCacheFactory::LoadFont ( FontSize fs,
FontType fonttype ) const
inlineoverridevirtual

Loads the GDI font.

If a GDI font description is present, e.g. from the automatic font fallback search, use it. Otherwise, try to resolve it by font name.

Parameters
fsThe font size to load.
fonttypeThe type of font that is being loaded.
Returns
FontCache of the font if loaded, or nullptr.

Implements FontCacheFactory.

Definition at line 281 of file font_win32.cpp.

References convert_to_fs(), FS_MONO, GetFontCacheFontName(), GetFontCacheFontSize(), GetFontCacheSubSetting(), settings, StrContainsIgnoreCase(), and TrueType.

◆ LoadWin32Font()

std::unique_ptr< FontCache > Win32FontCacheFactory::LoadWin32Font ( FontSize fs,
const LOGFONT & logfont,
uint size,
std::string_view font_name )
inlinestaticprivate

Definition at line 339 of file font_win32.cpp.

◆ TryLoadFontFromFile()

bool Win32FontCacheFactory::TryLoadFontFromFile ( const std::string & font_name,
LOGFONT & logfont )
inlinestaticprivate

Definition at line 351 of file font_win32.cpp.

Field Documentation

◆ instance

Win32FontCacheFactory Win32FontCacheFactory::instance
staticprivate

Definition at line 401 of file font_win32.cpp.


The documentation for this class was generated from the following file: