diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-09-22 13:57:42 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-09-23 10:48:16 +0000 |
commit | 56bddc7fa4b0222d38fcc5e083b9588c3d2f8b93 (patch) | |
tree | 6ac346f1ff8808c4eb8de459772abb0738504a54 /src | |
parent | 6883dbd814141ec794df24096302bf51b34a91eb (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.cpp | 14 |
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); |