summaryrefslogtreecommitdiff
path: root/src/plugins/analyzerbase/analyzerrunconfigwidget.h
diff options
context:
space:
mode:
authorNicolas Arnaud-Cormos <nicolas@kdab.com>2011-12-27 22:41:31 +0100
committerhjk <qthjk@ovi.com>2011-12-28 18:25:56 +0100
commit4a8432112aacfb5ee25b5514c35d16e657eb2c8d (patch)
tree881a684a150a2bcbf14bf6f75a1248e186e6300d /src/plugins/analyzerbase/analyzerrunconfigwidget.h
parent26ae954fae7d112fd26f39fc5fdde25f3add2674 (diff)
downloadqt-creator-4a8432112aacfb5ee25b5514c35d16e657eb2c8d.tar.gz
Analyzer: create a run control factory for all tools.
Having one factory per tool (or plugin) created some bugs: * analyzer project settings being created twice * per-project analyzer settings widget duplicated Also, most of the code from the run control factory were copied. Now, the Analyzer only creates one run control factory shared among all tools, and the IAnalyzerTool has two new virtual method: canRun and createStartParameters. It simplify the code a bit, and creating a new analyzer tool is easier (only two classes to subclass: IAnalyzerTool and IAnalyzerEngine). Change-Id: I4e180846a26b74b2b77cb99bc97534d680a80a4d Reviewed-by: hjk <qthjk@ovi.com>
Diffstat (limited to 'src/plugins/analyzerbase/analyzerrunconfigwidget.h')
-rw-r--r--src/plugins/analyzerbase/analyzerrunconfigwidget.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/plugins/analyzerbase/analyzerrunconfigwidget.h b/src/plugins/analyzerbase/analyzerrunconfigwidget.h
index 9d4469f8f9..66d17b1065 100644
--- a/src/plugins/analyzerbase/analyzerrunconfigwidget.h
+++ b/src/plugins/analyzerbase/analyzerrunconfigwidget.h
@@ -35,11 +35,12 @@
#ifndef ANALYZER_INTERNAL_ANALYZERRUNCONFIGWIDGET_H
#define ANALYZER_INTERNAL_ANALYZERRUNCONFIGWIDGET_H
-#include "analyzerbase_global.h"
#include "analyzersettings.h"
#include <projectexplorer/runconfiguration.h>
+#include <utils/detailswidget.h>
+
QT_BEGIN_NAMESPACE
class QComboBox;
class QPushButton;
@@ -52,8 +53,19 @@ class DetailsWidget;
namespace Analyzer {
class AnalyzerSettings;
+class AbstractAnalyzerSubConfig;
+
+namespace Internal {
+
+class AnalyzerToolDetailWidget : public Utils::DetailsWidget
+{
+ Q_OBJECT
-class ANALYZER_EXPORT AnalyzerRunConfigWidget : public ProjectExplorer::RunConfigWidget
+public:
+ explicit AnalyzerToolDetailWidget(AbstractAnalyzerSubConfig *config, QWidget *parent=0);
+};
+
+class AnalyzerRunConfigWidget : public ProjectExplorer::RunConfigWidget
{
Q_OBJECT
@@ -64,18 +76,21 @@ public:
void setRunConfiguration(ProjectExplorer::RunConfiguration *rc);
+private:
+ void setDetailEnabled(bool value);
+
private slots:
void chooseSettings(int setting);
void restoreGlobal();
private:
- Utils::DetailsWidget *m_detailsWidget;
QWidget *m_subConfigWidget;
AnalyzerProjectSettings *m_settings;
QComboBox *m_settingsCombo;
QPushButton *m_restoreButton;
};
+} // namespace Internal
} // namespace Analyzer
#endif // ANALYZER_INTERNAL_ANALYZERRUNCONFIGWIDGET_H