diff options
Diffstat (limited to 'src/Core/ConfigManager.h')
-rw-r--r-- | src/Core/ConfigManager.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/Core/ConfigManager.h b/src/Core/ConfigManager.h index 2d49a97..d7d7d01 100644 --- a/src/Core/ConfigManager.h +++ b/src/Core/ConfigManager.h @@ -27,6 +27,7 @@ namespace Mad { namespace Core { +class Application; class ConfigEntry; class Configurable; @@ -36,13 +37,14 @@ class ConfigManager { bool operator() (const Configurable *c1, const Configurable *c2); }; - static ConfigManager configManager; + friend class Application; + + Application *application; std::set<Configurable*, Compare> configurables; bool finished; - ConfigManager(); - ~ConfigManager(); + ConfigManager(Application *application0) : application(application0), finished(false) {} void handleConfigEntry(const ConfigEntry &entry); @@ -57,10 +59,6 @@ class ConfigManager { void unregisterConfigurable(Configurable *c) { configurables.erase(c); } - - static ConfigManager *get() { - return &configManager; - } }; } |