summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/widgets/styles/qfusionstyle.cpp3
-rw-r--r--src/widgets/styles/qfusionstyle.h111
-rw-r--r--src/widgets/styles/qfusionstyle_p.h148
-rw-r--r--src/widgets/styles/qfusionstyle_p_p.h153
-rw-r--r--src/widgets/styles/qstylefactory.cpp2
-rw-r--r--src/widgets/styles/styles.pri2
-rw-r--r--tests/auto/widgets/graphicsview/qgraphicsproxywidget/tst_qgraphicsproxywidget.cpp3
-rw-r--r--tests/auto/widgets/graphicsview/qgraphicswidget/tst_qgraphicswidget.cpp15
-rw-r--r--tests/auto/widgets/styles/qstyle/tst_qstyle.cpp16
-rw-r--r--tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp3
-rw-r--r--tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp8
11 files changed, 229 insertions, 235 deletions
diff --git a/src/widgets/styles/qfusionstyle.cpp b/src/widgets/styles/qfusionstyle.cpp
index 4121292cc7..c8b6154413 100644
--- a/src/widgets/styles/qfusionstyle.cpp
+++ b/src/widgets/styles/qfusionstyle.cpp
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#include "qfusionstyle.h"
#include "qfusionstyle_p.h"
+#include "qfusionstyle_p_p.h"
#if !defined(QT_NO_STYLE_FUSION) || defined(QT_PLUGIN)
#include "qcommonstyle_p.h"
@@ -346,6 +346,7 @@ QFusionStylePrivate::QFusionStylePrivate()
\brief The QFusionStyle class provides a custom widget style
\inmodule QtWidgets
+ \internal
The Fusion style provides a custom look and feel that is not
tied to a particular platform.
diff --git a/src/widgets/styles/qfusionstyle.h b/src/widgets/styles/qfusionstyle.h
deleted file mode 100644
index 927ba32342..0000000000
--- a/src/widgets/styles/qfusionstyle.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the QtGui module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU General Public License version 3.0 requirements will be
-** met: http://www.gnu.org/copyleft/gpl.html.
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QFUSIONSTYLE_H
-#define QFUSIONSTYLE_H
-
-#include <QtWidgets/qcommonstyle.h>
-
-QT_BEGIN_HEADER
-
-QT_BEGIN_NAMESPACE
-
-
-#if !defined(QT_NO_STYLE_FUSION)
-
-class QFusionStylePrivate;
-class Q_WIDGETS_EXPORT QFusionStyle : public QCommonStyle
-{
- Q_OBJECT
- Q_DECLARE_PRIVATE(QFusionStyle)
-
-public:
- QFusionStyle();
- ~QFusionStyle();
-
- QPalette standardPalette () const;
- void drawPrimitive(PrimitiveElement elem,
- const QStyleOption *option,
- QPainter *painter, const QWidget *widget = 0) const;
- void drawControl(ControlElement ce, const QStyleOption *option, QPainter *painter,
- const QWidget *widget) const;
- int pixelMetric(PixelMetric metric, const QStyleOption *option = 0, const QWidget *widget = 0) const;
- void drawComplexControl(ComplexControl control, const QStyleOptionComplex *option,
- QPainter *painter, const QWidget *widget) const;
- QRect subElementRect(SubElement r, const QStyleOption *opt, const QWidget *widget = 0) const;
- QSize sizeFromContents(ContentsType type, const QStyleOption *option,
- const QSize &size, const QWidget *widget) const;
- SubControl hitTestComplexControl(ComplexControl cc, const QStyleOptionComplex *opt,
- const QPoint &pt, const QWidget *w = 0) const;
- QRect subControlRect(ComplexControl cc, const QStyleOptionComplex *opt,
- SubControl sc, const QWidget *widget) const;
- QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap,
- const QStyleOption *opt) const;
- int styleHint(StyleHint hint, const QStyleOption *option = 0, const QWidget *widget = 0,
- QStyleHintReturn *returnData = 0) const;
- QRect itemPixmapRect(const QRect &r, int flags, const QPixmap &pixmap) const;
- QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option = 0,
- const QWidget *widget = 0) const;
- QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,
- const QWidget *widget = 0) const;
- void drawItemPixmap(QPainter *painter, const QRect &rect,
- int alignment, const QPixmap &pixmap) const;
- void drawItemText(QPainter *painter, const QRect &rect,
- int flags, const QPalette &pal, bool enabled,
- const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const;
- void polish(QWidget *widget);
- void polish(QApplication *app);
- void polish(QPalette &pal);
- void unpolish(QWidget *widget);
- void unpolish(QApplication *app);
-
-protected:
- QFusionStyle(QFusionStylePrivate &dd);
-
-};
-
-#endif // QT_NO_STYLE_FUSION
-
-QT_END_NAMESPACE
-
-QT_END_HEADER
-
-#endif // QFUSIONSTYLE_H
diff --git a/src/widgets/styles/qfusionstyle_p.h b/src/widgets/styles/qfusionstyle_p.h
index affb85bbb1..f6b2afcb35 100644
--- a/src/widgets/styles/qfusionstyle_p.h
+++ b/src/widgets/styles/qfusionstyle_p.h
@@ -42,112 +42,70 @@
#ifndef QFUSIONSTYLE_P_H
#define QFUSIONSTYLE_P_H
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists for the convenience
-// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
-// file may change from version to version without notice, or even be removed.
-//
-// We mean it.
-//
+#include <QtWidgets/qcommonstyle.h>
-#include "qcommonstyle.h"
-#include "qcommonstyle_p.h"
-#include <qpa/qplatformtheme.h>
-#include "private/qguiapplication_p.h"
-
-#ifndef QT_NO_STYLE_FUSION
+QT_BEGIN_HEADER
QT_BEGIN_NAMESPACE
-class QFusionStylePrivate : public QCommonStylePrivate
-{
- Q_DECLARE_PUBLIC(QFusionStyle)
-
-public:
- QFusionStylePrivate();
-
- // Used for grip handles
- QColor lightShade() const {
- return QColor(255, 255, 255, 90);
- }
- QColor darkShade() const {
- return QColor(0, 0, 0, 60);
- }
-
- QColor topShadow() const {
- return QColor(0, 0, 0, 18);
- }
-
- QColor innerContrastLine() const {
- return QColor(255, 255, 255, 30);
- }
-
- // On mac we want a standard blue color used when the system palette is used
- bool isMacSystemPalette(const QPalette &pal) const {
- Q_UNUSED(pal);
-#ifdef Q_OS_MAC
- const QPalette *themePalette = QGuiApplicationPrivate::platformTheme()->palette();
- if (themePalette->color(QPalette::Normal, QPalette::Highlight) ==
- pal.color(QPalette::Normal, QPalette::Highlight) &&
- themePalette->color(QPalette::Normal, QPalette::HighlightedText) ==
- pal.color(QPalette::Normal, QPalette::HighlightedText))
- return true;
-#endif
- return false;
- }
- QColor highlight(const QPalette &pal) const {
- if (isMacSystemPalette(pal))
- return QColor(60, 140, 230);
- return pal.color(QPalette::Active, QPalette::Highlight);
- }
+#if !defined(QT_NO_STYLE_FUSION)
- QColor highlightedText(const QPalette &pal) const {
- if (isMacSystemPalette(pal))
- return Qt::white;
- return pal.color(QPalette::Active, QPalette::HighlightedText);
- }
-
- QColor outline(const QPalette &pal) const {
- if (!pal.window().texture().isNull())
- return QColor(0, 0, 0, 160);
- return pal.background().color().darker(140);
- }
-
- QColor highlightedOutline(const QPalette &pal) const {
- QColor highlightedOutline = highlight(pal).darker(125);
- if (highlightedOutline.value() > 160)
- highlightedOutline.setHsl(highlightedOutline.hue(), highlightedOutline.saturation(), 160);
- return highlightedOutline;
- }
-
- QColor tabFrameColor(const QPalette &pal) const {
- if (!pal.button().texture().isNull())
- return QColor(255, 255, 255, 8);
- return buttonColor(pal).lighter(104);
- }
+class QFusionStylePrivate;
+class QFusionStyle : public QCommonStyle
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(QFusionStyle)
- QColor buttonColor(const QPalette &pal) const {
- QColor buttonColor = pal.button().color();
- int val = qGray(buttonColor.rgb());
- buttonColor = buttonColor.lighter(100 + qMax(1, (180 - val)/6));
- buttonColor.setHsv(buttonColor.hue(), buttonColor.saturation() * 0.75, buttonColor.value());
- return buttonColor;
- }
+public:
+ QFusionStyle();
+ ~QFusionStyle();
+
+ QPalette standardPalette () const;
+ void drawPrimitive(PrimitiveElement elem,
+ const QStyleOption *option,
+ QPainter *painter, const QWidget *widget = 0) const;
+ void drawControl(ControlElement ce, const QStyleOption *option, QPainter *painter,
+ const QWidget *widget) const;
+ int pixelMetric(PixelMetric metric, const QStyleOption *option = 0, const QWidget *widget = 0) const;
+ void drawComplexControl(ComplexControl control, const QStyleOptionComplex *option,
+ QPainter *painter, const QWidget *widget) const;
+ QRect subElementRect(SubElement r, const QStyleOption *opt, const QWidget *widget = 0) const;
+ QSize sizeFromContents(ContentsType type, const QStyleOption *option,
+ const QSize &size, const QWidget *widget) const;
+ SubControl hitTestComplexControl(ComplexControl cc, const QStyleOptionComplex *opt,
+ const QPoint &pt, const QWidget *w = 0) const;
+ QRect subControlRect(ComplexControl cc, const QStyleOptionComplex *opt,
+ SubControl sc, const QWidget *widget) const;
+ QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap,
+ const QStyleOption *opt) const;
+ int styleHint(StyleHint hint, const QStyleOption *option = 0, const QWidget *widget = 0,
+ QStyleHintReturn *returnData = 0) const;
+ QRect itemPixmapRect(const QRect &r, int flags, const QPixmap &pixmap) const;
+ QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option = 0,
+ const QWidget *widget = 0) const;
+ QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,
+ const QWidget *widget = 0) const;
+ void drawItemPixmap(QPainter *painter, const QRect &rect,
+ int alignment, const QPixmap &pixmap) const;
+ void drawItemText(QPainter *painter, const QRect &rect,
+ int flags, const QPalette &pal, bool enabled,
+ const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const;
+ void polish(QWidget *widget);
+ void polish(QApplication *app);
+ void polish(QPalette &pal);
+ void unpolish(QWidget *widget);
+ void unpolish(QApplication *app);
+
+protected:
+ QFusionStyle(QFusionStylePrivate &dd);
- enum {
- menuItemHMargin = 3, // menu item hor text margin
- menuArrowHMargin = 6, // menu arrow horizontal margin
- menuRightBorder = 15, // right border on menus
- menuCheckMarkWidth = 12 // checkmarks width on menus
- };
};
+#endif // QT_NO_STYLE_FUSION
+
QT_END_NAMESPACE
-#endif // QT_NO_STYLE_FUSION
+QT_END_HEADER
#endif //QFUSIONSTYLE_P_H
diff --git a/src/widgets/styles/qfusionstyle_p_p.h b/src/widgets/styles/qfusionstyle_p_p.h
new file mode 100644
index 0000000000..1098ad5b87
--- /dev/null
+++ b/src/widgets/styles/qfusionstyle_p_p.h
@@ -0,0 +1,153 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the QtGui module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QFUSIONSTYLE_P_P_H
+#define QFUSIONSTYLE_P_P_H
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists for the convenience
+// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
+// file may change from version to version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#include "qcommonstyle.h"
+#include "qcommonstyle_p.h"
+#include <qpa/qplatformtheme.h>
+#include "private/qguiapplication_p.h"
+
+#ifndef QT_NO_STYLE_FUSION
+
+QT_BEGIN_NAMESPACE
+
+class QFusionStylePrivate : public QCommonStylePrivate
+{
+ Q_DECLARE_PUBLIC(QFusionStyle)
+
+public:
+ QFusionStylePrivate();
+
+ // Used for grip handles
+ QColor lightShade() const {
+ return QColor(255, 255, 255, 90);
+ }
+ QColor darkShade() const {
+ return QColor(0, 0, 0, 60);
+ }
+
+ QColor topShadow() const {
+ return QColor(0, 0, 0, 18);
+ }
+
+ QColor innerContrastLine() const {
+ return QColor(255, 255, 255, 30);
+ }
+
+ // On mac we want a standard blue color used when the system palette is used
+ bool isMacSystemPalette(const QPalette &pal) const {
+ Q_UNUSED(pal);
+#ifdef Q_OS_MAC
+ const QPalette *themePalette = QGuiApplicationPrivate::platformTheme()->palette();
+ if (themePalette->color(QPalette::Normal, QPalette::Highlight) ==
+ pal.color(QPalette::Normal, QPalette::Highlight) &&
+ themePalette->color(QPalette::Normal, QPalette::HighlightedText) ==
+ pal.color(QPalette::Normal, QPalette::HighlightedText))
+ return true;
+#endif
+ return false;
+ }
+
+ QColor highlight(const QPalette &pal) const {
+ if (isMacSystemPalette(pal))
+ return QColor(60, 140, 230);
+ return pal.color(QPalette::Active, QPalette::Highlight);
+ }
+
+ QColor highlightedText(const QPalette &pal) const {
+ if (isMacSystemPalette(pal))
+ return Qt::white;
+ return pal.color(QPalette::Active, QPalette::HighlightedText);
+ }
+
+ QColor outline(const QPalette &pal) const {
+ if (!pal.window().texture().isNull())
+ return QColor(0, 0, 0, 160);
+ return pal.background().color().darker(140);
+ }
+
+ QColor highlightedOutline(const QPalette &pal) const {
+ QColor highlightedOutline = highlight(pal).darker(125);
+ if (highlightedOutline.value() > 160)
+ highlightedOutline.setHsl(highlightedOutline.hue(), highlightedOutline.saturation(), 160);
+ return highlightedOutline;
+ }
+
+ QColor tabFrameColor(const QPalette &pal) const {
+ if (!pal.button().texture().isNull())
+ return QColor(255, 255, 255, 8);
+ return buttonColor(pal).lighter(104);
+ }
+
+ QColor buttonColor(const QPalette &pal) const {
+ QColor buttonColor = pal.button().color();
+ int val = qGray(buttonColor.rgb());
+ buttonColor = buttonColor.lighter(100 + qMax(1, (180 - val)/6));
+ buttonColor.setHsv(buttonColor.hue(), buttonColor.saturation() * 0.75, buttonColor.value());
+ return buttonColor;
+ }
+
+ enum {
+ menuItemHMargin = 3, // menu item hor text margin
+ menuArrowHMargin = 6, // menu arrow horizontal margin
+ menuRightBorder = 15, // right border on menus
+ menuCheckMarkWidth = 12 // checkmarks width on menus
+ };
+};
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_STYLE_FUSION
+
+#endif //QFUSIONSTYLE_P_P_H
diff --git a/src/widgets/styles/qstylefactory.cpp b/src/widgets/styles/qstylefactory.cpp
index 56633bdd3f..5cdc9678af 100644
--- a/src/widgets/styles/qstylefactory.cpp
+++ b/src/widgets/styles/qstylefactory.cpp
@@ -47,7 +47,7 @@
#include "qapplication.h"
#include "qwindowsstyle.h"
#ifndef QT_NO_STYLE_FUSION
-#include "qfusionstyle.h"
+#include "qfusionstyle_p.h"
#endif
#ifndef QT_NO_STYLE_GTK
#include "qgtkstyle_p.h"
diff --git a/src/widgets/styles/styles.pri b/src/widgets/styles/styles.pri
index efe241c48d..f7e51005ca 100644
--- a/src/widgets/styles/styles.pri
+++ b/src/widgets/styles/styles.pri
@@ -112,8 +112,8 @@ contains( styles, gtk ) {
DEFINES += QT_NO_STYLE_GTK
}
contains( styles, fusion ) {
- HEADERS += styles/qfusionstyle.h
HEADERS += styles/qfusionstyle_p.h
+ HEADERS += styles/qfusionstyle_p_p.h
SOURCES += styles/qfusionstyle.cpp
} else {
DEFINES += QT_NO_STYLE_FUSION
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 <qboxlayout.h>
#include <qaction.h>
#include <qwidgetaction.h>
-#ifndef Q_NO_STYLE_FUSION
-#include <qfusionstyle.h>
-#endif
+#include <qcommonstyle.h>
+#include <qstylefactory.h>
#include "../../../qtest-config.h"
@@ -1399,7 +1398,7 @@ void tst_QGraphicsWidget::setStyle_data()
{
QTest::addColumn<QString>("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<QStyle*>(&fusionStyle));
+ if (!style.isEmpty()) {
+ QStyle *fstyle = QStyleFactory::create(style);
+ widget.setStyle(fstyle);
+ QCOMPARE(widget.style(), static_cast<QStyle*>(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 <qmdiarea.h>
#include <qscrollarea.h>
-#ifndef Q_NO_STYLE_FUSION
-#include <qfusionstyle.h>
-#endif
-
#ifdef Q_OS_MAC
#include <QMacStyle>
#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 <QtTest/QtTest>
#include <QtDebug>
#include <QMetaObject>
-#include <QFusionStyle>
#include <private/qstylesheetstyle_p.h>
@@ -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 <qstringlist.h>
#include <qvalidator.h>
#include <qcompleter.h>
-#ifndef QT_NO_STYLE_FUSION
-#include <qfusionstyle.h>
-#endif
+#include <qstylefactory.h>
#include <qabstractitemview.h>
#include <qstyleditemdelegate.h>
#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;