aboutsummaryrefslogtreecommitdiff
path: root/common/config-manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'common/config-manager.cpp')
-rw-r--r--common/config-manager.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/common/config-manager.cpp b/common/config-manager.cpp
index 24c877a4e9..fdd0c6f033 100644
--- a/common/config-manager.cpp
+++ b/common/config-manager.cpp
@@ -45,6 +45,10 @@ char const *const ConfigManager::kTransientDomain = "__TRANSIENT";
char const *const ConfigManager::kKeymapperDomain = "keymapper";
#endif
+#ifdef USE_CLOUD
+char const *const ConfigManager::kCloudDomain = "cloud";
+#endif
+
#pragma mark -
@@ -67,6 +71,9 @@ void ConfigManager::copyFrom(ConfigManager &source) {
#ifdef ENABLE_KEYMAPPER
_keymapperDomain = source._keymapperDomain;
#endif
+#ifdef USE_CLOUD
+ _cloudDomain = source._cloudDomain;
+#endif
_domainSaveOrder = source._domainSaveOrder;
_activeDomainName = source._activeDomainName;
_activeDomain = &_gameDomains[_activeDomainName];
@@ -121,6 +128,10 @@ void ConfigManager::addDomain(const String &domainName, const ConfigManager::Dom
} else if (domainName == kKeymapperDomain) {
_keymapperDomain = domain;
#endif
+#ifdef USE_CLOUD
+ } else if (domainName == kCloudDomain) {
+ _cloudDomain = domain;
+#endif
} else if (domain.contains("gameid")) {
// If the domain contains "gameid" we assume it's a game domain
if (_gameDomains.contains(domainName))
@@ -160,6 +171,9 @@ void ConfigManager::loadFromStream(SeekableReadStream &stream) {
#ifdef ENABLE_KEYMAPPER
_keymapperDomain.clear();
#endif
+#ifdef USE_CLOUD
+ _cloudDomain.clear();
+#endif
// TODO: Detect if a domain occurs multiple times (or likewise, if
// a key occurs multiple times inside one domain).
@@ -272,6 +286,10 @@ void ConfigManager::flushToDisk() {
// Write the keymapper domain
writeDomain(*stream, kKeymapperDomain, _keymapperDomain);
#endif
+#ifdef USE_CLOUD
+ // Write the cloud domain
+ writeDomain(*stream, kCloudDomain, _cloudDomain);
+#endif
DomainMap::const_iterator d;
@@ -359,6 +377,10 @@ const ConfigManager::Domain *ConfigManager::getDomain(const String &domName) con
if (domName == kKeymapperDomain)
return &_keymapperDomain;
#endif
+#ifdef USE_CLOUD
+ if (domName == kCloudDomain)
+ return &_cloudDomain;
+#endif
if (_gameDomains.contains(domName))
return &_gameDomains[domName];
if (_miscDomains.contains(domName))
@@ -379,6 +401,10 @@ ConfigManager::Domain *ConfigManager::getDomain(const String &domName) {
if (domName == kKeymapperDomain)
return &_keymapperDomain;
#endif
+#ifdef USE_CLOUD
+ if (domName == kCloudDomain)
+ return &_cloudDomain;
+#endif
if (_gameDomains.contains(domName))
return &_gameDomains[domName];
if (_miscDomains.contains(domName))