diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2009-09-28 19:09:22 +0200 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2009-09-28 19:09:22 +0200 |
commit | 86e5f80837ad55932f2469d79d9e6b6bb07cf5ed (patch) | |
tree | 818ab757a8ae964751190daad5a7fd2cd8f21a04 /src/Common/ModuleManager.cpp | |
parent | a7a285eb61dd83afc892bc1d64ffe14b9f1426a3 (diff) | |
download | mad-86e5f80837ad55932f2469d79d9e6b6bb07cf5ed.tar mad-86e5f80837ad55932f2469d79d9e6b6bb07cf5ed.zip |
Implemented new ConfigManager
Diffstat (limited to 'src/Common/ModuleManager.cpp')
-rw-r--r-- | src/Common/ModuleManager.cpp | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/Common/ModuleManager.cpp b/src/Common/ModuleManager.cpp index be25f9e..c119eab 100644 --- a/src/Common/ModuleManager.cpp +++ b/src/Common/ModuleManager.cpp @@ -58,18 +58,12 @@ ModuleManager::~ModuleManager() { } } -bool ModuleManager::handleConfigEntry(const Core::ConfigEntry &entry, bool handled) { - if(handled) - return false; - - if(entry[0].getKey().matches("LoadModule") && entry[1].isEmpty()) { - if(!loadModule(entry[0][0].toLocale())) - application->logf(Core::Logger::LOG_ERROR, "Can't load module '%s'.", entry[0][0].toLocale().c_str()); - - return true; +void ModuleManager::configure() { + std::vector<const Core::ConfigEntry*> entries = application->getConfigManager()->getEntries("LoadModule"); + for(std::vector<const Core::ConfigEntry*>::iterator entry = entries.begin(); entry != entries.end(); ++entry) { + if(!loadModule((*entry)->getValue().toLocale())) + application->logf(Core::Logger::LOG_ERROR, "Can't load module '%s'.", (*entry)->getValue().toLocale().c_str()); } - - return false; } bool ModuleManager::loadModule(const std::string &name) { |