From 9bc49b0bca361646aac90cd00706588d3dcd66c9 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Fri, 16 Nov 2012 17:39:24 +0100 Subject: Made QFusionStyle internal We will take this opportynity to remove various QStyle specializations from the public API in Qt5. This gives us much more freedom, for example changing the inheritance hierarchy, pluginizing etc. without worrying about BC. => Use QStyleFactory and/or QProxyStyle instead of creating an instance or inheriting QFusionStyle directly. Change-Id: I37d8acb13b6fd328a9cd53c74df971428bbbe443 Reviewed-by: Lars Knoll --- .../qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp | 3 +-- .../graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp | 15 +++++++-------- tests/auto/widgets/styles/qstyle/tst_qstyle.cpp | 16 +++++++--------- .../styles/qstylesheetstyle/tst_qstylesheetstyle.cpp | 3 +-- tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp | 8 +++----- 5 files changed, 19 insertions(+), 26 deletions(-) (limited to 'tests') diff --git a/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp b/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp index 7a256972f2..61ac6bb693 100644 --- a/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp @@ -434,8 +434,7 @@ void tst_QGraphicsProxyWidget::setWidget() #endif widget->setPalette(QPalette(Qt::magenta)); widget->setLayoutDirection(Qt::RightToLeft); - QFusionStyle fusionStyle; - widget->setStyle(&fusionStyle); + widget->setStyle(QStyleFactory::create(QLatin1String("Fusion"))); widget->setFont(QFont("Times")); widget->setVisible(true); QApplication::setActiveWindow(widget); diff --git a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp index 03814bcbf8..901bb7c38a 100644 --- a/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp +++ b/tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp @@ -51,9 +51,8 @@ #include #include #include -#ifndef Q_NO_STYLE_FUSION -#include -#endif +#include +#include #include "../../../qtest-config.h" @@ -1399,7 +1398,7 @@ void tst_QGraphicsWidget::setStyle_data() { QTest::addColumn("style"); QTest::newRow("null") << ""; - QTest::newRow("fusion") << "QFusionStyle"; + QTest::newRow("fusion") << "Fusion"; } // void setStyle(QStyle* style) public @@ -1407,14 +1406,14 @@ void tst_QGraphicsWidget::setStyle() { #ifndef Q_NO_STYLE_FUSION SubQGraphicsWidget widget; - QFusionStyle fusionStyle; int oldEventCounts = widget.eventCount; QFETCH(QString, style); - if (style == "QFusionStyle") { - widget.setStyle(&fusionStyle); - QCOMPARE(widget.style(), static_cast(&fusionStyle)); + if (!style.isEmpty()) { + QStyle *fstyle = QStyleFactory::create(style); + widget.setStyle(fstyle); + QCOMPARE(widget.style(), static_cast(fstyle)); } else { widget.setStyle(0); QVERIFY(widget.style() != (QStyle *)0); diff --git a/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp b/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp index e2a0f095a5..bec83e949c 100644 --- a/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp +++ b/tests/auto/widgets/styles/qstyle/tst_qstyle.cpp @@ -71,10 +71,6 @@ #include #include -#ifndef Q_NO_STYLE_FUSION -#include -#endif - #ifdef Q_OS_MAC #include #endif @@ -372,9 +368,10 @@ bool tst_QStyle::testScrollBarSubControls(QStyle* style) #ifndef QT_NO_STYLE_FUSION void tst_QStyle::testFusionStyle() { - QFusionStyle fstyle; - QVERIFY(testAllFunctions(&fstyle)); - lineUpLayoutTest(&fstyle); + QStyle *fstyle = QStyleFactory::create("Fusion"); + QVERIFY(testAllFunctions(fstyle)); + lineUpLayoutTest(fstyle); + delete fstyle; } #endif @@ -649,14 +646,14 @@ void tst_QStyle::progressBarChangeStyle() //where changing the styles and deleting a progressbar would crash QWindowsStyle style1; - QFusionStyle style2; + QStyle *style2 = QStyleFactory::create("Fusion"); QProgressBar *progress=new QProgressBar; progress->setStyle(&style1); progress->show(); - progress->setStyle(&style2); + progress->setStyle(style2); QTest::qWait(100); delete progress; @@ -664,6 +661,7 @@ void tst_QStyle::progressBarChangeStyle() QTest::qWait(100); //before the correction, there would be a crash here + delete style2; } #endif diff --git a/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp b/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp index d5ac0c20a8..5f2c9a62b9 100644 --- a/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp +++ b/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp @@ -44,7 +44,6 @@ #include #include #include -#include #include @@ -1589,7 +1588,7 @@ class ChangeEventWidget : public QWidget static bool recurse = false; if (!recurse) { recurse = true; - QStyle *style = new QFusionStyle; + QStyle *style = QStyleFactory::create(QLatin1String("Fusion")); style->setParent(this); setStyle(style); recurse = false; diff --git a/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp b/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp index 3b9f408e73..af14ad13d3 100644 --- a/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp +++ b/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp @@ -72,9 +72,7 @@ #include #include #include -#ifndef QT_NO_STYLE_FUSION -#include -#endif +#include #include #include #ifndef QT_NO_STYLE_WINDOWS @@ -2055,7 +2053,7 @@ void tst_QComboBox::separatorItem() void tst_QComboBox::task190351_layout() { const QString oldStyle = QApplication::style()->objectName(); - QApplication::setStyle(new QFusionStyle); + QApplication::setStyle(QStyleFactory::create(QLatin1String("Fusion"))); QComboBox listCombo; QListWidget *list = new QListWidget(); @@ -2120,7 +2118,7 @@ void tst_QComboBox::task166349_setEditableOnReturn() void tst_QComboBox::task191329_size() { const QString oldStyle = QApplication::style()->objectName(); - QApplication::setStyle(new QFusionStyle); + QApplication::setStyle(QStyleFactory::create(QLatin1String("Fusion"))); QComboBox tableCombo; int rows; -- cgit v1.2.3