MCPcopy Create free account
hub / github.com/ModOrganizer2/modorganizer / setSettings

Method setSettings

src/settings.cpp:1444–1471  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1442}
1443
1444void PluginSettings::setSettings(const QString& pluginName, const QVariantMap& map)
1445{
1446 auto iterPlugin = m_PluginSettings.find(pluginName);
1447
1448 if (iterPlugin == m_PluginSettings.end()) {
1449 throw MyException(QObject::tr("attempt to store setting for unknown plugin \"%1\"")
1450 .arg(pluginName));
1451 }
1452
1453 QVariantMap oldSettings = m_PluginSettings[pluginName];
1454 m_PluginSettings[pluginName] = map;
1455
1456 // Emit signals for settings that have been changed or added:
1457 for (auto& k : map.keys()) {
1458 // .value() return a default-constructed QVariant if k is not in oldSettings:
1459 QVariant oldValue = oldSettings.value(k);
1460 if (oldValue != map[k]) {
1461 emit pluginSettingChanged(pluginName, k, oldSettings.value(k), map[k]);
1462 }
1463 }
1464
1465 // Emit signals for settings that have been removed:
1466 for (auto& k : oldSettings.keys()) {
1467 if (!map.contains(k)) {
1468 emit pluginSettingChanged(pluginName, k, oldSettings[k], QVariant());
1469 }
1470 }
1471}
1472
1473QVariantMap PluginSettings::descriptions(const QString& pluginName) const
1474{

Callers 1

updateMethod · 0.80

Calls 4

keysMethod · 0.80
findMethod · 0.45
endMethod · 0.45
valueMethod · 0.45

Tested by

no test coverage detected