Move clang diagnostics config settings to clangd settings page

It was confusing to have both "Clang Code Model" and "clangd" project
settings pages, so we merge them.
Along the way, a lot of code dropped off.

Change-Id: I780850b716195c3729403ae59f0794c11b5c556d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2022-05-19 14:48:09 +02:00
parent c117e3d3c9
commit 760cf632af
26 changed files with 145 additions and 1005 deletions

View File

@@ -25,13 +25,12 @@
#include "clangutils.h"
#include "clangeditordocumentprocessor.h"
#include "clangmodelmanagersupport.h"
#include "clangprojectsettings.h"
#include <coreplugin/icore.h>
#include <coreplugin/idocument.h>
#include <cppeditor/baseeditordocumentparser.h>
#include <cppeditor/clangdiagnosticconfigsmodel.h>
#include <cppeditor/compileroptionsbuilder.h>
#include <cppeditor/cppcodemodelsettings.h>
#include <cppeditor/cppmodelmanager.h>
@@ -276,14 +275,6 @@ QString DiagnosticTextInfo::clazyCheckName(const QString &option)
}
namespace {
static ClangProjectSettings &getProjectSettings(ProjectExplorer::Project *project)
{
QTC_CHECK(project);
return ClangModelManagerSupport::instance()->projectSettings(project);
}
} // namespace
QJsonArray clangOptionsForFile(const ProjectFile &file, const ProjectPart &projectPart,
const QJsonArray &generalOptions, UsePrecompiledHeaders usePch)
{
@@ -308,30 +299,12 @@ QJsonArray clangOptionsForFile(const ProjectFile &file, const ProjectPart &proje
ClangDiagnosticConfig warningsConfigForProject(Project *project)
{
if (project) {
ClangProjectSettings &projectSettings = ClangModelManagerSupport::instance()
->projectSettings(project);
if (!projectSettings.useGlobalConfig()) {
const Utils::Id warningConfigId = projectSettings.warningConfigId();
const CppEditor::ClangDiagnosticConfigsModel configsModel
= CppEditor::diagnosticConfigsModel();
if (configsModel.hasConfigWithId(warningConfigId))
return configsModel.configWithId(warningConfigId);
}
}
return CppEditor::codeModelSettings()->clangDiagnosticConfig();
return ClangdSettings(ClangdProjectSettings(project).settings()).diagnosticConfig();
}
const QStringList optionsForProject(ProjectExplorer::Project *project,
const ClangDiagnosticConfig &warningsConfig)
const QStringList globalClangOptions()
{
QStringList options = ClangDiagnosticConfigsModel::globalDiagnosticOptions();
if (!warningsConfig.useBuildSystemWarnings()) {
options += project
? getProjectSettings(project).commandLineOptions()
: ClangProjectSettings::globalCommandLineOptions();
}
return options;
return ClangDiagnosticConfigsModel::globalDiagnosticOptions();
}
// 7.3.3: using typename(opt) nested-name-specifier unqualified-id ;