forked from qt-creator/qt-creator
Clang/ClangTools: Separate custom diagnostic configs
Add a separate pool of custom diagnostic configs for the ClangTools plugin. That is, the diagnostic configs in Menu: Tools > C++ > Code Model are not shared anymore with the configs at Menu: Tools > Analyzer > ClangTools On plugin initialization of ClangTools, move tidy/clazy related configs to ClangTools. Change-Id: Id06087a58b53e466a3d7bbac669550c5fbe9899d Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
This commit is contained in:
@@ -26,7 +26,9 @@
|
||||
#pragma once
|
||||
|
||||
#include <coreplugin/id.h>
|
||||
#include <cpptools/clangdiagnosticconfig.h>
|
||||
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
|
||||
namespace ClangTools {
|
||||
@@ -44,6 +46,7 @@ public:
|
||||
|
||||
Core::Id diagnosticConfigId() const { return m_diagnosticConfigId; }
|
||||
void setDiagnosticConfigId(const Core::Id &id) { m_diagnosticConfigId = id; }
|
||||
void resetDiagnosticConfigId();
|
||||
|
||||
bool buildBeforeAnalysis() const { return m_buildBeforeAnalysis; }
|
||||
void setBuildBeforeAnalysis(bool yesno) { m_buildBeforeAnalysis = yesno; }
|
||||
@@ -52,13 +55,15 @@ public:
|
||||
void setParallelJobs(int jobs) { m_parallelJobs = jobs; }
|
||||
|
||||
private:
|
||||
Core::Id m_diagnosticConfigId = "Builtin.TidyAndClazy"; // TODO
|
||||
Core::Id m_diagnosticConfigId;
|
||||
int m_parallelJobs = -1;
|
||||
bool m_buildBeforeAnalysis = true;
|
||||
};
|
||||
|
||||
class ClangToolsSettings
|
||||
class ClangToolsSettings : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
static ClangToolsSettings *instance();
|
||||
void writeSettings();
|
||||
@@ -69,9 +74,16 @@ public:
|
||||
QString clazyStandaloneExecutable() const { return m_clazyStandaloneExecutable; }
|
||||
void setClazyStandaloneExecutable(const QString &path) { m_clazyStandaloneExecutable = path; }
|
||||
|
||||
CppTools::ClangDiagnosticConfigs diagnosticConfigs() const { return m_diagnosticConfigs; }
|
||||
void setDiagnosticConfigs(const CppTools::ClangDiagnosticConfigs &configs)
|
||||
{ m_diagnosticConfigs = configs; }
|
||||
|
||||
RunSettings runSettings() const { return m_runSettings; }
|
||||
void setRunSettings(const RunSettings &settings) { m_runSettings = settings; }
|
||||
|
||||
signals:
|
||||
void changed();
|
||||
|
||||
private:
|
||||
ClangToolsSettings();
|
||||
void readSettings();
|
||||
@@ -80,6 +92,9 @@ private:
|
||||
QString m_clangTidyExecutable;
|
||||
QString m_clazyStandaloneExecutable;
|
||||
|
||||
// Diagnostic Configs
|
||||
CppTools::ClangDiagnosticConfigs m_diagnosticConfigs;
|
||||
|
||||
// Run settings
|
||||
RunSettings m_runSettings;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user