diff options
author | Kai Uwe Broulik <kde@privat.broulik.de> | 2017-09-27 11:51:58 +0200 |
---|---|---|
committer | Kai Uwe Broulik <kde@privat.broulik.de> | 2018-01-11 10:25:05 +0000 |
commit | e5b422382a512a8267a0eb24e6543a8cf84478d9 (patch) | |
tree | 83c067aed099d0f03acac649c8a18f0d7d19fc34 /tests/auto | |
parent | d51dde6c67155f774bb88b9cd64c6b061cfa5d46 (diff) |
QGuiApplication: Add fontChanged signal
This removes the need to install an event filter on qApp just for this.
A similar thing was done with setPalette to reduce the number of event filters
in e.g. SystemPalette and Quick Controls.
[ChangeLog][QtGui][QGuiApplication] Added fontChanged signal
Change-Id: Ifa843aa42b91ac63ab17c3b064ac0e764aac77d3
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp b/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp index 6ba488aaa7..4f27aeb899 100644 --- a/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp +++ b/tests/auto/gui/kernel/qguiapplication/tst_qguiapplication.cpp @@ -68,6 +68,7 @@ private slots: void changeFocusWindow(); void keyboardModifiers(); void palette(); + void font(); void modalWindow(); void quitOnLastWindowClosed(); void quitOnLastWindowClosedMulti(); @@ -524,6 +525,31 @@ void tst_QGuiApplication::palette() QCOMPARE(signalSpy.count(), 2); } +void tst_QGuiApplication::font() +{ + int argc = 1; + char *argv[] = { const_cast<char*>("tst_qguiapplication") }; + QGuiApplication app(argc, argv); + QSignalSpy signalSpy(&app, SIGNAL(fontChanged(QFont))); + + QFont oldFont = QGuiApplication::font(); + QFont newFont = QFont("BogusFont", 33); + + QGuiApplication::setFont(newFont); + QCOMPARE(QGuiApplication::font(), newFont); + QCOMPARE(signalSpy.count(), 1); + QCOMPARE(signalSpy.at(0).at(0), QVariant(newFont)); + + QGuiApplication::setFont(oldFont); + QCOMPARE(QGuiApplication::font(), oldFont); + QCOMPARE(signalSpy.count(), 2); + QCOMPARE(signalSpy.at(1).at(0), QVariant(oldFont)); + + QGuiApplication::setFont(oldFont); + QCOMPARE(QGuiApplication::font(), oldFont); + QCOMPARE(signalSpy.count(), 2); +} + class BlockableWindow : public QWindow { Q_OBJECT |