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,
const QVariant &defaultValue, const QString &keyExtension) const
const QVariant &defaultValue, const QString &key)
{
if (settingsKey().isEmpty())
if (key.isEmpty())
return;
const QString key = settingsKey() + keyExtension;
if (value == defaultValue)
data.remove(key);
else
@@ -486,7 +485,7 @@ void BaseAspect::fromMap(const QVariantMap &map)
*/
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)
@@ -802,7 +801,7 @@ void StringAspect::fromMap(const QVariantMap &map)
*/
void StringAspect::toMap(QVariantMap &map) const
{
saveToMap(map, value(), defaultValue());
saveToMap(map, value(), defaultValue(), settingsKey());
if (d->m_checker)
d->m_checker->toMap(map);
}

View File

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

View File

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

View File

@@ -89,7 +89,7 @@ void BuildDirectoryAspect::toMap(QVariantMap &map) const
StringAspect::toMap(map);
if (!d->sourceDir.isEmpty()) {
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
? QString() : m_workingDirectory.toString();
saveToMap(data, wd, QString());
saveToMap(data, m_defaultWorkingDirectory.toString(), QString(), ".default");
saveToMap(data, wd, QString(), settingsKey());
saveToMap(data, m_defaultWorkingDirectory.toString(), QString(), settingsKey() + ".default");
}
/*!
@@ -411,8 +411,8 @@ void ArgumentsAspect::fromMap(const QVariantMap &map)
*/
void ArgumentsAspect::toMap(QVariantMap &map) const
{
saveToMap(map, m_arguments, QString());
saveToMap(map, m_multiLine, false, ".multi");
saveToMap(map, m_arguments, QString(), settingsKey());
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
{
saveToMap(map, m_currentId, QString());
saveToMap(map, m_currentId, QString(), settingsKey());
}
void InterpreterAspect::addToLayout(LayoutBuilder &builder)