diff options
Diffstat (limited to 'src/gui/text/windows/qwindowsfontdatabasebase_p.h')
-rw-r--r-- | src/gui/text/windows/qwindowsfontdatabasebase_p.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/gui/text/windows/qwindowsfontdatabasebase_p.h b/src/gui/text/windows/qwindowsfontdatabasebase_p.h index d192c62d7f..55a3363551 100644 --- a/src/gui/text/windows/qwindowsfontdatabasebase_p.h +++ b/src/gui/text/windows/qwindowsfontdatabasebase_p.h @@ -29,6 +29,10 @@ QT_BEGIN_NAMESPACE +#if QT_CONFIG(directwrite) + class QCustomFontFileLoader; +#endif + class QWindowsFontEngineData { Q_DISABLE_COPY_MOVE(QWindowsFontEngineData) @@ -53,10 +57,12 @@ public: QWindowsFontDatabaseBase(); ~QWindowsFontDatabaseBase() override; + QFontEngine *fontEngine(const QFontDef &fontDef, void *handle) override; QFontEngine *fontEngine(const QByteArray &fontData, qreal pixelSize, QFont::HintingPreference hintingPreference) override; + void invalidate() override; + static int defaultVerticalDPI(); - static void setDefaultVerticalDPI(int d); static QSharedPointer<QWindowsFontEngineData> data(); #if QT_CONFIG(directwrite) @@ -91,11 +97,17 @@ public: protected: #if QT_CONFIG(directwrite) - IDWriteFontFace *createDirectWriteFace(const QByteArray &fontData) const; + QList<IDWriteFontFace *> createDirectWriteFaces(const QByteArray &fontData, + bool queryVariations = true) const; + IDWriteFontFace *createDirectWriteFace(const QByteArray &fontData); #endif private: static bool init(QSharedPointer<QWindowsFontEngineData> data); + +#if QT_CONFIG(directwrite) + mutable std::unique_ptr<QCustomFontFileLoader> m_fontFileLoader; +#endif }; QT_END_NAMESPACE |