Get rid of all instance usage of QFontDatabase

All QFontDatabase APIs are static, use them accordingly.

Task-number: QTBUG-88114
Change-Id: I0e4a7508646037e6e2812611262eed8b6d7ad3de
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
This commit is contained in:
Volker Hilsheimer 2020-11-02 19:48:25 +01:00
parent 488e72cce8
commit a50f0f045d
18 changed files with 94 additions and 140 deletions

View File

@ -84,13 +84,12 @@ MainWindow::MainWindow(QWidget *parent)
void MainWindow::setupFontTree()
{
QFontDatabase database;
fontTree->setColumnCount(1);
fontTree->setHeaderLabels({ tr("Font") });
const QStringList fontFamilies = database.families();
const QStringList fontFamilies = QFontDatabase::families();
for (const QString &family : fontFamilies) {
const QStringList styles = database.styles(family);
const QStringList styles = QFontDatabase::styles(family);
if (styles.isEmpty())
continue;
@ -103,8 +102,8 @@ void MainWindow::setupFontTree()
QTreeWidgetItem *styleItem = new QTreeWidgetItem(familyItem);
styleItem->setText(0, style);
styleItem->setCheckState(0, Qt::Unchecked);
styleItem->setData(0, Qt::UserRole, QVariant(database.weight(family, style)));
styleItem->setData(0, Qt::UserRole + 1, QVariant(database.italic(family, style)));
styleItem->setData(0, Qt::UserRole, QVariant(QFontDatabase::weight(family, style)));
styleItem->setData(0, Qt::UserRole + 1, QVariant(QFontDatabase::italic(family, style)));
}
}
}

View File

