CppEditor: Move some convenience functions to CppCodeModelSettings class

Change-Id: I0af8560c23374ce4f6c46f98d498d44f7cb50db3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2024-02-26 16:34:32 +01:00
parent db4aa77237
commit 1de045f687
16 changed files with 66 additions and 67 deletions

View File

@@ -418,7 +418,8 @@ ClangdClient::ClangdClient(Project *project, const Utils::FilePath &jsonDbDir, c
CppEditor::CompilerOptionsBuilder optionsBuilder = clangOptionsBuilder(
*CppEditor::CppModelManager::fallbackProjectPart(),
warningsConfigForProject(nullptr), includeDir, {});
const CppEditor::UsePrecompiledHeaders usePch = CppEditor::getPchUsage();
const CppEditor::UsePrecompiledHeaders usePch
= CppEditor::CppCodeModelSettings::instance().usePrecompiledHeaders();
const QJsonArray projectPartOptions = fullProjectPartOptions(
optionsBuilder, globalClangOptions());
const QJsonArray clangOptions = clangOptionsForFile({}, optionsBuilder.projectPart(),
@@ -599,7 +600,7 @@ void ClangdClient::findUsages(const CppEditor::CursorInEditor &cursor,
}
}
const bool categorize = CppEditor::codeModelSettings()->categorizeFindReferences();
const bool categorize = CppEditor::CppCodeModelSettings::instance().categorizeFindReferences();
// If it's a "normal" symbol, go right ahead.
if (searchTerm != "operator" && Utils::allOf(searchTerm, [](const QChar &c) {
@@ -919,8 +920,13 @@ void ClangdClient::updateParserConfig(const Utils::FilePath &filePath,
CppEditor::ProjectFile::classify(filePath.toString()));
const QJsonArray projectPartOptions = fullProjectPartOptions(
optionsBuilder, globalClangOptions());
addToCompilationDb(cdbChanges, *projectPart, CppEditor::getPchUsage(), projectPartOptions,
filePath.parentDir(), file, optionsBuilder.isClStyle());
addToCompilationDb(cdbChanges,
*projectPart,
CppEditor::CppCodeModelSettings::instance().usePrecompiledHeaders(),
projectPartOptions,
filePath.parentDir(),
file,
optionsBuilder.isClStyle());
QJsonObject settings;
addCompilationDb(settings, cdbChanges);
DidChangeConfigurationParams configChangeParams;

View File

@@ -166,7 +166,7 @@ GenerateCompilationDbResult generateCompilationDB(QList<ProjectInfo::ConstPtr> p
}
compileCommandsFile.write("[");
const UsePrecompiledHeaders usePch = getPchUsage();
const UsePrecompiledHeaders usePch = CppCodeModelSettings::instance().usePrecompiledHeaders();
const QJsonArray jsonProjectOptions = QJsonArray::fromStringList(projectOptions);
for (const ProjectInfo::ConstPtr &projectInfo : std::as_const(projectInfoList)) {
QTC_ASSERT(projectInfo, continue);

View File

@@ -249,7 +249,7 @@ private:
void ClangdTestFindReferences::initTestCase()
{
ClangdTest::initTestCase();
CppEditor::codeModelSettings()->setCategorizeFindReferences(true);
CppEditor::CppCodeModelSettings::instance().setCategorizeFindReferences(true);
connect(client(), &ClangdClient::foundReferences, this,
[this](const SearchResultItems &results) {
if (results.isEmpty())