aboutsummaryrefslogtreecommitdiffstats
path: root/src/controls/qquickstyleselector.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/controls/qquickstyleselector.cpp')
-rw-r--r--src/controls/qquickstyleselector.cpp22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/controls/qquickstyleselector.cpp b/src/controls/qquickstyleselector.cpp
index a84645d2..6779836c 100644
--- a/src/controls/qquickstyleselector.cpp
+++ b/src/controls/qquickstyleselector.cpp
@@ -43,8 +43,10 @@
#include <QtCore/QFileInfo>
#include <QtCore/QLocale>
#include <QtCore/QDebug>
+#include <QtCore/QSettings>
#include <QtGui/private/qguiapplication_p.h>
+#include <QtLabsControls/private/qquickstyle_p.h>
QT_BEGIN_NAMESPACE
@@ -58,9 +60,14 @@ QQuickStyleSelectorPrivate::QQuickStyleSelectorPrivate()
QQuickStyleSelector::QQuickStyleSelector() : d_ptr(new QQuickStyleSelectorPrivate)
{
Q_D(QQuickStyleSelector);
- d->style = QGuiApplicationPrivate::styleOverride;
+ d->style = QGuiApplicationPrivate::styleOverride.toLower();
if (d->style.isEmpty())
- d->style = QString::fromLatin1(qgetenv("QT_LABS_CONTROLS_STYLE"));
+ d->style = QString::fromLatin1(qgetenv("QT_LABS_CONTROLS_STYLE")).toLower();
+ if (d->style.isEmpty()) {
+ QSharedPointer<QSettings> settings = QQuickStyle::settings(QStringLiteral("Controls"));
+ if (settings)
+ d->style = settings->value(QStringLiteral("Style")).toString().toLower();
+ }
}
QQuickStyleSelector::~QQuickStyleSelector()
@@ -156,7 +163,10 @@ QStringList QQuickStyleSelector::allSelectors() const
Q_D(const QQuickStyleSelector);
QMutexLocker locker(&sharedDataMutex);
QQuickStyleSelectorPrivate::updateSelectors();
- return QStringList(d->style) + sharedData->staticSelectors;
+ QStringList selectors = sharedData->staticSelectors;
+ if (!d->style.isEmpty())
+ selectors.prepend(d->style);
+ return selectors;
}
void QQuickStyleSelector::setBaseUrl(const QUrl &base)
@@ -172,12 +182,6 @@ QUrl QQuickStyleSelector::baseUrl() const
return d->baseUrl;
}
-QQuickStyleSelector *QQuickStyleSelector::instance()
-{
- static QQuickStyleSelector self;
- return &self;
-}
-
void QQuickStyleSelectorPrivate::updateSelectors()
{
if (!sharedData->staticSelectors.isEmpty())