aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/libs/utils/settingsutils.h20
-rw-r--r--src/plugins/cppeditor/cppcodestylepreferences.cpp21
-rw-r--r--src/plugins/cppeditor/cppcodestylepreferences.h4
-rw-r--r--src/plugins/cppeditor/cppcodestylesettings.cpp110
-rw-r--r--src/plugins/cppeditor/cppcodestylesettings.h6
-rw-r--r--src/plugins/projectexplorer/editorconfiguration.cpp56
-rw-r--r--src/plugins/texteditor/behaviorsettings.cpp44
-rw-r--r--src/plugins/texteditor/behaviorsettings.h6
-rw-r--r--src/plugins/texteditor/behaviorsettingspage.cpp2
-rw-r--r--src/plugins/texteditor/codestylepool.cpp13
-rw-r--r--src/plugins/texteditor/extraencodingsettings.cpp13
-rw-r--r--src/plugins/texteditor/extraencodingsettings.h6
-rw-r--r--src/plugins/texteditor/icodestylepreferences.cpp18
-rw-r--r--src/plugins/texteditor/icodestylepreferences.h6
-rw-r--r--src/plugins/texteditor/marginsettings.cpp18
-rw-r--r--src/plugins/texteditor/marginsettings.h4
-rw-r--r--src/plugins/texteditor/storagesettings.cpp38
-rw-r--r--src/plugins/texteditor/storagesettings.h6
-rw-r--r--src/plugins/texteditor/tabsettings.cpp30
-rw-r--r--src/plugins/texteditor/tabsettings.h6
-rw-r--r--src/plugins/texteditor/typingsettings.cpp32
-rw-r--r--src/plugins/texteditor/typingsettings.h6
22 files changed, 223 insertions, 242 deletions
diff --git a/src/libs/utils/settingsutils.h b/src/libs/utils/settingsutils.h
index 13a03c41de..38fec4c317 100644
--- a/src/libs/utils/settingsutils.h
+++ b/src/libs/utils/settingsutils.h
@@ -35,19 +35,16 @@ namespace Utils {
template <class SettingsClassT>
void fromSettings(const QString &postFix,
const QString &category,
- const QSettings *s,
+ QSettings *s,
SettingsClassT *obj)
{
QVariantMap map;
+ s->beginGroup(category + postFix);
const QStringList keys = s->allKeys();
for (const QString &key : keys)
map.insert(key, s->value(key));
-
- QString group = postFix;
- if (!category.isEmpty())
- group.insert(0, category);
- group += QLatin1Char('/');
- obj->fromMap(group, map);
+ s->endGroup();
+ obj->fromMap(map);
}
template <class SettingsClassT>
@@ -59,13 +56,12 @@ void toSettings(const QString &postFix,
QString group = postFix;
if (!category.isEmpty())
group.insert(0, category);
- group += QLatin1Char('/');
+ const QVariantMap map = obj->toMap();
- QVariantMap map;
- obj->toMap(group, &map);
- QVariantMap::const_iterator it = map.constBegin();
- for (; it != map.constEnd(); ++it)
+ s->beginGroup(group);
+ for (auto it = map.constBegin(), end = map.constEnd(); it != end; ++it)
s->setValue(it.key(), it.value());
+ s->endGroup();
}
} // Utils
diff --git a/src/plugins/cppeditor/cppcodestylepreferences.cpp b/src/plugins/cppeditor/cppcodestylepreferences.cpp
index f0731aeba2..85d73ff8af 100644
--- a/src/plugins/cppeditor/cppcodestylepreferences.cpp
+++ b/src/plugins/cppeditor/cppcodestylepreferences.cpp
@@ -89,22 +89,19 @@ void CppCodeStylePreferences::slotCurrentValueChanged(const QVariant &value)
emit currentCodeStyleSettingsChanged(value.value<CppCodeStyleSettings>());
}
-void CppCodeStylePreferences::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap CppCodeStylePreferences::toMap() const
{
- ICodeStylePreferences::toMap(prefix, map);
- if (currentDelegate())
- return;
-
- m_data.toMap(prefix, map);
+ QVariantMap map = ICodeStylePreferences::toMap();
+ if (!currentDelegate())
+ map.insert(m_data.toMap());
+ return map;
}
-void CppCodeStylePreferences::fromMap(const QString &prefix, const QVariantMap &map)
+void CppCodeStylePreferences::fromMap(const QVariantMap &map)
{
- ICodeStylePreferences::fromMap(prefix, map);
- if (currentDelegate())
- return;
-
- m_data.fromMap(prefix, map);
+ ICodeStylePreferences::fromMap(map);
+ if (!currentDelegate())
+ m_data.fromMap(map);
}
} // namespace CppEditor
diff --git a/src/plugins/cppeditor/cppcodestylepreferences.h b/src/plugins/cppeditor/cppcodestylepreferences.h
index f68dd48027..c77961bdc6 100644
--- a/src/plugins/cppeditor/cppcodestylepreferences.h
+++ b/src/plugins/cppeditor/cppcodestylepreferences.h
@@ -47,8 +47,8 @@ public:
// tracks parent hierarchy until currentParentSettings is null
CppCodeStyleSettings currentCodeStyleSettings() const;
- void toMap(const QString &prefix, QVariantMap *map) const override;
- void fromMap(const QString &prefix, const QVariantMap &map) override;
+ QVariantMap toMap() const override;
+ void fromMap(const QVariantMap &map) override;
public slots:
void setCodeStyleSettings(const CppCodeStyleSettings &data);
diff --git a/src/plugins/cppeditor/cppcodestylesettings.cpp b/src/plugins/cppeditor/cppcodestylesettings.cpp
index d4b2f3f4d3..7a6d47d1b2 100644
--- a/src/plugins/cppeditor/cppcodestylesettings.cpp
+++ b/src/plugins/cppeditor/cppcodestylesettings.cpp
@@ -74,80 +74,68 @@ void CppCodeStyleSettings::toSettings(const QString &category, QSettings *s) con
Utils::toSettings(QLatin1String(groupPostfix), category, s, this);
}
-void CppCodeStyleSettings::fromSettings(const QString &category, const QSettings *s)
+void CppCodeStyleSettings::fromSettings(const QString &category, QSettings *s)
{
*this = CppCodeStyleSettings(); // Assign defaults
Utils::fromSettings(QLatin1String(groupPostfix), category, s, this);
}
-void CppCodeStyleSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap CppCodeStyleSettings::toMap() const
{
- map->insert(prefix + QLatin1String(indentBlockBracesKey), indentBlockBraces);
- map->insert(prefix + QLatin1String(indentBlockBodyKey), indentBlockBody);
- map->insert(prefix + QLatin1String(indentClassBracesKey), indentClassBraces);
- map->insert(prefix + QLatin1String(indentEnumBracesKey), indentEnumBraces);
- map->insert(prefix + QLatin1String(indentNamespaceBracesKey), indentNamespaceBraces);
- map->insert(prefix + QLatin1String(indentNamespaceBodyKey), indentNamespaceBody);
- map->insert(prefix + QLatin1String(indentAccessSpecifiersKey), indentAccessSpecifiers);
- map->insert(prefix + QLatin1String(indentDeclarationsRelativeToAccessSpecifiersKey), indentDeclarationsRelativeToAccessSpecifiers);
- map->insert(prefix + QLatin1String(indentFunctionBodyKey), indentFunctionBody);
- map->insert(prefix + QLatin1String(indentFunctionBracesKey), indentFunctionBraces);
- map->insert(prefix + QLatin1String(indentSwitchLabelsKey), indentSwitchLabels);
- map->insert(prefix + QLatin1String(indentStatementsRelativeToSwitchLabelsKey), indentStatementsRelativeToSwitchLabels);
- map->insert(prefix + QLatin1String(indentBlocksRelativeToSwitchLabelsKey), indentBlocksRelativeToSwitchLabels);
- map->insert(prefix + QLatin1String(indentControlFlowRelativeToSwitchLabelsKey), indentControlFlowRelativeToSwitchLabels);
- map->insert(prefix + QLatin1String(bindStarToIdentifierKey), bindStarToIdentifier);
- map->insert(prefix + QLatin1String(bindStarToTypeNameKey), bindStarToTypeName);
- map->insert(prefix + QLatin1String(bindStarToLeftSpecifierKey), bindStarToLeftSpecifier);
- map->insert(prefix + QLatin1String(bindStarToRightSpecifierKey), bindStarToRightSpecifier);
- map->insert(prefix + QLatin1String(extraPaddingForConditionsIfConfusingAlignKey), extraPaddingForConditionsIfConfusingAlign);
- map->insert(prefix + QLatin1String(alignAssignmentsKey), alignAssignments);
- map->insert(prefix + QLatin1String(shortGetterNameKey), preferGetterNameWithoutGetPrefix);
+ return {
+ {indentBlockBracesKey, indentBlockBraces},
+ {indentBlockBodyKey, indentBlockBody},
+ {indentClassBracesKey, indentClassBraces},
+ {indentEnumBracesKey, indentEnumBraces},
+ {indentNamespaceBracesKey, indentNamespaceBraces},
+ {indentNamespaceBodyKey, indentNamespaceBody},
+ {indentAccessSpecifiersKey, indentAccessSpecifiers},
+ {indentDeclarationsRelativeToAccessSpecifiersKey, indentDeclarationsRelativeToAccessSpecifiers},
+ {indentFunctionBodyKey, indentFunctionBody},
+ {indentFunctionBracesKey, indentFunctionBraces},
+ {indentSwitchLabelsKey, indentSwitchLabels},
+ {indentStatementsRelativeToSwitchLabelsKey, indentStatementsRelativeToSwitchLabels},
+ {indentBlocksRelativeToSwitchLabelsKey, indentBlocksRelativeToSwitchLabels},
+ {indentControlFlowRelativeToSwitchLabelsKey, indentControlFlowRelativeToSwitchLabels},
+ {bindStarToIdentifierKey, bindStarToIdentifier},
+ {bindStarToTypeNameKey, bindStarToTypeName},
+ {bindStarToLeftSpecifierKey, bindStarToLeftSpecifier},
+ {bindStarToRightSpecifierKey, bindStarToRightSpecifier},
+ {extraPaddingForConditionsIfConfusingAlignKey, extraPaddingForConditionsIfConfusingAlign},
+ {alignAssignmentsKey, alignAssignments},
+ {shortGetterNameKey, preferGetterNameWithoutGetPrefix}
+ };
}
-void CppCodeStyleSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void CppCodeStyleSettings::fromMap(const QVariantMap &map)
{
- indentBlockBraces = map.value(prefix + QLatin1String(indentBlockBracesKey),
- indentBlockBraces).toBool();
- indentBlockBody = map.value(prefix + QLatin1String(indentBlockBodyKey),
- indentBlockBody).toBool();
- indentClassBraces = map.value(prefix + QLatin1String(indentClassBracesKey),
- indentClassBraces).toBool();
- indentEnumBraces = map.value(prefix + QLatin1String(indentEnumBracesKey),
- indentEnumBraces).toBool();
- indentNamespaceBraces = map.value(prefix + QLatin1String(indentNamespaceBracesKey),
- indentNamespaceBraces).toBool();
- indentNamespaceBody = map.value(prefix + QLatin1String(indentNamespaceBodyKey),
- indentNamespaceBody).toBool();
- indentAccessSpecifiers = map.value(prefix + QLatin1String(indentAccessSpecifiersKey),
- indentAccessSpecifiers).toBool();
- indentDeclarationsRelativeToAccessSpecifiers = map.value(prefix + QLatin1String(indentDeclarationsRelativeToAccessSpecifiersKey),
- indentDeclarationsRelativeToAccessSpecifiers).toBool();
- indentFunctionBody = map.value(prefix + QLatin1String(indentFunctionBodyKey),
- indentFunctionBody).toBool();
- indentFunctionBraces = map.value(prefix + QLatin1String(indentFunctionBracesKey),
- indentFunctionBraces).toBool();
- indentSwitchLabels = map.value(prefix + QLatin1String(indentSwitchLabelsKey),
- indentSwitchLabels).toBool();
- indentStatementsRelativeToSwitchLabels = map.value(prefix + QLatin1String(indentStatementsRelativeToSwitchLabelsKey),
+ indentBlockBraces = map.value(indentBlockBracesKey, indentBlockBraces).toBool();
+ indentBlockBody = map.value(indentBlockBodyKey, indentBlockBody).toBool();
+ indentClassBraces = map.value(indentClassBracesKey, indentClassBraces).toBool();
+ indentEnumBraces = map.value(indentEnumBracesKey, indentEnumBraces).toBool();
+ indentNamespaceBraces = map.value(indentNamespaceBracesKey, indentNamespaceBraces).toBool();
+ indentNamespaceBody = map.value(indentNamespaceBodyKey, indentNamespaceBody).toBool();
+ indentAccessSpecifiers = map.value(indentAccessSpecifiersKey, indentAccessSpecifiers).toBool();
+ indentDeclarationsRelativeToAccessSpecifiers =
+ map.value(indentDeclarationsRelativeToAccessSpecifiersKey,
+ indentDeclarationsRelativeToAccessSpecifiers).toBool();
+ indentFunctionBody = map.value(indentFunctionBodyKey, indentFunctionBody).toBool();
+ indentFunctionBraces = map.value(indentFunctionBracesKey, indentFunctionBraces).toBool();
+ indentSwitchLabels = map.value(indentSwitchLabelsKey, indentSwitchLabels).toBool();
+ indentStatementsRelativeToSwitchLabels = map.value(indentStatementsRelativeToSwitchLabelsKey,
indentStatementsRelativeToSwitchLabels).toBool();
- indentBlocksRelativeToSwitchLabels = map.value(prefix + QLatin1String(indentBlocksRelativeToSwitchLabelsKey),
+ indentBlocksRelativeToSwitchLabels = map.value(indentBlocksRelativeToSwitchLabelsKey,
indentBlocksRelativeToSwitchLabels).toBool();
- indentControlFlowRelativeToSwitchLabels = map.value(prefix + QLatin1String(indentControlFlowRelativeToSwitchLabelsKey),
+ indentControlFlowRelativeToSwitchLabels = map.value(indentControlFlowRelativeToSwitchLabelsKey,
indentControlFlowRelativeToSwitchLabels).toBool();
- bindStarToIdentifier = map.value(prefix + QLatin1String(bindStarToIdentifierKey),
- bindStarToIdentifier).toBool();
- bindStarToTypeName = map.value(prefix + QLatin1String(bindStarToTypeNameKey),
- bindStarToTypeName).toBool();
- bindStarToLeftSpecifier = map.value(prefix + QLatin1String(bindStarToLeftSpecifierKey),
- bindStarToLeftSpecifier).toBool();
- bindStarToRightSpecifier = map.value(prefix + QLatin1String(bindStarToRightSpecifierKey),
- bindStarToRightSpecifier).toBool();
- extraPaddingForConditionsIfConfusingAlign = map.value(prefix + QLatin1String(extraPaddingForConditionsIfConfusingAlignKey),
+ bindStarToIdentifier = map.value(bindStarToIdentifierKey, bindStarToIdentifier).toBool();
+ bindStarToTypeName = map.value(bindStarToTypeNameKey, bindStarToTypeName).toBool();
+ bindStarToLeftSpecifier = map.value(bindStarToLeftSpecifierKey, bindStarToLeftSpecifier).toBool();
+ bindStarToRightSpecifier = map.value(bindStarToRightSpecifierKey, bindStarToRightSpecifier).toBool();
+ extraPaddingForConditionsIfConfusingAlign = map.value(extraPaddingForConditionsIfConfusingAlignKey,
extraPaddingForConditionsIfConfusingAlign).toBool();
- alignAssignments = map.value(prefix + QLatin1String(alignAssignmentsKey),
- alignAssignments).toBool();
- preferGetterNameWithoutGetPrefix = map.value(prefix + QLatin1String(shortGetterNameKey),
+ alignAssignments = map.value(alignAssignmentsKey, alignAssignments).toBool();
+ preferGetterNameWithoutGetPrefix = map.value(shortGetterNameKey,
preferGetterNameWithoutGetPrefix).toBool();
}
diff --git a/src/plugins/cppeditor/cppcodestylesettings.h b/src/plugins/cppeditor/cppcodestylesettings.h
index 3cda6e44c2..fdd34e9bc0 100644
--- a/src/plugins/cppeditor/cppcodestylesettings.h
+++ b/src/plugins/cppeditor/cppcodestylesettings.h
@@ -89,10 +89,10 @@ public:
bool preferGetterNameWithoutGetPrefix = true;
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
bool equals(const CppCodeStyleSettings &rhs) const;
bool operator==(const CppCodeStyleSettings &s) const { return equals(s); }
diff --git a/src/plugins/projectexplorer/editorconfiguration.cpp b/src/plugins/projectexplorer/editorconfiguration.cpp
index 0555deb7a6..286e8cf201 100644
--- a/src/plugins/projectexplorer/editorconfiguration.cpp
+++ b/src/plugins/projectexplorer/editorconfiguration.cpp
@@ -180,33 +180,38 @@ QMap<Utils::Id, ICodeStylePreferences *> EditorConfiguration::codeStyles() const
return d->m_languageCodeStylePreferences;
}
-QVariantMap EditorConfiguration::toMap() const
+static void toMapWithPrefix(QVariantMap *map, const QVariantMap &source)
{
- QVariantMap map;
- map.insert(kUseGlobal, d->m_useGlobal);
- map.insert(kCodec, d->m_textCodec->name());
+ for (auto it = source.constBegin(), end = source.constEnd(); it != end; ++it)
+ map->insert(kPrefix + it.key(), it.value());
+}
- map.insert(kCodeStyleCount, d->m_languageCodeStylePreferences.count());
+QVariantMap EditorConfiguration::toMap() const
+{
+ QVariantMap map = {
+ {kUseGlobal, d->m_useGlobal},
+ {kCodec, d->m_textCodec->name()},
+ {kCodeStyleCount, d->m_languageCodeStylePreferences.count()}
+ };
int i = 0;
for (auto itCodeStyle = d->m_languageCodeStylePreferences.cbegin(),
end = d->m_languageCodeStylePreferences.cend();
itCodeStyle != end; ++itCodeStyle) {
- QVariantMap settingsIdMap;
- settingsIdMap.insert(QLatin1String("language"), itCodeStyle.key().toSetting());
- QVariantMap value;
- itCodeStyle.value()->toMap(QString(), &value);
- settingsIdMap.insert(QLatin1String("value"), value);
+ const QVariantMap settingsIdMap = {
+ {"language", itCodeStyle.key().toSetting()},
+ {"value", itCodeStyle.value()->toMap()}
+ };
map.insert(kCodeStylePrefix + QString::number(i), settingsIdMap);
i++;
}
- d->m_defaultCodeStyle->tabSettings().toMap(kPrefix, &map);
- d->m_typingSettings.toMap(kPrefix, &map);
- d->m_storageSettings.toMap(kPrefix, &map);
- d->m_behaviorSettings.toMap(kPrefix, &map);
- d->m_extraEncodingSettings.toMap(kPrefix, &map);
- d->m_marginSettings.toMap(kPrefix, &map);
+ toMapWithPrefix(&map, d->m_defaultCodeStyle->tabSettings().toMap());
+ toMapWithPrefix(&map, d->m_typingSettings.toMap());
+ toMapWithPrefix(&map, d->m_storageSettings.toMap());
+ toMapWithPrefix(&map, d->m_behaviorSettings.toMap());
+ toMapWithPrefix(&map, d->m_extraEncodingSettings.toMap());
+ toMapWithPrefix(&map, d->m_marginSettings.toMap());
return map;
}
@@ -229,15 +234,20 @@ void EditorConfiguration::fromMap(const QVariantMap &map)
QVariantMap value = settingsIdMap.value(QLatin1String("value")).toMap();
ICodeStylePreferences *preferences = d->m_languageCodeStylePreferences.value(languageId);
if (preferences)
- preferences->fromMap(QString(), value);
+ preferences->fromMap(value);
}
- d->m_defaultCodeStyle->fromMap(kPrefix, map);
- d->m_typingSettings.fromMap(kPrefix, map);
- d->m_storageSettings.fromMap(kPrefix, map);
- d->m_behaviorSettings.fromMap(kPrefix, map);
- d->m_extraEncodingSettings.fromMap(kPrefix, map);
- d->m_marginSettings.fromMap(kPrefix, map);
+ QVariantMap submap;
+ for (auto it = map.constBegin(), end = map.constEnd(); it != end; ++it) {
+ if (it.key().startsWith(kPrefix))
+ submap.insert(it.key().mid(kPrefix.size()), it.value());
+ }
+ d->m_defaultCodeStyle->fromMap(submap);
+ d->m_typingSettings.fromMap(submap);
+ d->m_storageSettings.fromMap(submap);
+ d->m_behaviorSettings.fromMap(submap);
+ d->m_extraEncodingSettings.fromMap(submap);
+ d->m_marginSettings.fromMap(submap);
setUseGlobalSettings(map.value(kUseGlobal, d->m_useGlobal).toBool());
}
diff --git a/src/plugins/texteditor/behaviorsettings.cpp b/src/plugins/texteditor/behaviorsettings.cpp
index f969c1b588..658e0b6d1e 100644
--- a/src/plugins/texteditor/behaviorsettings.cpp
+++ b/src/plugins/texteditor/behaviorsettings.cpp
@@ -57,40 +57,34 @@ void BehaviorSettings::toSettings(const QString &category, QSettings *s) const
Utils::toSettings(QLatin1String(groupPostfix), category, s, this);
}
-void BehaviorSettings::fromSettings(const QString &category, const QSettings *s)
+void BehaviorSettings::fromSettings(const QString &category, QSettings *s)
{
*this = BehaviorSettings();
Utils::fromSettings(QLatin1String(groupPostfix), category, s, this);
}
-void BehaviorSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap BehaviorSettings::toMap() const
{
- map->insert(prefix + QLatin1String(mouseHidingKey), m_mouseHiding);
- map->insert(prefix + QLatin1String(mouseNavigationKey), m_mouseNavigation);
- map->insert(prefix + QLatin1String(scrollWheelZoomingKey), m_scrollWheelZooming);
- map->insert(prefix + QLatin1String(constrainTooltips), m_constrainHoverTooltips);
- map->insert(prefix + QLatin1String(camelCaseNavigationKey), m_camelCaseNavigation);
- map->insert(prefix + QLatin1String(keyboardTooltips), m_keyboardTooltips);
- map->insert(prefix + QLatin1String(smartSelectionChanging), m_smartSelectionChanging);
+ return {
+ {mouseHidingKey, m_mouseHiding},
+ {mouseNavigationKey, m_mouseNavigation},
+ {scrollWheelZoomingKey, m_scrollWheelZooming},
+ {constrainTooltips, m_constrainHoverTooltips},
+ {camelCaseNavigationKey, m_camelCaseNavigation},
+ {keyboardTooltips, m_keyboardTooltips},
+ {smartSelectionChanging, m_smartSelectionChanging}
+ };
}
-void BehaviorSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void BehaviorSettings::fromMap(const QVariantMap &map)
{
- m_mouseHiding =
- map.value(prefix + QLatin1String(mouseHidingKey), m_mouseHiding).toBool();
- m_mouseNavigation =
- map.value(prefix + QLatin1String(mouseNavigationKey), m_mouseNavigation).toBool();
- m_scrollWheelZooming =
- map.value(prefix + QLatin1String(scrollWheelZoomingKey), m_scrollWheelZooming).toBool();
- m_constrainHoverTooltips =
- map.value(prefix + QLatin1String(constrainTooltips), m_constrainHoverTooltips).toBool();
- m_camelCaseNavigation =
- map.value(prefix + QLatin1String(camelCaseNavigationKey), m_camelCaseNavigation).toBool();
- m_keyboardTooltips =
- map.value(prefix + QLatin1String(keyboardTooltips), m_keyboardTooltips).toBool();
- m_smartSelectionChanging =
- map.value(prefix + QLatin1String(smartSelectionChanging), m_smartSelectionChanging)
- .toBool();
+ m_mouseHiding = map.value(mouseHidingKey, m_mouseHiding).toBool();
+ m_mouseNavigation = map.value(mouseNavigationKey, m_mouseNavigation).toBool();
+ m_scrollWheelZooming = map.value(scrollWheelZoomingKey, m_scrollWheelZooming).toBool();
+ m_constrainHoverTooltips = map.value(constrainTooltips, m_constrainHoverTooltips).toBool();
+ m_camelCaseNavigation = map.value(camelCaseNavigationKey, m_camelCaseNavigation).toBool();
+ m_keyboardTooltips = map.value(keyboardTooltips, m_keyboardTooltips).toBool();
+ m_smartSelectionChanging = map.value(smartSelectionChanging, m_smartSelectionChanging).toBool();
}
bool BehaviorSettings::equals(const BehaviorSettings &ds) const
diff --git a/src/plugins/texteditor/behaviorsettings.h b/src/plugins/texteditor/behaviorsettings.h
index a6818d0479..8a9a0d5979 100644
--- a/src/plugins/texteditor/behaviorsettings.h
+++ b/src/plugins/texteditor/behaviorsettings.h
@@ -45,10 +45,10 @@ public:
BehaviorSettings();
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
bool equals(const BehaviorSettings &bs) const;
diff --git a/src/plugins/texteditor/behaviorsettingspage.cpp b/src/plugins/texteditor/behaviorsettingspage.cpp
index 47047781c3..27d318d277 100644
--- a/src/plugins/texteditor/behaviorsettingspage.cpp
+++ b/src/plugins/texteditor/behaviorsettingspage.cpp
@@ -79,7 +79,7 @@ BehaviorSettingsPage::BehaviorSettingsPagePrivate::BehaviorSettingsPagePrivate()
m_defaultCodeStylePool = new CodeStylePool(nullptr, this); // Any language
m_defaultCodeStylePool->addCodeStyle(m_codeStyle);
- const QSettings *s = Core::ICore::settings();
+ QSettings * const s = Core::ICore::settings();
m_codeStyle->fromSettings(m_settingsPrefix, s);
m_typingSettings.fromSettings(m_settingsPrefix, s);
m_storageSettings.fromSettings(m_settingsPrefix, s);
diff --git a/src/plugins/texteditor/codestylepool.cpp b/src/plugins/texteditor/codestylepool.cpp
index 64a41be170..3ed439d98f 100644
--- a/src/plugins/texteditor/codestylepool.cpp
+++ b/src/plugins/texteditor/codestylepool.cpp
@@ -242,7 +242,7 @@ ICodeStylePreferences *CodeStylePool::loadCodeStyle(const Utils::FilePath &fileN
codeStyle = d->m_factory->createCodeStyle();
codeStyle->setId(id);
codeStyle->setDisplayName(displayName);
- codeStyle->fromMap(QString(), map);
+ codeStyle->fromMap(map);
addCodeStyle(codeStyle);
}
@@ -280,12 +280,11 @@ void CodeStylePool::saveCodeStyle(ICodeStylePreferences *codeStyle) const
void CodeStylePool::exportCodeStyle(const Utils::FilePath &fileName, ICodeStylePreferences *codeStyle) const
{
- QVariantMap map;
- codeStyle->toMap(QString(), &map);
-
- QVariantMap tmp;
- tmp.insert(QLatin1String(displayNameKey), codeStyle->displayName());
- tmp.insert(QLatin1String(codeStyleDataKey), map);
+ const QVariantMap map = codeStyle->toMap();
+ const QVariantMap tmp = {
+ {displayNameKey, codeStyle->displayName()},
+ {codeStyleDataKey, map}
+ };
Utils::PersistentSettingsWriter writer(fileName, QLatin1String(codeStyleDocKey));
writer.save(tmp, Core::ICore::dialogParent());
}
diff --git a/src/plugins/texteditor/extraencodingsettings.cpp b/src/plugins/texteditor/extraencodingsettings.cpp
index 898840e3d5..c1afefe17a 100644
--- a/src/plugins/texteditor/extraencodingsettings.cpp
+++ b/src/plugins/texteditor/extraencodingsettings.cpp
@@ -49,7 +49,7 @@ void ExtraEncodingSettings::toSettings(const QString &category, QSettings *s) co
Utils::toSettings(QLatin1String(kGroupPostfix), QString(), s, this);
}
-void ExtraEncodingSettings::fromSettings(const QString &category, const QSettings *s)
+void ExtraEncodingSettings::fromSettings(const QString &category, QSettings *s)
{
Q_UNUSED(category)
@@ -57,15 +57,16 @@ void ExtraEncodingSettings::fromSettings(const QString &category, const QSetting
Utils::fromSettings(QLatin1String(kGroupPostfix), QString(), s, this);
}
-void ExtraEncodingSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap ExtraEncodingSettings::toMap() const
{
- map->insert(prefix + QLatin1String(kUtf8BomBehaviorKey), m_utf8BomSetting);
+ return {
+ {kUtf8BomBehaviorKey, m_utf8BomSetting}
+ };
}
-void ExtraEncodingSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void ExtraEncodingSettings::fromMap(const QVariantMap &map)
{
- m_utf8BomSetting = (Utf8BomSetting)
- map.value(prefix + QLatin1String(kUtf8BomBehaviorKey), m_utf8BomSetting).toInt();
+ m_utf8BomSetting = (Utf8BomSetting)map.value(kUtf8BomBehaviorKey, m_utf8BomSetting).toInt();
}
bool ExtraEncodingSettings::equals(const ExtraEncodingSettings &s) const
diff --git a/src/plugins/texteditor/extraencodingsettings.h b/src/plugins/texteditor/extraencodingsettings.h
index dd2d96c9ec..ee45b58ace 100644
--- a/src/plugins/texteditor/extraencodingsettings.h
+++ b/src/plugins/texteditor/extraencodingsettings.h
@@ -42,10 +42,10 @@ public:
~ExtraEncodingSettings();
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
bool equals(const ExtraEncodingSettings &s) const;
diff --git a/src/plugins/texteditor/icodestylepreferences.cpp b/src/plugins/texteditor/icodestylepreferences.cpp
index 7d7aa14fd9..6cb614b333 100644
--- a/src/plugins/texteditor/icodestylepreferences.cpp
+++ b/src/plugins/texteditor/icodestylepreferences.cpp
@@ -216,23 +216,25 @@ void ICodeStylePreferences::toSettings(const QString &category, QSettings *s) co
Utils::toSettings(d->m_settingsSuffix, category, s, this);
}
-void ICodeStylePreferences::fromSettings(const QString &category, const QSettings *s)
+void ICodeStylePreferences::fromSettings(const QString &category, QSettings *s)
{
Utils::fromSettings(d->m_settingsSuffix, category, s, this);
}
-void ICodeStylePreferences::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap ICodeStylePreferences::toMap() const
{
+ QVariantMap map;
if (!currentDelegate())
- d->m_tabSettings.toMap(prefix, map);
- else
- map->insert(prefix + QLatin1String(currentPreferencesKey), currentDelegateId());
+ return d->m_tabSettings.toMap();
+ return {
+ {currentPreferencesKey, currentDelegateId()}
+ };
}
-void ICodeStylePreferences::fromMap(const QString &prefix, const QVariantMap &map)
+void ICodeStylePreferences::fromMap(const QVariantMap &map)
{
- d->m_tabSettings.fromMap(prefix, map);
- const QByteArray delegateId = map.value(prefix + QLatin1String(currentPreferencesKey)).toByteArray();
+ d->m_tabSettings.fromMap(map);
+ const QByteArray delegateId = map.value(currentPreferencesKey).toByteArray();
if (delegatingPool()) {
ICodeStylePreferences *delegate = delegatingPool()->codeStyle(delegateId);
if (!delegateId.isEmpty() && delegate)
diff --git a/src/plugins/texteditor/icodestylepreferences.h b/src/plugins/texteditor/icodestylepreferences.h
index 9646cef1b8..3729f4ddd8 100644
--- a/src/plugins/texteditor/icodestylepreferences.h
+++ b/src/plugins/texteditor/icodestylepreferences.h
@@ -81,11 +81,11 @@ public:
void setSettingsSuffix(const QString &suffix);
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
// make below 2 protected?
- virtual void toMap(const QString &prefix, QVariantMap *map) const;
- virtual void fromMap(const QString &prefix, const QVariantMap &map);
+ virtual QVariantMap toMap() const;
+ virtual void fromMap(const QVariantMap &map);
signals:
void tabSettingsChanged(const TextEditor::TabSettings &settings);
diff --git a/src/plugins/texteditor/marginsettings.cpp b/src/plugins/texteditor/marginsettings.cpp
index ff37a43126..ada6bb5956 100644
--- a/src/plugins/texteditor/marginsettings.cpp
+++ b/src/plugins/texteditor/marginsettings.cpp
@@ -69,18 +69,20 @@ void MarginSettings::fromSettings(const QString &category, const QSettings *s)
m_marginColumn = s->value(group + QLatin1String(wrapColumnKey), m_marginColumn).toInt();
}
-void MarginSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap MarginSettings::toMap() const
{
- map->insert(prefix + QLatin1String(showWrapColumnKey), m_showMargin);
- map->insert(prefix + QLatin1String(useIndenterColumnKey), m_useIndenter);
- map->insert(prefix + QLatin1String(wrapColumnKey), m_marginColumn);
+ return {
+ {showWrapColumnKey, m_showMargin},
+ {useIndenterColumnKey, m_useIndenter},
+ {wrapColumnKey, m_marginColumn}
+ };
}
-void MarginSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void MarginSettings::fromMap(const QVariantMap &map)
{
- m_showMargin = map.value(prefix + QLatin1String(showWrapColumnKey), m_showMargin).toBool();
- m_useIndenter = map.value(prefix + QLatin1String(useIndenterColumnKey), m_useIndenter).toBool();
- m_marginColumn = map.value(prefix + QLatin1String(wrapColumnKey), m_marginColumn).toInt();
+ m_showMargin = map.value(showWrapColumnKey, m_showMargin).toBool();
+ m_useIndenter = map.value(useIndenterColumnKey, m_useIndenter).toBool();
+ m_marginColumn = map.value(wrapColumnKey, m_marginColumn).toInt();
}
bool MarginSettings::equals(const MarginSettings &other) const
diff --git a/src/plugins/texteditor/marginsettings.h b/src/plugins/texteditor/marginsettings.h
index 2dd2e26aa4..e7f6d3bac6 100644
--- a/src/plugins/texteditor/marginsettings.h
+++ b/src/plugins/texteditor/marginsettings.h
@@ -43,8 +43,8 @@ public:
void toSettings(const QString &category, QSettings *s) const;
void fromSettings(const QString &category, const QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
bool equals(const MarginSettings &other) const;
diff --git a/src/plugins/texteditor/storagesettings.cpp b/src/plugins/texteditor/storagesettings.cpp
index 9554fa6e77..cd58a453a5 100644
--- a/src/plugins/texteditor/storagesettings.cpp
+++ b/src/plugins/texteditor/storagesettings.cpp
@@ -58,36 +58,32 @@ void StorageSettings::toSettings(const QString &category, QSettings *s) const
Utils::toSettings(QLatin1String(groupPostfix), category, s, this);
}
-void StorageSettings::fromSettings(const QString &category, const QSettings *s)
+void StorageSettings::fromSettings(const QString &category, QSettings *s)
{
*this = StorageSettings();
Utils::fromSettings(QLatin1String(groupPostfix), category, s, this);
}
-void StorageSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap StorageSettings::toMap() const
{
- map->insert(prefix + QLatin1String(cleanWhitespaceKey), m_cleanWhitespace);
- map->insert(prefix + QLatin1String(inEntireDocumentKey), m_inEntireDocument);
- map->insert(prefix + QLatin1String(addFinalNewLineKey), m_addFinalNewLine);
- map->insert(prefix + QLatin1String(cleanIndentationKey), m_cleanIndentation);
- map->insert(prefix + QLatin1String(skipTrailingWhitespaceKey), m_skipTrailingWhitespace);
- map->insert(prefix + QLatin1String(ignoreFileTypesKey), m_ignoreFileTypes.toLatin1().data());
+ return {
+ {cleanWhitespaceKey, m_cleanWhitespace},
+ {inEntireDocumentKey, m_inEntireDocument},
+ {addFinalNewLineKey, m_addFinalNewLine},
+ {cleanIndentationKey, m_cleanIndentation},
+ {skipTrailingWhitespaceKey, m_skipTrailingWhitespace},
+ {ignoreFileTypesKey, m_ignoreFileTypes.toLatin1().data()}
+ };
}
-void StorageSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void StorageSettings::fromMap(const QVariantMap &map)
{
- m_cleanWhitespace =
- map.value(prefix + QLatin1String(cleanWhitespaceKey), m_cleanWhitespace).toBool();
- m_inEntireDocument =
- map.value(prefix + QLatin1String(inEntireDocumentKey), m_inEntireDocument).toBool();
- m_addFinalNewLine =
- map.value(prefix + QLatin1String(addFinalNewLineKey), m_addFinalNewLine).toBool();
- m_cleanIndentation =
- map.value(prefix + QLatin1String(cleanIndentationKey), m_cleanIndentation).toBool();
- m_skipTrailingWhitespace =
- map.value(prefix + QLatin1String(skipTrailingWhitespaceKey), m_skipTrailingWhitespace).toBool();
- m_ignoreFileTypes =
- map.value(prefix + QLatin1String(ignoreFileTypesKey), m_ignoreFileTypes).toString();
+ m_cleanWhitespace = map.value(cleanWhitespaceKey, m_cleanWhitespace).toBool();
+ m_inEntireDocument = map.value(inEntireDocumentKey, m_inEntireDocument).toBool();
+ m_addFinalNewLine = map.value(addFinalNewLineKey, m_addFinalNewLine).toBool();
+ m_cleanIndentation = map.value(cleanIndentationKey, m_cleanIndentation).toBool();
+ m_skipTrailingWhitespace = map.value(skipTrailingWhitespaceKey, m_skipTrailingWhitespace).toBool();
+ m_ignoreFileTypes = map.value(ignoreFileTypesKey, m_ignoreFileTypes).toString();
}
bool StorageSettings::removeTrailingWhitespace(const QString &fileName) const
diff --git a/src/plugins/texteditor/storagesettings.h b/src/plugins/texteditor/storagesettings.h
index cd9c176b59..70dc5b784b 100644
--- a/src/plugins/texteditor/storagesettings.h
+++ b/src/plugins/texteditor/storagesettings.h
@@ -41,10 +41,10 @@ public:
StorageSettings();
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
// calculated based on boolean setting plus file type blacklist examination
bool removeTrailingWhitespace(const QString &filePattern) const;
diff --git a/src/plugins/texteditor/tabsettings.cpp b/src/plugins/texteditor/tabsettings.cpp
index c363815572..a51138d0cd 100644
--- a/src/plugins/texteditor/tabsettings.cpp
+++ b/src/plugins/texteditor/tabsettings.cpp
@@ -60,32 +60,32 @@ void TabSettings::toSettings(const QString &category, QSettings *s) const
Utils::toSettings(QLatin1String(groupPostfix), category, s, this);
}
-void TabSettings::fromSettings(const QString &category, const QSettings *s)
+void TabSettings::fromSettings(const QString &category, QSettings *s)
{
*this = TabSettings(); // Assign defaults
Utils::fromSettings(QLatin1String(groupPostfix), category, s, this);
}
-void TabSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap TabSettings::toMap() const
{
- map->insert(prefix + QLatin1String(spacesForTabsKey), m_tabPolicy != TabsOnlyTabPolicy);
- map->insert(prefix + QLatin1String(autoSpacesForTabsKey), m_tabPolicy == MixedTabPolicy);
- map->insert(prefix + QLatin1String(tabSizeKey), m_tabSize);
- map->insert(prefix + QLatin1String(indentSizeKey), m_indentSize);
- map->insert(prefix + QLatin1String(paddingModeKey), m_continuationAlignBehavior);
+ return {
+ {spacesForTabsKey, m_tabPolicy != TabsOnlyTabPolicy},
+ {autoSpacesForTabsKey, m_tabPolicy == MixedTabPolicy},
+ {tabSizeKey, m_tabSize},
+ {indentSizeKey, m_indentSize},
+ {paddingModeKey, m_continuationAlignBehavior}
+ };
}
-void TabSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void TabSettings::fromMap(const QVariantMap &map)
{
- const bool spacesForTabs =
- map.value(prefix + QLatin1String(spacesForTabsKey), true).toBool();
- const bool autoSpacesForTabs =
- map.value(prefix + QLatin1String(autoSpacesForTabsKey), false).toBool();
+ const bool spacesForTabs = map.value(spacesForTabsKey, true).toBool();
+ const bool autoSpacesForTabs = map.value(autoSpacesForTabsKey, false).toBool();
m_tabPolicy = spacesForTabs ? (autoSpacesForTabs ? MixedTabPolicy : SpacesOnlyTabPolicy) : TabsOnlyTabPolicy;
- m_tabSize = map.value(prefix + QLatin1String(tabSizeKey), m_tabSize).toInt();
- m_indentSize = map.value(prefix + QLatin1String(indentSizeKey), m_indentSize).toInt();
+ m_tabSize = map.value(tabSizeKey, m_tabSize).toInt();
+ m_indentSize = map.value(indentSizeKey, m_indentSize).toInt();
m_continuationAlignBehavior = (ContinuationAlignBehavior)
- map.value(prefix + QLatin1String(paddingModeKey), m_continuationAlignBehavior).toInt();
+ map.value(paddingModeKey, m_continuationAlignBehavior).toInt();
}
bool TabSettings::cursorIsAtBeginningOfLine(const QTextCursor &cursor)
diff --git a/src/plugins/texteditor/tabsettings.h b/src/plugins/texteditor/tabsettings.h
index c6446046a8..731dd75caf 100644
--- a/src/plugins/texteditor/tabsettings.h
+++ b/src/plugins/texteditor/tabsettings.h
@@ -59,10 +59,10 @@ public:
int indentSize, ContinuationAlignBehavior continuationAlignBehavior);
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
int lineIndentPosition(const QString &text) const;
int columnAt(const QString &text, int position) const;
diff --git a/src/plugins/texteditor/typingsettings.cpp b/src/plugins/texteditor/typingsettings.cpp
index ef56d94e58..83224008fc 100644
--- a/src/plugins/texteditor/typingsettings.cpp
+++ b/src/plugins/texteditor/typingsettings.cpp
@@ -51,34 +51,30 @@ void TypingSettings::toSettings(const QString &category, QSettings *s) const
Utils::toSettings(QLatin1String(groupPostfix), category, s, this);
}
-void TypingSettings::fromSettings(const QString &category, const QSettings *s)
+void TypingSettings::fromSettings(const QString &category, QSettings *s)
{
*this = TypingSettings(); // Assign defaults
Utils::fromSettings(QLatin1String(groupPostfix), category, s, this);
}
-void TypingSettings::toMap(const QString &prefix, QVariantMap *map) const
+QVariantMap TypingSettings::toMap() const
{
- map->insert(prefix + QLatin1String(autoIndentKey), m_autoIndent);
- map->insert(prefix + QLatin1String(tabKeyBehaviorKey), m_tabKeyBehavior);
- map->insert(prefix + QLatin1String(smartBackspaceBehaviorKey), m_smartBackspaceBehavior);
-
- map->insert(prefix + QLatin1String(preferSingleLineCommentsKey), m_preferSingleLineComments);
+ return {
+ {autoIndentKey, m_autoIndent},
+ {tabKeyBehaviorKey, m_tabKeyBehavior},
+ {smartBackspaceBehaviorKey, m_smartBackspaceBehavior},
+ {preferSingleLineCommentsKey, m_preferSingleLineComments}
+ };
}
-void TypingSettings::fromMap(const QString &prefix, const QVariantMap &map)
+void TypingSettings::fromMap(const QVariantMap &map)
{
- m_autoIndent =
- map.value(prefix + QLatin1String(autoIndentKey), m_autoIndent).toBool();
- m_tabKeyBehavior = (TabKeyBehavior)
- map.value(prefix + QLatin1String(tabKeyBehaviorKey), m_tabKeyBehavior).toInt();
- m_smartBackspaceBehavior = (SmartBackspaceBehavior)
- map.value(prefix + QLatin1String(smartBackspaceBehaviorKey),
- m_smartBackspaceBehavior).toInt();
-
+ m_autoIndent = map.value(autoIndentKey, m_autoIndent).toBool();
+ m_tabKeyBehavior = (TabKeyBehavior) map.value(tabKeyBehaviorKey, m_tabKeyBehavior).toInt();
+ m_smartBackspaceBehavior = (SmartBackspaceBehavior)map.value(
+ smartBackspaceBehaviorKey, m_smartBackspaceBehavior).toInt();
m_preferSingleLineComments =
- map.value(prefix + QLatin1String(preferSingleLineCommentsKey), m_preferSingleLineComments).toBool();
-
+ map.value(preferSingleLineCommentsKey, m_preferSingleLineComments).toBool();
}
bool TypingSettings::equals(const TypingSettings &ts) const
diff --git a/src/plugins/texteditor/typingsettings.h b/src/plugins/texteditor/typingsettings.h
index 5f71d84d20..39254b14a8 100644
--- a/src/plugins/texteditor/typingsettings.h
+++ b/src/plugins/texteditor/typingsettings.h
@@ -59,10 +59,10 @@ public:
bool tabShouldIndent(const QTextDocument *document, const QTextCursor &cursor, int *suggestedPosition) const;
void toSettings(const QString &category, QSettings *s) const;
- void fromSettings(const QString &category, const QSettings *s);
+ void fromSettings(const QString &category, QSettings *s);
- void toMap(const QString &prefix, QVariantMap *map) const;
- void fromMap(const QString &prefix, const QVariantMap &map);
+ QVariantMap toMap() const;
+ void fromMap(const QVariantMap &map);
bool equals(const TypingSettings &ts) const;