ClangTools: Split generic part from static analyzer tool

To reuse it for other clang-based tools.

Change-Id: I6c0d8e9eee543fa08faf3bf93c9fac33e43c6820
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Ivan Donchevskii
2018-01-17 15:08:30 +01:00
parent 8936e51033
commit e9c462391e
50 changed files with 1271 additions and 814 deletions

View File

@@ -26,7 +26,7 @@
#include "clangtoolsplugin.h"
#include "clangstaticanalyzerconfigwidget.h"
#include "clangstaticanalyzerconstants.h"
#include "clangtoolsconstants.h"
#include "clangstaticanalyzerprojectsettingswidget.h"
#include "clangstaticanalyzerruncontrol.h"
#include "clangstaticanalyzertool.h"
@@ -80,13 +80,13 @@ public:
QWidget *widget()
{
if (!m_widget)
m_widget = new ClangStaticAnalyzerConfigWidget(ClangStaticAnalyzerSettings::instance());
m_widget = new ClangStaticAnalyzerConfigWidget(ClangToolsSettings::instance());
return m_widget;
}
void apply()
{
ClangStaticAnalyzerSettings::instance()->writeSettings();
ClangToolsSettings::instance()->writeSettings();
}
void finish()
@@ -101,7 +101,7 @@ private:
class ClangToolsPluginPrivate
{
public:
ClangStaticAnalyzerTool tool;
ClangStaticAnalyzerTool staticAnalyzerTool;
ClangStaticAnalyzerOptionsPage optionsPage;
};
@@ -119,7 +119,7 @@ bool ClangToolsPlugin::initialize(const QStringList &arguments, QString *errorSt
auto panelFactory = new ProjectPanelFactory();
panelFactory->setPriority(100);
panelFactory->setDisplayName(tr("Clang Static Analyzer"));
panelFactory->setDisplayName(tr("Clang Tools"));
panelFactory->setCreateWidgetFunction([](Project *project) { return new ProjectSettingsWidget(project); });
ProjectPanelFactory::registerFactory(panelFactory);