ClangTools: Add automatic clang tool runner for open documents

Fixes: QTCREATORBUG-23349
Change-Id: I81197180c9d69c7df6184f8fcbf05f2256eaf7f6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
David Schulz
2020-07-22 14:52:06 +02:00
parent 7f562c4d33
commit e176958da1
24 changed files with 781 additions and 79 deletions

View File

@@ -48,6 +48,8 @@ ClangToolsProjectSettings::ClangToolsProjectSettings(ProjectExplorer::Project *p
: m_project(project)
{
load();
connect(this, &ClangToolsProjectSettings::suppressedDiagnosticsChanged,
this, &ClangToolsProjectSettings::changed);
connect(project, &ProjectExplorer::Project::settingsLoaded,
this, &ClangToolsProjectSettings::load);
connect(project, &ProjectExplorer::Project::aboutToSaveSettings, this,
@@ -59,6 +61,38 @@ ClangToolsProjectSettings::~ClangToolsProjectSettings()
store();
}
void ClangToolsProjectSettings::setUseGlobalSettings(bool useGlobalSettings)
{
if (m_useGlobalSettings == useGlobalSettings)
return;
m_useGlobalSettings = useGlobalSettings;
emit changed();
}
void ClangToolsProjectSettings::setRunSettings(const RunSettings &settings)
{
if (m_runSettings == settings)
return;
m_runSettings = settings;
emit changed();
}
void ClangToolsProjectSettings::setSelectedDirs(const QSet<Utils::FilePath> &value)
{
if (m_selectedDirs == value)
return;
m_selectedDirs = value;
emit changed();
}
void ClangToolsProjectSettings::setSelectedFiles(const QSet<Utils::FilePath> &value)
{
if (m_selectedFiles == value)
return;
m_selectedFiles = value;
emit changed();
}
void ClangToolsProjectSettings::addSuppressedDiagnostic(const SuppressedDiagnostic &diag)
{
QTC_ASSERT(!m_suppressedDiagnostics.contains(diag), return);