aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2016-09-22 13:57:42 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2016-09-23 10:48:16 +0000
commit56bddc7fa4b0222d38fcc5e083b9588c3d2f8b93 (patch)
tree6ac346f1ff8808c4eb8de459772abb0738504a54 /src
parent6883dbd814141ec794df24096302bf51b34a91eb (diff)
Let QT_QUICK_CONTROLS_CONF override :/qtquickcontrols2.conf
This is an undocumented feature mainly for tooling purposes. This way tooling can make sure that qmlpuppet uses the same configuration as the application when displaying a form in the Qt Quick Designer. Change-Id: If46055f09049118f1f49c350c74d5aab501a0378 Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r--src/quickcontrols2/qquickstyleattached.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/quickcontrols2/qquickstyleattached.cpp b/src/quickcontrols2/qquickstyleattached.cpp
index d0df79c5..cdfa902e 100644
--- a/src/quickcontrols2/qquickstyleattached.cpp
+++ b/src/quickcontrols2/qquickstyleattached.cpp
@@ -146,6 +146,18 @@ static QList<QQuickStyleAttached *> findChildStyles(const QMetaObject *type, QOb
return children;
}
+static QString resolveConfigFile()
+{
+ QString filePath = QFile::decodeName(qgetenv("QT_QUICK_CONTROLS_CONF"));
+ if (!QFile::exists(filePath)) {
+ if (!filePath.isEmpty())
+ qWarning("QT_QUICK_CONTROLS_CONF=%s: No such file", qPrintable(filePath));
+
+ filePath = QStringLiteral(":/qtquickcontrols2.conf");
+ }
+ return filePath;
+}
+
QQuickStyleAttached::QQuickStyleAttached(QObject *parent) : QObject(parent)
{
QQuickItem *item = qobject_cast<QQuickItem *>(parent);
@@ -175,7 +187,7 @@ QQuickStyleAttached::~QQuickStyleAttached()
QSharedPointer<QSettings> QQuickStyleAttached::settings(const QString &group)
{
#ifndef QT_NO_SETTINGS
- const QString filePath = QStringLiteral(":/qtquickcontrols2.conf");
+ static const QString filePath = resolveConfigFile();
if (QFile::exists(filePath)) {
QFileSelector selector;
QSettings *settings = new QSettings(selector.select(filePath), QSettings::IniFormat);