summaryrefslogtreecommitdiffstats
path: root/src/platformsupport
diff options
context:
space:
mode:
authorKonstantin Ritt <ritt.ks@gmail.com>2013-09-10 17:17:47 +0300
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-13 02:29:01 +0200
commit02651060b6ce5b16b06721378a239a6d2bd9f528 (patch)
tree48688cacc0def0cc6ea1bbd73189adb0ef7e9e45 /src/platformsupport
parent741737b080cb50a99fd6c72be9128ffb41f6c66a (diff)
Decrease code duplication in QFontDatabase-s
Move scriptRequiresOpenType() body right into QFontEngine::supportsScript(), thus centralizing use of this performance cheat. Change-Id: I5f494b086f8f900b631c491f41e9cb800002c0f6 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/platformsupport')
-rw-r--r--src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp14
-rw-r--r--src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp14
2 files changed, 6 insertions, 22 deletions
diff --git a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp
index 9b87418846..400dbbd0c6 100644
--- a/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp
+++ b/src/platformsupport/fontdatabases/basic/qbasicfontdatabase.cpp
@@ -91,12 +91,6 @@ typedef struct {
quint16 stringOffset;
} NAME_RECORD;
-static inline bool scriptRequiresOpenType(int script)
-{
- return ((script >= QChar::Script_Syriac && script <= QChar::Script_Sinhala)
- || script == QChar::Script_Khmer || script == QChar::Script_Nko);
-}
-
void QBasicFontDatabase::populateFontDatabase()
{
QString fontpath = fontDir();
@@ -137,11 +131,9 @@ QFontEngine *QBasicFontDatabase::fontEngine(const QFontDef &fontDef, QChar::Scri
if (engine->invalid()) {
delete engine;
engine = 0;
- } else if (scriptRequiresOpenType(script)) {
- if (!engine->supportsScript(script)) {
- delete engine;
- engine = 0;
- }
+ } else if (!engine->supportsScript(script)) {
+ delete engine;
+ engine = 0;
}
return engine;
diff --git a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp
index 3e056af97c..6d497af686 100644
--- a/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp
+++ b/src/platformsupport/fontdatabases/fontconfig/qfontconfigdatabase.cpp
@@ -69,12 +69,6 @@ static inline bool requiresOpenType(int writingSystem)
|| writingSystem == QFontDatabase::Khmer || writingSystem == QFontDatabase::Nko);
}
-static inline bool scriptRequiresOpenType(int script)
-{
- return ((script >= QChar::Script_Syriac && script <= QChar::Script_Sinhala)
- || script == QChar::Script_Khmer || script == QChar::Script_Nko);
-}
-
static int getFCWeight(int fc_weight)
{
int qtweight = QFont::Black;
@@ -602,11 +596,9 @@ QFontEngine *QFontconfigDatabase::fontEngine(const QFontDef &f, QChar::Script sc
if (engine->invalid()) {
delete engine;
engine = 0;
- } else if (scriptRequiresOpenType(script)) {
- if (!engine->supportsScript(script)) {
- delete engine;
- engine = 0;
- }
+ } else if (!engine->supportsScript(script)) {
+ delete engine;
+ engine = 0;
}
return engine;