X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FFontLoader.h;h=e876e7820030b3d3bf1b5ac04bf9ceb1c5f50615;hb=8d451794032b5eb0a4e4579a4d794511878ee783;hp=bddf8afcda0a2a30095b943fca6fa5992830b8be;hpb=6c300f72a217722652dc27db9108e1050028979c;p=lyx.git diff --git a/src/frontends/FontLoader.h b/src/frontends/FontLoader.h index bddf8afcda..e876e78200 100644 --- a/src/frontends/FontLoader.h +++ b/src/frontends/FontLoader.h @@ -9,12 +9,14 @@ * Full author contact details are available in file CREDITS. */ -#ifndef LYX_FONTLOADER_H -#define LYX_FONTLOADER_H +#ifndef FONTLOADER_H +#define FONTLOADER_H + +#include "support/strfwd.h" namespace lyx { -class LyXFont; +class FontInfo; namespace frontend { @@ -25,26 +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 -/// Implementation is in Application.C +/// Implementation is in Application.cpp extern frontend::FontLoader & theFontLoader(); } // namespace lyx -#endif // QFONT_LOADER_H +#endif // FONTLOADER_H