diff options
author | hjk <[email protected]> | 2011-05-18 19:35:42 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2011-05-18 20:14:16 +0200 |
commit | 77f8f9483630f1f4262038d8e559ccfb904277bf (patch) | |
tree | 636cc1cd5ea6e1cb11d6644d2589227aa6de350b /src/plugins/analyzerbase/analyzersettings.cpp | |
parent | 68504ab8a8b9c1084b9ece8081af921ca2a7f865 (diff) |
analyzer: simplify AnalyzerSubConfigFactory setup
Diffstat (limited to 'src/plugins/analyzerbase/analyzersettings.cpp')
-rw-r--r-- | src/plugins/analyzerbase/analyzersettings.cpp | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/src/plugins/analyzerbase/analyzersettings.cpp b/src/plugins/analyzerbase/analyzersettings.cpp index 8d62b943615..fa00ab55d06 100644 --- a/src/plugins/analyzerbase/analyzersettings.cpp +++ b/src/plugins/analyzerbase/analyzersettings.cpp @@ -53,11 +53,6 @@ namespace Analyzer { AnalyzerGlobalSettings *AnalyzerGlobalSettings::m_instance = 0; -AbstractAnalyzerSubConfig::AbstractAnalyzerSubConfig(QObject *parent) - : QObject(parent) -{ -} - AnalyzerSettings::AnalyzerSettings(QObject *parent) : QObject(parent) { @@ -107,7 +102,6 @@ AnalyzerGlobalSettings *AnalyzerGlobalSettings::instance() AnalyzerGlobalSettings::~AnalyzerGlobalSettings() { - qDeleteAll(m_subConfigFactories); m_instance = 0; } @@ -138,29 +132,29 @@ void AnalyzerGlobalSettings::writeSettings() const settings->endGroup(); } -void AnalyzerGlobalSettings::registerSubConfigFactory(AbstractAnalyzerSubConfigFactory *factory) +void AnalyzerGlobalSettings::registerSubConfigs + (AnalyzerSubConfigFactory globalCreator, AnalyzerSubConfigFactory projectCreator) { - m_subConfigFactories << factory; + m_projectSubConfigs.append(projectCreator); - AbstractAnalyzerSubConfig *config = factory->createGlobalSubConfig(this); - addSubConfig(config); + AbstractAnalyzerSubConfig *config = globalCreator(); + config->setParent(this); AnalyzerPlugin::instance()->addAutoReleasedObject(new AnalyzerOptionsPage(config)); readSettings(); } -QList<AbstractAnalyzerSubConfigFactory *> AnalyzerGlobalSettings::subConfigFactories() const +QList<AnalyzerSubConfigFactory> AnalyzerGlobalSettings::projectSubConfigs() const { - return m_subConfigFactories; + return m_projectSubConfigs; } AnalyzerProjectSettings::AnalyzerProjectSettings(QObject *parent) -: AnalyzerSettings(parent) + : AnalyzerSettings(parent) { // add sub configs - foreach (AbstractAnalyzerSubConfigFactory *factory, AnalyzerGlobalSettings::instance()->subConfigFactories()) { - addSubConfig(factory->createProjectSubConfig(parent)); - } + foreach (AnalyzerSubConfigFactory factory, AnalyzerGlobalSettings::instance()->projectSubConfigs()) + factory()->setParent(this); // take defaults from global settings AnalyzerGlobalSettings *gs = AnalyzerGlobalSettings::instance(); |