@ -86,9 +86,8 @@ void CharacterWidget::updateSize(const QString &fontSize)
void CharacterWidget::updateStyle(const QString &fontStyle)
{
QFontDatabase fontDatabase;
const QFont::StyleStrategy oldStrategy = displayFont.styleStrategy();
displayFont = fontDatabase.font(displayFont.family(), fontStyle, displayFont.pointSize());
displayFont = QFontDatabase::font(displayFont.family(), fontStyle, displayFont.pointSize());
displayFont.setStyleStrategy(oldStrategy);
calculateSquareSize();
adjustSize();

View File

@ -178,13 +178,12 @@ MainWindow::MainWindow(QWidget *parent)
//! [7]
void MainWindow::findStyles(const QFont &font)
{
QFontDatabase fontDatabase;
QString currentItem = styleCombo->currentText();
styleCombo->clear();
//! [7]
//! [8]
const QStringList styles = fontDatabase.styles(font.family());
const QStringList styles = QFontDatabase::styles(font.family());
for (const QString &style : styles)
styleCombo->addItem(style);
@ -207,7 +206,6 @@ void MainWindow::filterChanged(int f)
void MainWindow::findSizes(const QFont &font)
{
QFontDatabase fontDatabase;
QString currentSize = sizeCombo->currentText();
{
@ -215,7 +213,7 @@ void MainWindow::findSizes(const QFont &font)
// sizeCombo signals are now blocked until end of scope
sizeCombo->clear();
if (fontDatabase.isSmoothlyScalable(font.family(), fontDatabase.styleString(font))) {
if (QFontDatabase::isSmoothlyScalable(font.family(), QFontDatabase::styleString(font))) {
const QList<int> sizes = QFontDatabase::standardSizes();
for (const int size : sizes) {
sizeCombo->addItem(QVariant(size).toString());
@ -223,7 +221,7 @@ void MainWindow::findSizes(const QFont &font)
}
} else {
const QList<int> sizes = fontDatabase.smoothSizes(font.family(), fontDatabase.styleString(font));
const QList<int> sizes = QFontDatabase::smoothSizes(font.family(), QFontDatabase::styleString(font));
for (const int size : sizes ) {
sizeCombo->addItem(QVariant(size).toString());
sizeCombo->setEditable(false);

View File

@ -54,23 +54,22 @@ namespace qfontdatabase_snippets {
void wrapper()
{
//! [0]
QFontDatabase database;
QTreeWidget fontTree;
fontTree.setColumnCount(2);
fontTree.setHeaderLabels(QStringList() << "Font" << "Smooth Sizes");
const QStringList fontFamilies = database.families();
const QStringList fontFamilies = QFontDatabase::families();
for (const QString &family : fontFamilies) {
QTreeWidgetItem *familyItem = new QTreeWidgetItem(&fontTree);
familyItem->setText(0, family);
const QStringList fontStyles = database.styles(family);
const QStringList fontStyles = QFontDatabase::styles(family);
for (const QString &style : fontStyles) {
QTreeWidgetItem *styleItem = new QTreeWidgetItem(familyItem);
styleItem->setText(0, style);
QString sizes;
const QList<int> smoothSizes = database.smoothSizes(family, style);
const QList<int> smoothSizes = QFontDatabase::smoothSizes(family, style);
for (const auto &points : smoothSizes)
sizes += QString::number(points) + ' ';

View File

@ -927,8 +927,7 @@ static const char **tryFonts = nullptr;
QStringList QWindowsFontDatabaseBase::extraTryFontsForFamily(const QString &family)
{
QStringList result;
QFontDatabase db;
if (!db.writingSystems(family).contains(QFontDatabase::Symbol)) {
if (!QFontDatabase::writingSystems(family).contains(QFontDatabase::Symbol)) {
if (!tryFonts) {
LANGID lid = GetUserDefaultLangID();
switch (lid&0xff) {
@ -949,13 +948,12 @@ QStringList QWindowsFontDatabaseBase::extraTryFontsForFamily(const QString &fami
break;
}
}
QFontDatabase db;
const QStringList families = db.families();
const QStringList families = QFontDatabase::families();
const char **tf = tryFonts;
while (tf && *tf) {
// QTBUG-31689, family might be an English alias for a localized font name.
const QString family = QString::fromLatin1(*tf);
if (families.contains(family) || db.hasFamily(family))
if (families.contains(family) || QFontDatabase::hasFamily(family))
result << family;
++tf;
}

View File

@ -35,9 +35,8 @@ QT_BEGIN_NAMESPACE
QWasmTheme::QWasmTheme()
{
QFontDatabase fdb;
for (auto family : fdb.families())
if (fdb.isFixedPitch(family))
for (auto family : QFontDatabase::families())
if (QFontDatabase::isFixedPitch(family))
fixedFont = new QFont(family);
}

View File

@ -486,20 +486,18 @@ void QFontDialogPrivate::updateFamilies()
const QFontDialog::FontDialogOptions spacingMask = (QFontDialog::ProportionalFonts | QFontDialog::MonospacedFonts);
const QFontDialog::FontDialogOptions options = q->options();
QFontDatabase fdb;
QStringList familyNames;
const auto families = fdb.families(writingSystem);
const auto families = QFontDatabase::families(writingSystem);
for (const QString &family : families) {
if (fdb.isPrivateFamily(family))
if (QFontDatabase::isPrivateFamily(family))
continue;
if ((options & scalableMask) && (options & scalableMask) != scalableMask) {
if (bool(options & QFontDialog::ScalableFonts) != fdb.isSmoothlyScalable(family))
if (bool(options & QFontDialog::ScalableFonts) != QFontDatabase::isSmoothlyScalable(family))
continue;
}
if ((options & spacingMask) && (options & spacingMask) != spacingMask) {
if (bool(options & QFontDialog::MonospacedFonts) != fdb.isFixedPitch(family))
if (bool(options & QFontDialog::MonospacedFonts) != QFontDatabase::isFixedPitch(family))
continue;
}
familyNames << family;
@ -564,7 +562,7 @@ void QFontDialogPrivate::updateFamilies()
void QFontDialogPrivate::updateStyles()
{
Q_Q(QFontDialog);
QStringList styles = fdb.styles(familyList->currentText());
QStringList styles = QFontDatabase::styles(familyList->currentText());
styleList->model()->setStringList(styles);
if (styles.isEmpty()) {
@ -606,7 +604,7 @@ void QFontDialogPrivate::updateStyles()
&& styleList->hasFocus())
styleEdit->selectAll();
smoothScalable = fdb.isSmoothlyScalable(familyList->currentText(), styleList->currentText());
smoothScalable = QFontDatabase::isSmoothlyScalable(familyList->currentText(), styleList->currentText());
}
updateSizes();
@ -623,7 +621,7 @@ void QFontDialogPrivate::updateSizes()
Q_Q(QFontDialog);
if (!familyList->currentText().isEmpty()) {
QList<int> sizes = fdb.pointSizes(familyList->currentText(), styleList->currentText());
QList<int> sizes = QFontDatabase::pointSizes(familyList->currentText(), styleList->currentText());
int i = 0;
int current = -1;
@ -655,7 +653,7 @@ void QFontDialogPrivate::_q_updateSample()
{
// compute new font
int pSize = sizeEdit->text().toInt();
QFont newFont(fdb.font(familyList->currentText(), style, pSize));
QFont newFont(QFontDatabase::font(familyList->currentText(), style, pSize));
newFont.setStrikeOut(strikeout->isChecked());
newFont.setUnderline(underline->isChecked());
@ -807,7 +805,7 @@ void QFontDialog::setCurrentFont(const QFont &font)
{
Q_D(QFontDialog);
d->family = font.family();
d->style = d->fdb.styleString(font);
d->style = QFontDatabase::styleString(font);
d->size = font.pointSize();
if (d->size == -1) {
QFontInfo fi(font);

View File

@ -130,7 +130,6 @@ public:
QDialogButtonBox *buttonBox;
QFontDatabase fdb;
QString family;
QFontDatabase::WritingSystem writingSystem;
QString style;

View File

@ -320,23 +320,22 @@ void QFontComboBoxPrivate::_q_updateModel()
QFontFamilyDelegate *delegate = qobject_cast<QFontFamilyDelegate *>(q->view()->itemDelegate());
QFontDatabase::WritingSystem system = delegate ? delegate->writingSystem : QFontDatabase::Any;
QFontDatabase fdb;
QStringList list = fdb.families(system);
QStringList list = QFontDatabase::families(system);
QStringList result;
int offset = 0;
QFontInfo fi(currentFont);
for (int i = 0; i < list.size(); ++i) {
if (fdb.isPrivateFamily(list.at(i)))
if (QFontDatabase::isPrivateFamily(list.at(i)))
continue;
if ((filters & scalableMask) && (filters & scalableMask) != scalableMask) {
if (bool(filters & QFontComboBox::ScalableFonts) != fdb.isSmoothlyScalable(list.at(i)))
if (bool(filters & QFontComboBox::ScalableFonts) != QFontDatabase::isSmoothlyScalable(list.at(i)))
continue;
}
if ((filters & spacingMask) && (filters & spacingMask) != spacingMask) {
if (bool(filters & QFontComboBox::MonospacedFonts) != fdb.isFixedPitch(list.at(i)))
if (bool(filters & QFontComboBox::MonospacedFonts) != QFontDatabase::isFixedPitch(list.at(i)))
continue;
}
result += list.at(i);

View File

@ -131,14 +131,13 @@ void tst_QFont::exactMatch()
QVERIFY(!QFont("monospace").exactMatch());
// Confirm that exactMatch is true for a valid font
QFontDatabase db;
const QString family = db.families().first();
const QString style = db.styles(family).first();
const int pointSize = db.pointSizes(family, style).first();
font = db.font(family, style, pointSize);
const QString family = QFontDatabase::families().first();
const QString style = QFontDatabase::styles(family).first();
const int pointSize = QFontDatabase::pointSizes(family, style).first();
font = QFontDatabase::font(family, style, pointSize);
QVERIFY(font.exactMatch());
if (db.families().contains("Arial")) {
if (QFontDatabase::families().contains("Arial")) {
font = QFont("Arial");
QVERIFY(font.exactMatch());
font = QFont(QString());
@ -149,9 +148,7 @@ void tst_QFont::exactMatch()
void tst_QFont::italicOblique()
{
QFontDatabase fdb;
QStringList families = fdb.families();
QStringList families = QFontDatabase::families();
if (families.isEmpty())
return;
@ -159,12 +156,12 @@ void tst_QFont::italicOblique()
for (f_it = families.begin(); f_it != f_end; ++f_it) {
QString family = *f_it;
QStringList styles = fdb.styles(family);
QStringList styles = QFontDatabase::styles(family);
QStringList::ConstIterator s_it, s_end = styles.end();
for (s_it = styles.begin(); s_it != s_end; ++s_it) {
QString style = *s_it;
if (fdb.isSmoothlyScalable(family, style)) {
if (QFontDatabase::isSmoothlyScalable(family, style)) {
if (style.contains("Oblique")) {
style.replace("Oblique", "Italic");
} else if (style.contains("Italic")) {
@ -172,7 +169,7 @@ void tst_QFont::italicOblique()
} else {
continue;
}
QFont f = fdb.font(family, style, 12);
QFont f = QFontDatabase::font(family, style, 12);
QVERIFY(f.italic());
}
}
@ -564,12 +561,11 @@ void tst_QFont::defaultFamily()
QFETCH(QStringList, acceptableFamilies);
QFont f;
QFontDatabase db;
f.setStyleHint(styleHint);
const QString familyForHint(f.defaultFamily());
// it should at least return a family that is available.
QVERIFY(db.hasFamily(familyForHint));
QVERIFY(QFontDatabase::hasFamily(familyForHint));
bool isAcceptable = false;
Q_FOREACH (const QString& family, acceptableFamilies) {
@ -590,14 +586,13 @@ void tst_QFont::toAndFromString()
QFont defaultFont = QGuiApplication::font();
QString family = defaultFont.family();
QFontDatabase fdb;
const QStringList stylesList = fdb.styles(family);
const QStringList stylesList = QFontDatabase::styles(family);
if (stylesList.size() == 0)
QSKIP("Default font doesn't have any styles");
for (const QString &style : stylesList) {
QFont result;
QFont initial = fdb.font(family, style, defaultFont.pointSize());
QFont initial = QFontDatabase::font(family, style, defaultFont.pointSize());
result.fromString(initial.toString());

View File

@ -176,14 +176,12 @@ void tst_QFontCache::clear()
}
#endif
{
QFontDatabase db;
QFont f;
f.setStyleHint(QFont::Serif);
const QString familyForHint(f.defaultFamily());
// it should at least return a family that is available
QVERIFY(db.hasFamily(familyForHint));
QVERIFY(QFontDatabase::hasFamily(familyForHint));
f.exactMatch(); // loads engine
fontEngine = QFontPrivate::get(f)->engineForScript(QChar::Script_Common);

View File

@ -113,8 +113,7 @@ void tst_QFontDatabase::styles()
{
QFETCH( QString, font );
QFontDatabase fdb;
QStringList styles = fdb.styles( font );
QStringList styles = QFontDatabase::styles( font );
QStringList::Iterator it = styles.begin();
while ( it != styles.end() ) {
QString style = *it;
@ -151,11 +150,10 @@ void tst_QFontDatabase::fixedPitch()
QFETCH(QString, font);
QFETCH(bool, fixedPitch);
QFontDatabase fdb;
if (!fdb.families().contains(font))
if (!QFontDatabase::families().contains(font))
QSKIP("Font not installed");
QCOMPARE(fdb.isFixedPitch(font), fixedPitch);
QCOMPARE(QFontDatabase::isFixedPitch(font), fixedPitch);
QFont qfont(font);
QFontInfo fi(qfont);
@ -184,8 +182,7 @@ void tst_QFontDatabase::trickyFonts()
{
QFETCH(QString, font);
QFontDatabase fdb;
if (!fdb.families().contains(font))
if (!QFontDatabase::families().contains(font))
QSKIP( "Font not installed");
QFont qfont(font);
@ -232,9 +229,7 @@ void tst_QFontDatabase::addAppFont()
QFETCH(bool, useMemoryFont);
QSignalSpy fontDbChangedSpy(QGuiApplication::instance(), SIGNAL(fontDatabaseChanged()));
QFontDatabase db;
const QStringList oldFamilies = db.families();
const QStringList oldFamilies = QFontDatabase::families();
QVERIFY(!oldFamilies.isEmpty());
fontDbChangedSpy.clear();
@ -262,7 +257,7 @@ void tst_QFontDatabase::addAppFont()
const QStringList addedFamilies = QFontDatabase::applicationFontFamilies(id);
QVERIFY(!addedFamilies.isEmpty());
const QStringList newFamilies = db.families();
const QStringList newFamilies = QFontDatabase::families();
QVERIFY(!newFamilies.isEmpty());
QVERIFY(newFamilies.count() >= oldFamilies.count());
@ -277,7 +272,7 @@ void tst_QFontDatabase::addAppFont()
QVERIFY(QFontDatabase::removeApplicationFont(id));
QCOMPARE(fontDbChangedSpy.count(), 2);
QCOMPARE(db.families(), oldFamilies);
QCOMPARE(QFontDatabase::families(), oldFamilies);
}
void tst_QFontDatabase::addTwoAppFontsFromFamily()
@ -306,15 +301,14 @@ void tst_QFontDatabase::addTwoAppFontsFromFamily()
void tst_QFontDatabase::aliases()
{
QFontDatabase db;
const QStringList families = db.families();
const QStringList families = QFontDatabase::families();
QVERIFY(!families.isEmpty());
const QString firstFont = families.front();
QVERIFY(db.hasFamily(firstFont));
QVERIFY(QFontDatabase::hasFamily(firstFont));
const QString alias = QStringLiteral("AliasToFirstFont") + firstFont;
QVERIFY(!db.hasFamily(alias));
QVERIFY(!QFontDatabase::hasFamily(alias));
QPlatformFontDatabase::registerAliasToFontFamily(firstFont, alias);
QVERIFY(db.hasFamily(alias));
QVERIFY(QFontDatabase::hasFamily(alias));
}
void tst_QFontDatabase::fallbackFonts()
@ -368,12 +362,11 @@ void tst_QFontDatabase::condensedFontWidthNoFontMerging()
void tst_QFontDatabase::condensedFontWidth()
{
QFontDatabase db;
QFontDatabase::addApplicationFont(m_testFont);
QFontDatabase::addApplicationFont(m_testFontCondensed);
QVERIFY(db.hasFamily("QtBidiTestFont"));
if (!db.hasFamily("QtBidiTestFontCondensed"))
QVERIFY(QFontDatabase::hasFamily("QtBidiTestFont"));
if (!QFontDatabase::hasFamily("QtBidiTestFontCondensed"))
QSKIP("This platform doesn't support font sub-family names (QTBUG-55625)");
// Test we really get a condensed font, and a not renormalized one (QTBUG-48043):
@ -387,10 +380,9 @@ void tst_QFontDatabase::condensedFontWidth()
void tst_QFontDatabase::condensedFontMatching()
{
QFontDatabase db;
QFontDatabase::removeAllApplicationFonts();
QFontDatabase::addApplicationFont(m_testFontCondensed);
if (!db.hasFamily("QtBidiTestFont"))
if (!QFontDatabase::hasFamily("QtBidiTestFont"))
QSKIP("This platform doesn't support preferred font family names (QTBUG-53478)");
QFontDatabase::addApplicationFont(m_testFont);
@ -410,7 +402,7 @@ void tst_QFontDatabase::condensedFontMatching()
QCOMPARE(QFontMetrics(tfcByStretch).horizontalAdvance(testString()),
QFontMetrics(tfcByStyleName).horizontalAdvance(testString()));
if (!db.hasFamily("QtBidiTestFontCondensed"))
if (!QFontDatabase::hasFamily("QtBidiTestFontCondensed"))
QSKIP("This platform doesn't support font sub-family names (QTBUG-55625)");
QFont tfcBySubfamilyName("QtBidiTestFontCondensed");
@ -445,25 +437,22 @@ void tst_QFontDatabase::smoothFonts()
void tst_QFontDatabase::registerOpenTypePreferredNamesSystem()
{
QFontDatabase db;
// This font family was picked because it was the only one I had installed which showcased the
// problem
if (!db.hasFamily(QString::fromLatin1("Source Code Pro ExtraLight")))
if (!QFontDatabase::hasFamily(QString::fromLatin1("Source Code Pro ExtraLight")))
QSKIP("Source Code Pro ExtraLight is not installed");
QStringList styles = db.styles(QString::fromLatin1("Source Code Pro"));
QStringList styles = QFontDatabase::styles(QString::fromLatin1("Source Code Pro"));
QVERIFY(styles.contains(QLatin1String("ExtraLight")));
}
void tst_QFontDatabase::registerOpenTypePreferredNamesApplication()
{
QFontDatabase db;
int id = QFontDatabase::addApplicationFont(QString::fromLatin1(":/testfont_open.otf"));
if (id == -1)
QSKIP("Skip the test since app fonts are not supported on this system");
QStringList styles = db.styles(QString::fromLatin1("QtBidiTestFont"));
QStringList styles = QFontDatabase::styles(QString::fromLatin1("QtBidiTestFont"));
QVERIFY(styles.contains(QLatin1String("Open")));
QFontDatabase::removeApplicationFont(id);

View File

@ -91,11 +91,10 @@ void tst_QFontMetrics::same()
void tst_QFontMetrics::metrics()
{
QFont font;
QFontDatabase fdb;
// Query the QFontDatabase for a specific font, store the
// result in family, style and size.
QStringList families = fdb.families();
QStringList families = QFontDatabase::families();
if (families.isEmpty())
return;
@ -103,14 +102,14 @@ void tst_QFontMetrics::metrics()
for (f_it = families.begin(); f_it != f_end; ++f_it) {
const QString &family = *f_it;
QStringList styles = fdb.styles(family);
QStringList styles = QFontDatabase::styles(family);
QStringList::ConstIterator s_it, s_end = styles.end();
for (s_it = styles.begin(); s_it != s_end; ++s_it) {
const QString &style = *s_it;
if (fdb.isSmoothlyScalable(family, style)) {
if (QFontDatabase::isSmoothlyScalable(family, style)) {
// smoothly scalable font... don't need to load every pointsize
font = fdb.font(family, style, 12);
font = QFontDatabase::font(family, style, 12);
QFontMetrics fontmetrics(font);
QCOMPARE(fontmetrics.ascent() + fontmetrics.descent(),
@ -119,14 +118,14 @@ void tst_QFontMetrics::metrics()
QCOMPARE(fontmetrics.height() + fontmetrics.leading(),
fontmetrics.lineSpacing());
} else {
QList<int> sizes = fdb.pointSizes(family, style);
QList<int> sizes = QFontDatabase::pointSizes(family, style);
QVERIFY(!sizes.isEmpty());
QList<int>::ConstIterator z_it, z_end = sizes.end();
for (z_it = sizes.begin(); z_it != z_end; ++z_it) {
const int size = *z_it;
// Initialize the font, and check if it is an exact match
font = fdb.font(family, style, size);
font = QFontDatabase::font(family, style, size);
QFontMetrics fontmetrics(font);
QCOMPARE(fontmetrics.ascent() + fontmetrics.descent(),

View File

@ -121,8 +121,7 @@ void tst_QRawFont::initTestCase()
if (testFont.isEmpty() || testFontBoldItalic.isEmpty())
QFAIL("qrawfont unittest font files not found!");
QFontDatabase database;
if (database.families().count() == 0)
if (QFontDatabase::families().count() == 0)
QSKIP("No fonts available!!!");
}
@ -389,8 +388,7 @@ void tst_QRawFont::advances()
void tst_QRawFont::textLayout()
{
QFontDatabase fontDatabase;
int id = fontDatabase.addApplicationFont(testFont);
int id = QFontDatabase::addApplicationFont(testFont);
QVERIFY(id >= 0);
QString familyName = QString::fromLatin1("QtBidiTestFont");
@ -420,7 +418,7 @@ void tst_QRawFont::textLayout()
QCOMPARE(glyphs.glyphIndexes(), expectedGlyphIndices);
QVERIFY(fontDatabase.removeApplicationFont(id));
QVERIFY(QFontDatabase::removeApplicationFont(id));
}
void tst_QRawFont::fontTable_data()
@ -703,8 +701,7 @@ void tst_QRawFont::fromFont()
QFETCH(QString, familyName);
QFETCH(QFontDatabase::WritingSystem, writingSystem);
QFontDatabase fontDatabase;
int id = fontDatabase.addApplicationFont(fileName);
int id = QFontDatabase::addApplicationFont(fileName);
QVERIFY(id >= 0);
QFont font(familyName);
@ -717,7 +714,7 @@ void tst_QRawFont::fromFont()
QCOMPARE(rawFont.familyName(), familyName);
QCOMPARE(rawFont.pixelSize(), 26.0);
QVERIFY(fontDatabase.removeApplicationFont(id));
QVERIFY(QFontDatabase::removeApplicationFont(id));
}
void tst_QRawFont::copyConstructor_data()
@ -878,8 +875,7 @@ void tst_QRawFont::unsupportedWritingSystem()
{
QFETCH(QFont::HintingPreference, hintingPreference);
QFontDatabase fontDatabase;
int id = fontDatabase.addApplicationFont(testFont);
int id = QFontDatabase::addApplicationFont(testFont);
QFont font("QtBidiTestFont");
font.setHintingPreference(hintingPreference);
@ -915,7 +911,7 @@ void tst_QRawFont::unsupportedWritingSystem()
QCOMPARE(rawFont.familyName(), layoutFont.familyName());
QCOMPARE(rawFont.pixelSize(), 12.0);
fontDatabase.removeApplicationFont(id);
QFontDatabase::removeApplicationFont(id);
}
void tst_QRawFont::rawFontSetPixelSize_data()
@ -1017,8 +1013,7 @@ void tst_QRawFont::kernedAdvances()
void tst_QRawFont::fallbackFontsOrder()
{
QFontDatabase fontDatabase;
int id = fontDatabase.addApplicationFont(testFont);
int id = QFontDatabase::addApplicationFont(testFont);
QFont font("QtBidiTestFont");
font.setPixelSize(12.0);
@ -1047,7 +1042,7 @@ void tst_QRawFont::fallbackFontsOrder()
// is not sorted by writing system support.
QCOMPARE(glyphRuns.size(), 1);
fontDatabase.removeApplicationFont(id);
QFontDatabase::removeApplicationFont(id);
}
void tst_QRawFont::qtbug65923_partal_clone_data()

View File

@ -1078,8 +1078,7 @@ void tst_QTextScriptEngine::mirroredChars()
void tst_QTextScriptEngine::controlInSyllable_qtbug14204()
{
QFontDatabase db;
if (!db.families().contains(QStringLiteral("Aparajita")))
if (!QFontDatabase::families().contains(QStringLiteral("Aparajita")))
QSKIP("couldn't find 'Aparajita' font");
QFont font(QStringLiteral("Aparajita"));
@ -1181,8 +1180,7 @@ void tst_QTextScriptEngine::combiningMarks_qtbug15675()
void tst_QTextScriptEngine::thaiIsolatedSaraAm()
{
QFontDatabase db;
if (!db.families().contains("Waree"))
if (!QFontDatabase::families().contains("Waree"))
QSKIP("couldn't find 'Waree' font");
QFont font(QStringLiteral("Waree"));
@ -1214,8 +1212,7 @@ void tst_QTextScriptEngine::thaiWithZWJ()
QSKIP("Requires up-to-date Harfbuzz");
#endif
QFontDatabase db;
if (!db.families().contains("Waree"))
if (!QFontDatabase::families().contains("Waree"))
QSKIP("couldn't find 'Waree' font");
QFont font(QStringLiteral("Waree"));

View File

@ -182,7 +182,6 @@ void tst_QFontDialog::task256466_wrongStyle()
if (QGuiApplication::platformName().startsWith(QLatin1String("wayland"), Qt::CaseInsensitive))
QSKIP("Wayland: This freezes. Figure out why.");
QFontDatabase fdb;
FriendlyFontDialog dialog;
dialog.setOption(QFontDialog::DontUseNativeDialog);
QListView *familyList = reinterpret_cast<QListView*>(dialog.d_func()->familyList);
@ -193,7 +192,7 @@ void tst_QFontDialog::task256466_wrongStyle()
familyList->setCurrentIndex(currentFamily);
int expectedSize = sizeList->currentIndex().data().toInt();
const QFont current = dialog.currentFont(),
expected = fdb.font(currentFamily.data().toString(),
expected = QFontDatabase::font(currentFamily.data().toString(),
styleList->currentIndex().data().toString(), expectedSize);
QCOMPARE(current.family(), expected.family());
QCOMPARE(current.style(), expected.style());

View File

@ -367,13 +367,12 @@ void tst_QApplication::setFont_data()
int argc = 0;
QApplication app(argc, nullptr); // Needed for QFontDatabase
QFontDatabase fdb;
const QStringList &families = fdb.families();
const QStringList &families = QFontDatabase::families();
for (int i = 0, count = qMin(3, families.size()); i < count; ++i) {
const auto &family = families.at(i);
const QStringList &styles = fdb.styles(family);
const QStringList &styles = QFontDatabase::styles(family);
if (!styles.isEmpty()) {
QList<int> sizes = fdb.pointSizes(family, styles.constFirst());
QList<int> sizes = QFontDatabase::pointSizes(family, styles.constFirst());
if (sizes.isEmpty())
sizes = QFontDatabase::standardSizes();
if (!sizes.isEmpty()) {
@ -2515,7 +2514,6 @@ Q_GLOBAL_STATIC(QWidget, tst_qapp_widget);
Q_GLOBAL_STATIC(QPixmap, tst_qapp_pixmap);
Q_GLOBAL_STATIC(QFont, tst_qapp_font);
Q_GLOBAL_STATIC(QRegion, tst_qapp_region);
Q_GLOBAL_STATIC(QFontDatabase, tst_qapp_fontDatabase);
#ifndef QT_NO_CURSOR
Q_GLOBAL_STATIC(QCursor, tst_qapp_cursor);
#endif
@ -2540,7 +2538,6 @@ void tst_QApplication::globalStaticObjectDestruction()
QVERIFY(tst_qapp_pixmap());
QVERIFY(tst_qapp_font());
QVERIFY(tst_qapp_region());
QVERIFY(tst_qapp_fontDatabase());
#ifndef QT_NO_CURSOR
QVERIFY(tst_qapp_cursor());
#endif

View File

@ -88,20 +88,19 @@ void tst_QFontComboBox::qfontcombobox()
void tst_QFontComboBox::currentFont_data()
{
QTest::addColumn<QFont>("currentFont");
QFontDatabase db;
// Normalize the names
QFont defaultFont;
QFontInfo fi(defaultFont);
defaultFont = QFont(fi.family()); // make sure we have a real font name and not something like 'Sans Serif'.
if (!db.isPrivateFamily(defaultFont.family()))
if (!QFontDatabase::isPrivateFamily(defaultFont.family()))
QTest::newRow("default") << defaultFont;
defaultFont.setPointSize(defaultFont.pointSize() + 10);
if (!db.isPrivateFamily(defaultFont.family()))
if (!QFontDatabase::isPrivateFamily(defaultFont.family()))
QTest::newRow("default2") << defaultFont;
QStringList list = db.families();
QStringList list = QFontDatabase::families();
for (int i = 0; i < list.count(); ++i) {
QFont f = QFont(QFontInfo(QFont(list.at(i))).family());
if (!db.isPrivateFamily(f.family()))
if (!QFontDatabase::isPrivateFamily(f.family()))
QTest::newRow(qPrintable(list.at(i))) << f;
}
}
@ -168,8 +167,7 @@ void tst_QFontComboBox::fontFilters()
box.setFontFilters(fontFilters);
QCOMPARE(box.fontFilters(), fontFilters);
QFontDatabase db;
QStringList list = db.families();
QStringList list = QFontDatabase::families();
int c = 0;
const int scalableMask = (QFontComboBox::ScalableFonts | QFontComboBox::NonScalableFonts);
const int spacingMask = (QFontComboBox::ProportionalFonts | QFontComboBox::MonospacedFonts);
@ -179,20 +177,20 @@ void tst_QFontComboBox::fontFilters()
fontFilters &= ~spacingMask;
for (int i = 0; i < list.count(); ++i) {
if (db.isPrivateFamily(list[i]))
if (QFontDatabase::isPrivateFamily(list[i]))
continue;
if (fontFilters & QFontComboBox::ScalableFonts) {
if (!db.isSmoothlyScalable(list[i]))
if (!QFontDatabase::isSmoothlyScalable(list[i]))
continue;
} else if (fontFilters & QFontComboBox::NonScalableFonts) {
if (db.isSmoothlyScalable(list[i]))
if (QFontDatabase::isSmoothlyScalable(list[i]))
continue;
}
if (fontFilters & QFontComboBox::MonospacedFonts) {
if (!db.isFixedPitch(list[i]))
if (!QFontDatabase::isFixedPitch(list[i]))
continue;
} else if (fontFilters & QFontComboBox::ProportionalFonts) {
if (db.isFixedPitch(list[i]))
if (QFontDatabase::isFixedPitch(list[i]))
continue;
}
c++;
@ -243,11 +241,10 @@ void tst_QFontComboBox::writingSystem()
box.setWritingSystem(writingSystem);
QCOMPARE(box.writingSystem(), writingSystem);
QFontDatabase db;
QStringList list = db.families(writingSystem);
QStringList list = QFontDatabase::families(writingSystem);
int c = list.count();
for (int i = 0; i < list.count(); ++i) {
if (db.isPrivateFamily(list[i]))
if (QFontDatabase::isPrivateFamily(list[i]))
c--;
}
QCOMPARE(box.model()->rowCount(), c);