X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FFontLoader.h;h=ac1854a345073e730665b4ddf5c62a7b2fdfe3de;hb=50060053e36b3e9dfe03bc33ed3abac1eacc54b0;hp=dc4b7458d6a53669000e7566b9179a51410fad07;hpb=c585c2421b6c63bd3906f988a5d73b0dbc445c4e;p=lyx.git diff --git a/src/frontends/FontLoader.h b/src/frontends/FontLoader.h index dc4b7458d6..ac1854a345 100644 --- a/src/frontends/FontLoader.h +++ b/src/frontends/FontLoader.h @@ -9,12 +9,15 @@ * Full author contact details are available in file CREDITS. */ -#ifndef LYX_FONTLOADER_H -#define LYX_FONTLOADER_H +#ifndef FONTLOADER_H +#define FONTLOADER_H -class LyXFont; +#include "support/strfwd.h" namespace lyx { + +class FontInfo; + namespace frontend { class FontMetrics; @@ -24,24 +27,30 @@ class FontLoader { public: /// - FontLoader() {} - /// - virtual ~FontLoader() {} + FontLoader(); + /// Clears cache + ~FontLoader(); /// Update fonts after zoom, dpi, font names, or norm change - virtual void update() = 0; + // (basically by deleting all cached values) + void update(); /// Is the given font available ? - virtual bool available(LyXFont const & f) = 0; + bool available(FontInfo const & f); + + /// Can the given symbol be displayed in general? + bool canBeDisplayed(char_type c); - /// Get the Font metrics for this LyXFont - virtual FontMetrics const & metrics(LyXFont const & f) = 0; + /// Get the Font metrics for this FontInfo + FontMetrics const & metrics(FontInfo const & f); }; + } // namespace frontend -} // namespace lyx -/// Implementation is in Application.C -extern lyx::frontend::FontLoader & theFontLoader(); +/// Implementation is in Application.cpp +extern frontend::FontLoader & theFontLoader(); + +} // namespace lyx -#endif // QFONT_LOADER_H +#endif // FONTLOADER_H