Utils: Pass settings key to BaseAspect::saveToMap

Makes the code on the user side somewhat more symmetric and is a
bit more flexible, even if that's not used right now.

Change-Id: I29a5182463ead0e4a39fcb51ecf4fdd5adf2a203
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2021-03-11 16:52:22 +01:00
parent 4cebde86da
commit d5dec08893
6 changed files with 13 additions and 14 deletions

View File

@@ -462,11 +462,10 @@ void BaseAspect::registerSubWidget(QWidget *widget)
} }
void BaseAspect::saveToMap(QVariantMap &data, const QVariant &value, void BaseAspect::saveToMap(QVariantMap &data, const QVariant &value,
const QVariant &defaultValue, const QString &keyExtension) const const QVariant &defaultValue, const QString &key)
{ {
if (settingsKey().isEmpty()) if (key.isEmpty())
return; return;
const QString key = settingsKey() + keyExtension;
if (value == defaultValue) if (value == defaultValue)
data.remove(key); data.remove(key);
else else
@@ -486,7 +485,7 @@ void BaseAspect::fromMap(const QVariantMap &map)
*/ */
void BaseAspect::toMap(QVariantMap &map) const void BaseAspect::toMap(QVariantMap &map) const
{ {
saveToMap(map, d->m_value, d->m_defaultValue); saveToMap(map, d->m_value, d->m_defaultValue, settingsKey());
} }
void BaseAspect::readSettings(const QSettings *settings) void BaseAspect::readSettings(const QSettings *settings)
@@ -802,7 +801,7 @@ void StringAspect::fromMap(const QVariantMap &map)
*/ */
void StringAspect::toMap(QVariantMap &map) const void StringAspect::toMap(QVariantMap &map) const
{ {
saveToMap(map, value(), defaultValue()); saveToMap(map, value(), defaultValue(), settingsKey());
if (d->m_checker) if (d->m_checker)
d->m_checker->toMap(map); d->m_checker->toMap(map);
} }

View File

@@ -142,8 +142,8 @@ protected:
} }
void registerSubWidget(QWidget *widget); void registerSubWidget(QWidget *widget);
void saveToMap(QVariantMap &data, const QVariant &value, static void saveToMap(QVariantMap &data, const QVariant &value,
const QVariant &defaultValue, const QString &keyExtension = {}) const; const QVariant &defaultValue, const QString &key);
private: private:
std::unique_ptr<Internal::BaseAspectPrivate> d; std::unique_ptr<Internal::BaseAspectPrivate> d;

View File

@@ -85,7 +85,7 @@ void BaseStringListAspect::fromMap(const QVariantMap &map)
void BaseStringListAspect::toMap(QVariantMap &data) const void BaseStringListAspect::toMap(QVariantMap &data) const
{ {
saveToMap(data, m_value, QStringList()); saveToMap(data, m_value, QStringList(), settingsKey());
} }
QStringList BaseStringListAspect::value() const QStringList BaseStringListAspect::value() const

View File

@@ -89,7 +89,7 @@ void BuildDirectoryAspect::toMap(QVariantMap &map) const
StringAspect::toMap(map); StringAspect::toMap(map);
if (!d->sourceDir.isEmpty()) { if (!d->sourceDir.isEmpty()) {
const FilePath shadowDir = isChecked() ? filePath() : d->savedShadowBuildDir; const FilePath shadowDir = isChecked() ? filePath() : d->savedShadowBuildDir;
saveToMap(map, shadowDir.toString(), QString(), ".shadowDir"); saveToMap(map, shadowDir.toString(), QString(), settingsKey() + ".shadowDir");
} }
} }

View File

@@ -235,8 +235,8 @@ void WorkingDirectoryAspect::toMap(QVariantMap &data) const
{ {
const QString wd = m_workingDirectory == m_defaultWorkingDirectory const QString wd = m_workingDirectory == m_defaultWorkingDirectory
? QString() : m_workingDirectory.toString(); ? QString() : m_workingDirectory.toString();
saveToMap(data, wd, QString()); saveToMap(data, wd, QString(), settingsKey());
saveToMap(data, m_defaultWorkingDirectory.toString(), QString(), ".default"); saveToMap(data, m_defaultWorkingDirectory.toString(), QString(), settingsKey() + ".default");
} }
/*! /*!
@@ -411,8 +411,8 @@ void ArgumentsAspect::fromMap(const QVariantMap &map)
*/ */
void ArgumentsAspect::toMap(QVariantMap &map) const void ArgumentsAspect::toMap(QVariantMap &map) const
{ {
saveToMap(map, m_arguments, QString()); saveToMap(map, m_arguments, QString(), settingsKey());
saveToMap(map, m_multiLine, false, ".multi"); saveToMap(map, m_multiLine, false, settingsKey() + ".multi");
} }
/*! /*!

View File

@@ -177,7 +177,7 @@ void InterpreterAspect::fromMap(const QVariantMap &map)
void InterpreterAspect::toMap(QVariantMap &map) const void InterpreterAspect::toMap(QVariantMap &map) const
{ {
saveToMap(map, m_currentId, QString()); saveToMap(map, m_currentId, QString(), settingsKey());
} }
void InterpreterAspect::addToLayout(LayoutBuilder &builder) void InterpreterAspect::addToLayout(LayoutBuilder &builder)