forked from qt-creator/qt-creator
Utils/VcsBase: Move ability to specify group settings keys to base
Merge it with the read/writeSettings implementation that was already there. Change-Id: I25dfbdf6fd1cf122b17f89eae82cb2598d8470c8 Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -80,32 +80,4 @@ QStringList VcsBaseSettings::searchPathList() const
|
||||
return path.value().split(HostOsInfo::pathListSeparator(), Qt::SkipEmptyParts);
|
||||
}
|
||||
|
||||
void VcsBaseSettings::setSettingsGroup(const QString &key)
|
||||
{
|
||||
m_settingsGroup = key;
|
||||
}
|
||||
|
||||
void VcsBaseSettings::writeSettings(QSettings *settings) const
|
||||
{
|
||||
QTC_ASSERT(!m_settingsGroup.isEmpty(), return);
|
||||
|
||||
settings->remove(m_settingsGroup);
|
||||
settings->beginGroup(m_settingsGroup);
|
||||
forEachAspect([settings](BaseAspect *aspect) {
|
||||
QtcSettings::setValueWithDefault(settings, aspect->settingsKey(),
|
||||
aspect->value(), aspect->defaultValue());
|
||||
});
|
||||
settings->endGroup();
|
||||
}
|
||||
|
||||
void VcsBaseSettings::readSettings(const QSettings *settings)
|
||||
{
|
||||
const QString keyRoot = m_settingsGroup + '/';
|
||||
forEachAspect([settings, keyRoot](BaseAspect *aspect) {
|
||||
QString key = aspect->settingsKey();
|
||||
const QVariant value = settings->value(keyRoot + key, aspect->defaultValue());
|
||||
aspect->setValue(value);
|
||||
});
|
||||
}
|
||||
|
||||
} // namespace VcsBase
|
||||
|
||||
@@ -48,11 +48,6 @@ public:
|
||||
|
||||
QStringList searchPathList() const;
|
||||
|
||||
void writeSettings(QSettings *settings) const;
|
||||
void readSettings(const QSettings *settings);
|
||||
|
||||
void setSettingsGroup(const QString &key);
|
||||
|
||||
private:
|
||||
QString m_settingsGroup;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user