X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FFontLoader.h;h=ac1854a345073e730665b4ddf5c62a7b2fdfe3de;hb=394fc5cf15372eee1dbb80828a86c7b97abadeac;hp=9000353cf38b267828c419988a9b5791b9c9fcf9;hpb=28ad9602557a145bfd88c79dddecdc34c95c698c;p=lyx.git diff --git a/src/frontends/FontLoader.h b/src/frontends/FontLoader.h index 9000353cf3..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,23 +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 -extern lyx::frontend::FontLoader & theFontLoader(); +/// Implementation is in Application.cpp +extern frontend::FontLoader & theFontLoader(); + +} // namespace lyx -#endif // QFONT_LOADER_H +#endif // FONTLOADER_H