diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2022-03-25 11:54:22 +0100 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2022-03-31 20:12:54 +0100 |
commit | 4bd3080163b49b09bc0ec322805653a7d293df02 (patch) | |
tree | bc2b7ea002734640c20fd33d154ddf584270d121 /src/gui/text/qfontdatabase.cpp | |
parent | d0ce9886f15b2dedcc485545eb4e746b0778b821 (diff) |
QFontDatabase: Move writing_system_sample() into only caller
Change-Id: I225a24a73c3d0e79db5b1a33513f5582d1abf531
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Diffstat (limited to 'src/gui/text/qfontdatabase.cpp')
-rw-r--r-- | src/gui/text/qfontdatabase.cpp | 155 |
1 files changed, 76 insertions, 79 deletions
diff --git a/src/gui/text/qfontdatabase.cpp b/src/gui/text/qfontdatabase.cpp index 5d1a337a72..de4fdb5d2e 100644 --- a/src/gui/text/qfontdatabase.cpp +++ b/src/gui/text/qfontdatabase.cpp @@ -2003,90 +2003,87 @@ QString QFontDatabase::writingSystemName(WritingSystem writingSystem) return QCoreApplication::translate("QFontDatabase", name); } -static QStringView writing_system_sample(QFontDatabase::WritingSystem writingSystem) -{ - switch (writingSystem) { - case QFontDatabase::Any: - case QFontDatabase::Symbol: - // show only ascii characters - return u"AaBbzZ"; - case QFontDatabase::Latin: - // This is cheating... we only show latin-1 characters so that we don't - // end up loading lots of fonts - at least on X11... - return u"Aa\x00C3\x00E1Zz"; - case QFontDatabase::Greek: - return u"\x0393\x03B1\x03A9\x03C9"; - case QFontDatabase::Cyrillic: - return u"\x0414\x0434\x0436\x044f"; - case QFontDatabase::Armenian: - return u"\x053f\x054f\x056f\x057f"; - case QFontDatabase::Hebrew: - return u"\x05D0\x05D1\x05D2\x05D3"; - case QFontDatabase::Arabic: - return u"\x0623\x0628\x062C\x062F\x064A\x0629\x0020\x0639\x0631\x0628\x064A\x0629"; - case QFontDatabase::Syriac: - return u"\x0715\x0725\x0716\x0726"; - case QFontDatabase::Thaana: - return u"\x0784\x0794\x078c\x078d"; - case QFontDatabase::Devanagari: - return u"\x0905\x0915\x0925\x0935"; - case QFontDatabase::Bengali: - return u"\x0986\x0996\x09a6\x09b6"; - case QFontDatabase::Gurmukhi: - return u"\x0a05\x0a15\x0a25\x0a35"; - case QFontDatabase::Gujarati: - return u"\x0a85\x0a95\x0aa5\x0ab5"; - case QFontDatabase::Oriya: - return u"\x0b06\x0b16\x0b2b\x0b36"; - case QFontDatabase::Tamil: - return u"\x0b89\x0b99\x0ba9\x0bb9"; - case QFontDatabase::Telugu: - return u"\x0c05\x0c15\x0c25\x0c35"; - case QFontDatabase::Kannada: - return u"\x0c85\x0c95\x0ca5\x0cb5"; - case QFontDatabase::Malayalam: - return u"\x0d05\x0d15\x0d25\x0d35"; - case QFontDatabase::Sinhala: - return u"\x0d90\x0da0\x0db0\x0dc0"; - case QFontDatabase::Thai: - return u"\x0e02\x0e12\x0e22\x0e32"; - case QFontDatabase::Lao: - return u"\x0e8d\x0e9d\x0ead\x0ebd"; - case QFontDatabase::Tibetan: - return u"\x0f00\x0f01\x0f02\x0f03"; - case QFontDatabase::Myanmar: - return u"\x1000\x1001\x1002\x1003"; - case QFontDatabase::Georgian: - return u"\x10a0\x10b0\x10c0\x10d0"; - case QFontDatabase::Khmer: - return u"\x1780\x1790\x17b0\x17c0"; - case QFontDatabase::SimplifiedChinese: - return u"\x4e2d\x6587\x8303\x4f8b"; - case QFontDatabase::TraditionalChinese: - return u"\x4e2d\x6587\x7bc4\x4f8b"; - case QFontDatabase::Japanese: - return u"\x30b5\x30f3\x30d7\x30eb\x3067\x3059"; - case QFontDatabase::Korean: - return u"\xac00\xac11\xac1a\xac2f"; - case QFontDatabase::Vietnamese: - return u"\x1ED7\x1ED9\x1ED1\x1ED3"; - case QFontDatabase::Ogham: - return u"\x1681\x1682\x1683\x1684"; - case QFontDatabase::Runic: - return u"\x16a0\x16a1\x16a2\x16a3"; - case QFontDatabase::Nko: - return u"\x7ca\x7cb\x7cc\x7cd"; - default: - return nullptr; - } -} - /*! Returns a string with sample characters from \a writingSystem. */ QString QFontDatabase::writingSystemSample(WritingSystem writingSystem) { - return writing_system_sample(writingSystem).toString(); + return [&]() -> QStringView { + switch (writingSystem) { + case QFontDatabase::Any: + case QFontDatabase::Symbol: + // show only ascii characters + return u"AaBbzZ"; + case QFontDatabase::Latin: + // This is cheating... we only show latin-1 characters so that we don't + // end up loading lots of fonts - at least on X11... + return u"Aa\x00C3\x00E1Zz"; + case QFontDatabase::Greek: + return u"\x0393\x03B1\x03A9\x03C9"; + case QFontDatabase::Cyrillic: + return u"\x0414\x0434\x0436\x044f"; + case QFontDatabase::Armenian: + return u"\x053f\x054f\x056f\x057f"; + case QFontDatabase::Hebrew: + return u"\x05D0\x05D1\x05D2\x05D3"; + case QFontDatabase::Arabic: + return u"\x0623\x0628\x062C\x062F\x064A\x0629\x0020\x0639\x0631\x0628\x064A\x0629"; + case QFontDatabase::Syriac: + return u"\x0715\x0725\x0716\x0726"; + case QFontDatabase::Thaana: + return u"\x0784\x0794\x078c\x078d"; + case QFontDatabase::Devanagari: + return u"\x0905\x0915\x0925\x0935"; + case QFontDatabase::Bengali: + return u"\x0986\x0996\x09a6\x09b6"; + case QFontDatabase::Gurmukhi: + return u"\x0a05\x0a15\x0a25\x0a35"; + case QFontDatabase::Gujarati: + return u"\x0a85\x0a95\x0aa5\x0ab5"; + case QFontDatabase::Oriya: + return u"\x0b06\x0b16\x0b2b\x0b36"; + case QFontDatabase::Tamil: + return u"\x0b89\x0b99\x0ba9\x0bb9"; + case QFontDatabase::Telugu: + return u"\x0c05\x0c15\x0c25\x0c35"; + case QFontDatabase::Kannada: + return u"\x0c85\x0c95\x0ca5\x0cb5"; + case QFontDatabase::Malayalam: + return u"\x0d05\x0d15\x0d25\x0d35"; + case QFontDatabase::Sinhala: + return u"\x0d90\x0da0\x0db0\x0dc0"; + case QFontDatabase::Thai: + return u"\x0e02\x0e12\x0e22\x0e32"; + case QFontDatabase::Lao: + return u"\x0e8d\x0e9d\x0ead\x0ebd"; + case QFontDatabase::Tibetan: + return u"\x0f00\x0f01\x0f02\x0f03"; + case QFontDatabase::Myanmar: + return u"\x1000\x1001\x1002\x1003"; + case QFontDatabase::Georgian: + return u"\x10a0\x10b0\x10c0\x10d0"; + case QFontDatabase::Khmer: + return u"\x1780\x1790\x17b0\x17c0"; + case QFontDatabase::SimplifiedChinese: + return u"\x4e2d\x6587\x8303\x4f8b"; + case QFontDatabase::TraditionalChinese: + return u"\x4e2d\x6587\x7bc4\x4f8b"; + case QFontDatabase::Japanese: + return u"\x30b5\x30f3\x30d7\x30eb\x3067\x3059"; + case QFontDatabase::Korean: + return u"\xac00\xac11\xac1a\xac2f"; + case QFontDatabase::Vietnamese: + return u"\x1ED7\x1ED9\x1ED1\x1ED3"; + case QFontDatabase::Ogham: + return u"\x1681\x1682\x1683\x1684"; + case QFontDatabase::Runic: + return u"\x16a0\x16a1\x16a2\x16a3"; + case QFontDatabase::Nko: + return u"\x7ca\x7cb\x7cc\x7cd"; + default: + return nullptr; + } + }().toString(); } void QFontDatabasePrivate::parseFontName(const QString &name, QString &foundry, QString &family) |