diff options
author | Jørgen Lind <jorgen.lind@nokia.com> | 2010-11-16 07:51:17 (GMT) |
---|---|---|
committer | Jørgen Lind <jorgen.lind@nokia.com> | 2010-11-22 13:13:30 (GMT) |
commit | 9d00cf202376c2b02dec27b362cf88a00e952e88 (patch) | |
tree | fdfa479fbaa5a505dd7147e379b0c58e54ebce41 /src/gui/text | |
parent | 687d44569dbccea72c582c6d7da9a271ae2c86c8 (diff) | |
download | Qt-9d00cf202376c2b02dec27b362cf88a00e952e88.zip Qt-9d00cf202376c2b02dec27b362cf88a00e952e88.tar.gz Qt-9d00cf202376c2b02dec27b362cf88a00e952e88.tar.bz2 |
Lighthouse: using QFont enums when possible in QPlatformFontdatabase
also, make it possible to register fonts in QPlatformDatabases with a
null handle
Reviewed-by: paul
Diffstat (limited to 'src/gui/text')
-rw-r--r-- | src/gui/text/qfontdatabase_qpa.cpp | 11 | ||||
-rw-r--r-- | src/gui/text/qplatformfontdatabase_qpa.cpp | 12 | ||||
-rw-r--r-- | src/gui/text/qplatformfontdatabase_qpa.h | 4 |
3 files changed, 12 insertions, 15 deletions
diff --git a/src/gui/text/qfontdatabase_qpa.cpp b/src/gui/text/qfontdatabase_qpa.cpp index 19ce1be..e54093c 100644 --- a/src/gui/text/qfontdatabase_qpa.cpp +++ b/src/gui/text/qfontdatabase_qpa.cpp @@ -156,14 +156,11 @@ QFontEngine *loadSingleEngine(int script, QFontEngine *engine = QFontCache::instance()->findEngine(key); if (!engine) { QPlatformFontDatabase *pfdb = QApplicationPrivate::platformIntegration()->fontDatabase(); - if (size->handle) { - engine = pfdb->fontEngine(def,QUnicodeTables::Script(script),size->handle); - if (engine) { - QFontCache::Key key(def,script); - QFontCache::instance()->instance()->insertEngine(key,engine); - } + engine = pfdb->fontEngine(def,QUnicodeTables::Script(script),size->handle); + if (engine) { + QFontCache::Key key(def,script); + QFontCache::instance()->instance()->insertEngine(key,engine); } - } return engine; } diff --git a/src/gui/text/qplatformfontdatabase_qpa.cpp b/src/gui/text/qplatformfontdatabase_qpa.cpp index 370c921..7a89fe4 100644 --- a/src/gui/text/qplatformfontdatabase_qpa.cpp +++ b/src/gui/text/qplatformfontdatabase_qpa.cpp @@ -65,9 +65,9 @@ void QPlatformFontDatabase::registerQPF2Font(const QByteArray &dataArray, void * QByteArray writingSystemBits = QFontEngineQPA::extractHeaderField(data, QFontEngineQPA::Tag_WritingSystems).toByteArray(); if (!fontName.isEmpty() && pixelSize) { - int fontWeight = 50; + QFont::Weight fontWeight = QFont::Normal; if (weight.type() == QVariant::Int || weight.type() == QVariant::UInt) - fontWeight = weight.toInt(); + fontWeight = QFont::Weight(weight.toInt()); QFont::Style fontStyle = static_cast<QFont::Style>(style.toInt()); @@ -80,16 +80,16 @@ void QPlatformFontDatabase::registerQPF2Font(const QByteArray &dataArray, void * currentByte >>= 1; } } - - registerFont(fontName,QString(),fontWeight,fontStyle,100,true,false,pixelSize,writingSystems,handle); + QFont::Stretch stretch = QFont::Unstretched; + registerFont(fontName,QString(),fontWeight,fontStyle,stretch,true,false,pixelSize,writingSystems,handle); } } else { qDebug() << "header verification of QPF2 font failed. maybe it is corrupt?"; } } -void QPlatformFontDatabase::registerFont(const QString &familyname, const QString &foundryname, int weight, - QFont::Style style, int stretch, bool antialiased, bool scalable, int pixelSize, +void QPlatformFontDatabase::registerFont(const QString &familyname, const QString &foundryname, QFont::Weight weight, + QFont::Style style, QFont::Stretch stretch, bool antialiased, bool scalable, int pixelSize, const QSupportedWritingSystems &writingSystems, void *usrPtr) { if (scalable) diff --git a/src/gui/text/qplatformfontdatabase_qpa.h b/src/gui/text/qplatformfontdatabase_qpa.h index 75b0a18..aa465ab 100644 --- a/src/gui/text/qplatformfontdatabase_qpa.h +++ b/src/gui/text/qplatformfontdatabase_qpa.h @@ -96,8 +96,8 @@ public: //callback static void registerQPF2Font(const QByteArray &dataArray, void *handle); - static void registerFont(const QString &familyname, const QString &foundryname, int weight, - QFont::Style style, int stetch, bool antialiased, bool scalable, int pixelSize, + static void registerFont(const QString &familyname, const QString &foundryname, QFont::Weight weight, + QFont::Style style, QFont::Stretch stretch, bool antialiased, bool scalable, int pixelSize, const QSupportedWritingSystems &writingSystems, void *handle); }; |