diff options
Diffstat (limited to 'src/controls/qquickstyle.cpp')
-rw-r--r-- | src/controls/qquickstyle.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/controls/qquickstyle.cpp b/src/controls/qquickstyle.cpp index b83f8c2a..4ab7b7cc 100644 --- a/src/controls/qquickstyle.cpp +++ b/src/controls/qquickstyle.cpp @@ -36,10 +36,14 @@ #include "qquickstyle_p.h" +#include <QtCore/qfile.h> +#include <QtCore/qsettings.h> #include <QtQuick/private/qquickitem_p.h> QT_BEGIN_NAMESPACE +static const char *SettingsFilePath = ":/qtlabscontrols.conf"; + static QQuickStyle *attachedStyle(const QMetaObject *type, QObject *object, bool create = false) { if (!object) @@ -148,6 +152,20 @@ QQuickStyle::~QQuickStyle() setParentStyle(Q_NULLPTR); } +QSharedPointer<QSettings> QQuickStyle::settings(const QString &group) +{ +#ifndef QT_NO_SETTINGS + const QString filePath = QLatin1String(SettingsFilePath); + if (QFile::exists(filePath)) { + QSettings *settings = new QSettings(filePath, QSettings::IniFormat); + if (!group.isEmpty()) + settings->beginGroup(group); + return QSharedPointer<QSettings>(settings); + } +#endif // QT_NO_SETTINGS + return QSharedPointer<QSettings>(); +} + QList<QQuickStyle *> QQuickStyle::childStyles() const { return m_childStyles; |