diff options
author | hjk <hjk@qt.io> | 2023-02-14 15:47:22 +0100 |
---|---|---|
committer | hjk <hjk@qt.io> | 2023-03-01 09:26:50 +0000 |
commit | 3e7d93c788773c7f8194a5465ee0f46961432d76 (patch) | |
tree | 115ed460e95c7c4043e71b37372f1e62b89834c5 /src/plugins/cppeditor | |
parent | 03e1c18f78c1103e149d7daee76ec070c8b001cf (diff) | |
download | qt-creator-3e7d93c788773c7f8194a5465ee0f46961432d76.tar.gz |
ProjectExplorer: Move some not-fully-session related bits
... out of SessionManager.
The idea is to later move SessionManager into the Core plugin,
which both is sensible conceptually and also prerequisite to
merge the Bookmark plugin into TextEditor plugin.
Currently, only the interface is split, as the load/save
implemetations are non-mechanical to disentangle.
Change-Id: I31631db3094ea192825a2ccaa6add6188662940b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Diffstat (limited to 'src/plugins/cppeditor')
-rw-r--r-- | src/plugins/cppeditor/baseeditordocumentprocessor.cpp | 5 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppcodemodelsettings.cpp | 1 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppeditorwidget.cpp | 6 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppfindreferences.cpp | 14 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppincludesfilter.cpp | 8 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppmodelmanager.cpp | 15 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppmodelmanager_test.cpp | 2 | ||||
-rw-r--r-- | src/plugins/cppeditor/cppquickfixes.cpp | 4 | ||||
-rw-r--r-- | src/plugins/cppeditor/cpptoolsjsextension.cpp | 5 | ||||
-rw-r--r-- | src/plugins/cppeditor/cpptoolsreuse.cpp | 9 | ||||
-rw-r--r-- | src/plugins/cppeditor/cpptoolstestcase.cpp | 8 | ||||
-rw-r--r-- | src/plugins/cppeditor/generatedcodemodelsupport.cpp | 2 | ||||
-rw-r--r-- | src/plugins/cppeditor/modelmanagertesthelper.cpp | 6 | ||||
-rw-r--r-- | src/plugins/cppeditor/symbolsfindfilter.cpp | 5 |
14 files changed, 52 insertions, 38 deletions
diff --git a/src/plugins/cppeditor/baseeditordocumentprocessor.cpp b/src/plugins/cppeditor/baseeditordocumentprocessor.cpp index ca344aa6c7..98784a1fb9 100644 --- a/src/plugins/cppeditor/baseeditordocumentprocessor.cpp +++ b/src/plugins/cppeditor/baseeditordocumentprocessor.cpp @@ -8,7 +8,8 @@ #include "cpptoolsreuse.h" #include "editordocumenthandle.h" -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> + #include <texteditor/quickfix.h> namespace CppEditor { @@ -37,7 +38,7 @@ void BaseEditorDocumentProcessor::run(bool projectsUpdated) : Utils::Language::Cxx; runImpl({CppModelManager::instance()->workingCopy(), - ProjectExplorer::SessionManager::startupProject(), + ProjectExplorer::ProjectManager::startupProject(), languagePreference, projectsUpdated}); } diff --git a/src/plugins/cppeditor/cppcodemodelsettings.cpp b/src/plugins/cppeditor/cppcodemodelsettings.cpp index e4b567b732..b871010a0a 100644 --- a/src/plugins/cppeditor/cppcodemodelsettings.cpp +++ b/src/plugins/cppeditor/cppcodemodelsettings.cpp @@ -9,6 +9,7 @@ #include "cpptoolsreuse.h" #include <coreplugin/icore.h> + #include <projectexplorer/project.h> #include <projectexplorer/session.h> diff --git a/src/plugins/cppeditor/cppeditorwidget.cpp b/src/plugins/cppeditor/cppeditorwidget.cpp index 20fe8e6254..44f9e01a01 100644 --- a/src/plugins/cppeditor/cppeditorwidget.cpp +++ b/src/plugins/cppeditor/cppeditorwidget.cpp @@ -30,9 +30,9 @@ #include <projectexplorer/buildsystem.h> #include <projectexplorer/extracompiler.h> +#include <projectexplorer/projectmanager.h> #include <projectexplorer/projectnodes.h> #include <projectexplorer/projecttree.h> -#include <projectexplorer/session.h> #include <projectexplorer/target.h> #include <texteditor/basefilefind.h> @@ -755,7 +755,7 @@ void CppEditorWidget::showRenameWarningIfFileIsGenerated(const Utils::FilePath & { if (filePath.isEmpty()) return; - for (const Project * const project : SessionManager::projects()) { + for (const Project * const project : ProjectManager::projects()) { const Node * const node = project->nodeForFilePath(filePath); if (!node) continue; @@ -989,7 +989,7 @@ void CppEditorWidget::findLinkAt(const QTextCursor &cursor, const QString fileName = filePath.fileName(); if (fileName.startsWith("ui_") && fileName.endsWith(".h")) { const QString uiFileName = fileName.mid(3, fileName.length() - 4) + "ui"; - for (const Project * const project : SessionManager::projects()) { + for (const Project * const project : ProjectManager::projects()) { const auto nodeMatcher = [uiFileName](Node *n) { return n->filePath().fileName() == uiFileName; }; diff --git a/src/plugins/cppeditor/cppfindreferences.cpp b/src/plugins/cppeditor/cppfindreferences.cpp index 940eb358e9..c553a5124b 100644 --- a/src/plugins/cppeditor/cppfindreferences.cpp +++ b/src/plugins/cppeditor/cppfindreferences.cpp @@ -10,14 +10,18 @@ #include "cpptoolsreuse.h" #include "cppworkingcopy.h" +#include <cplusplus/Overview.h> + #include <coreplugin/editormanager/editormanager.h> #include <coreplugin/icore.h> #include <coreplugin/progressmanager/futureprogress.h> #include <coreplugin/progressmanager/progressmanager.h> + #include <projectexplorer/projectexplorer.h> +#include <projectexplorer/projectmanager.h> #include <projectexplorer/projectnodes.h> #include <projectexplorer/projecttree.h> -#include <projectexplorer/session.h> + #include <texteditor/basefilefind.h> #include <utils/algorithm.h> @@ -25,10 +29,8 @@ #include <utils/runextensions.h> #include <utils/textfileformat.h> -#include <cplusplus/Overview.h> #include <QtConcurrentMap> #include <QCheckBox> -#include <QDir> #include <QFutureWatcher> #include <QVBoxLayout> @@ -577,7 +579,7 @@ static void displayResults(SearchResult *search, item.setStyle(colorStyleForUsageType(result.tags)); item.setUseTextEditorFont(true); if (search->supportsReplace()) - item.setSelectForReplacement(SessionManager::projectForFile(result.path)); + item.setSelectForReplacement(ProjectManager::projectForFile(result.path)); search->addResult(item); if (parameters.prettySymbolName.isEmpty()) @@ -586,7 +588,7 @@ static void displayResults(SearchResult *search, if (parameters.filesToRename.contains(result.path)) continue; - if (!SessionManager::projectForFile(result.path)) + if (!ProjectManager::projectForFile(result.path)) continue; if (result.path.baseName().compare(parameters.prettySymbolName, Qt::CaseInsensitive) == 0) @@ -766,7 +768,7 @@ void CppFindReferences::findMacroUses(const CPlusPlus::Macro ¯o, const QStri item.setMainRange(macro.line(), column, macro.nameToQString().length()); item.setUseTextEditorFont(true); if (search->supportsReplace()) - item.setSelectForReplacement(SessionManager::projectForFile(filePath)); + item.setSelectForReplacement(ProjectManager::projectForFile(filePath)); search->addResult(item); } diff --git a/src/plugins/cppeditor/cppincludesfilter.cpp b/src/plugins/cppeditor/cppincludesfilter.cpp index 9f637f6582..970e179fc0 100644 --- a/src/plugins/cppeditor/cppincludesfilter.cpp +++ b/src/plugins/cppeditor/cppincludesfilter.cpp @@ -7,11 +7,13 @@ #include "cppeditortr.h" #include "cppmodelmanager.h" -#include <cplusplus/CppDocument.h> #include <coreplugin/editormanager/documentmodel.h> + +#include <cplusplus/CppDocument.h> + #include <projectexplorer/project.h> #include <projectexplorer/projectexplorer.h> -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> using namespace Core; using namespace ProjectExplorer; @@ -128,7 +130,7 @@ void CppIncludesFilter::prepareSearch(const QString &entry) if (m_needsUpdate) { m_needsUpdate = false; QSet<FilePath> seedPaths; - for (Project *project : SessionManager::projects()) { + for (Project *project : ProjectManager::projects()) { const FilePaths allFiles = project->files(Project::SourceFiles); for (const FilePath &filePath : allFiles ) seedPaths.insert(filePath); diff --git a/src/plugins/cppeditor/cppmodelmanager.cpp b/src/plugins/cppeditor/cppmodelmanager.cpp index 373773786a..36d7088292 100644 --- a/src/plugins/cppeditor/cppmodelmanager.cpp +++ b/src/plugins/cppeditor/cppmodelmanager.cpp @@ -37,9 +37,11 @@ #include <coreplugin/progressmanager/futureprogress.h> #include <coreplugin/progressmanager/progressmanager.h> #include <coreplugin/vcsmanager.h> + #include <cplusplus/ASTPath.h> #include <cplusplus/ExpressionUnderCursor.h> #include <cplusplus/TypeOfExpression.h> + #include <extensionsystem/pluginmanager.h> #include <projectexplorer/buildconfiguration.h> @@ -49,6 +51,7 @@ #include <projectexplorer/project.h> #include <projectexplorer/projectexplorer.h> #include <projectexplorer/projectexplorerconstants.h> +#include <projectexplorer/projectmanager.h> #include <projectexplorer/projectmacro.h> #include <projectexplorer/projectnodes.h> #include <projectexplorer/projecttree.h> @@ -577,7 +580,7 @@ void CppModelManager::findUnusedFunctions(const FilePath &folder) if (link.hasValidTarget() && link.targetFilePath.isReadableFile() && (folder.isEmpty() || link.targetFilePath.isChildOf(folder)) - && SessionManager::projectForFile(link.targetFilePath)) { + && ProjectManager::projectForFile(link.targetFilePath)) { links << link; } } @@ -938,14 +941,14 @@ CppModelManager::CppModelManager() d->m_delayedGcTimer.setSingleShot(true); connect(&d->m_delayedGcTimer, &QTimer::timeout, this, &CppModelManager::GC); - auto sessionManager = SessionManager::instance(); - connect(sessionManager, &SessionManager::projectAdded, + auto projectManager = ProjectManager::instance(); + connect(projectManager, &ProjectManager::projectAdded, this, &CppModelManager::onProjectAdded); - connect(sessionManager, &SessionManager::aboutToRemoveProject, + connect(projectManager, &ProjectManager::aboutToRemoveProject, this, &CppModelManager::onAboutToRemoveProject); - connect(sessionManager, &SessionManager::aboutToLoadSession, + connect(SessionManager::instance(), &SessionManager::aboutToLoadSession, this, &CppModelManager::onAboutToLoadSession); - connect(sessionManager, &SessionManager::startupProjectChanged, + connect(projectManager, &ProjectManager::startupProjectChanged, this, &CppModelManager::onActiveProjectChanged); connect(EditorManager::instance(), &EditorManager::currentEditorChanged, diff --git a/src/plugins/cppeditor/cppmodelmanager_test.cpp b/src/plugins/cppeditor/cppmodelmanager_test.cpp index 97d13d0704..eaa2ef142d 100644 --- a/src/plugins/cppeditor/cppmodelmanager_test.cpp +++ b/src/plugins/cppeditor/cppmodelmanager_test.cpp @@ -18,7 +18,7 @@ #include <cplusplus/LookupContext.h> #include <projectexplorer/projectexplorer.h> -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> #include <utils/executeondestruction.h> #include <utils/hostosinfo.h> diff --git a/src/plugins/cppeditor/cppquickfixes.cpp b/src/plugins/cppeditor/cppquickfixes.cpp index 3dae225cea..8ae20d1c5a 100644 --- a/src/plugins/cppeditor/cppquickfixes.cpp +++ b/src/plugins/cppeditor/cppquickfixes.cpp @@ -33,7 +33,7 @@ #include <projectexplorer/projectnodes.h> #include <projectexplorer/projecttree.h> -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> #include <utils/algorithm.h> #include <utils/basetreeview.h> @@ -7986,7 +7986,7 @@ private: } }; - if (const Project *project = SessionManager::projectForFile(filePath())) { + if (const Project *project = ProjectManager::projectForFile(filePath())) { const FilePaths files = project->files(ProjectExplorer::Project::SourceFiles); QSet<FilePath> projectFiles(files.begin(), files.end()); for (const auto &file : files) { diff --git a/src/plugins/cppeditor/cpptoolsjsextension.cpp b/src/plugins/cppeditor/cpptoolsjsextension.cpp index a3cbfe1204..b70328601e 100644 --- a/src/plugins/cppeditor/cpptoolsjsextension.cpp +++ b/src/plugins/cppeditor/cpptoolsjsextension.cpp @@ -10,12 +10,13 @@ #include <coreplugin/icore.h> #include <projectexplorer/project.h> +#include <projectexplorer/projectmanager.h> #include <projectexplorer/projectnodes.h> -#include <projectexplorer/session.h> #include <cplusplus/AST.h> #include <cplusplus/ASTPath.h> #include <cplusplus/Overview.h> + #include <utils/codegeneration.h> #include <utils/fileutils.h> @@ -234,7 +235,7 @@ QString CppToolsJsExtension::includeStatement( } return false; }; - for (const Project * const p : SessionManager::projects()) { + for (const Project * const p : ProjectManager::projects()) { const Node *theNode = p->rootProjectNode()->findNode(nodeMatchesFileName); if (theNode) { const bool sameDir = pathOfIncludingFile == theNode->filePath().toFileInfo().path(); diff --git a/src/plugins/cppeditor/cpptoolsreuse.cpp b/src/plugins/cppeditor/cpptoolsreuse.cpp index 7d17e30e4b..912902c0c9 100644 --- a/src/plugins/cppeditor/cpptoolsreuse.cpp +++ b/src/plugins/cppeditor/cpptoolsreuse.cpp @@ -21,7 +21,9 @@ #include <coreplugin/editormanager/editormanager.h> #include <coreplugin/idocument.h> #include <coreplugin/messagemanager.h> -#include <projectexplorer/session.h> + +#include <projectexplorer/projectmanager.h> + #include <texteditor/codeassist/assistinterface.h> #include <texteditor/textdocument.h> @@ -29,6 +31,7 @@ #include <cplusplus/LookupContext.h> #include <cplusplus/Overview.h> #include <cplusplus/SimpleLexer.h> + #include <utils/algorithm.h> #include <utils/textutils.h> #include <utils/qtcassert.h> @@ -596,12 +599,12 @@ NamespaceAST *NSCheckerVisitor::currentNamespace() ProjectExplorer::Project *projectForProjectPart(const ProjectPart &part) { - return ProjectExplorer::SessionManager::projectWithProjectFilePath(part.topLevelProject); + return ProjectExplorer::ProjectManager::projectWithProjectFilePath(part.topLevelProject); } ProjectExplorer::Project *projectForProjectInfo(const ProjectInfo &info) { - return ProjectExplorer::SessionManager::projectWithProjectFilePath(info.projectFilePath()); + return ProjectExplorer::ProjectManager::projectWithProjectFilePath(info.projectFilePath()); } void openEditor(const Utils::FilePath &filePath, bool inNextSplit, Utils::Id editorId) diff --git a/src/plugins/cppeditor/cpptoolstestcase.cpp b/src/plugins/cppeditor/cpptoolstestcase.cpp index b7124b01ca..2d149b3ff5 100644 --- a/src/plugins/cppeditor/cpptoolstestcase.cpp +++ b/src/plugins/cppeditor/cpptoolstestcase.cpp @@ -18,7 +18,7 @@ #include <projectexplorer/buildsystem.h> #include <projectexplorer/project.h> #include <projectexplorer/projectexplorer.h> -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> #include <texteditor/texteditor.h> #include <texteditor/codeassist/iassistproposal.h> @@ -348,8 +348,8 @@ bool TestCase::waitUntilProjectIsFullyOpened(Project *project, int timeOutInMs) return QTest::qWaitFor( [project]() { - return SessionManager::startupBuildSystem() - && !SessionManager::startupBuildSystem()->isParsing() + return ProjectManager::startupBuildSystem() + && !ProjectManager::startupBuildSystem()->isParsing() && CppModelManager::instance()->projectInfo(project); }, timeOutInMs); @@ -367,7 +367,7 @@ bool TestCase::writeFile(const FilePath &filePath, const QByteArray &contents) ProjectOpenerAndCloser::ProjectOpenerAndCloser() { - QVERIFY(!SessionManager::hasProjects()); + QVERIFY(!ProjectManager::hasProjects()); } ProjectOpenerAndCloser::~ProjectOpenerAndCloser() diff --git a/src/plugins/cppeditor/generatedcodemodelsupport.cpp b/src/plugins/cppeditor/generatedcodemodelsupport.cpp index 400e77fb37..22a9b2735e 100644 --- a/src/plugins/cppeditor/generatedcodemodelsupport.cpp +++ b/src/plugins/cppeditor/generatedcodemodelsupport.cpp @@ -13,7 +13,7 @@ #include <projectexplorer/extracompiler.h> #include <projectexplorer/project.h> #include <projectexplorer/projectexplorer.h> -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> #include <projectexplorer/target.h> #include <utils/algorithm.h> diff --git a/src/plugins/cppeditor/modelmanagertesthelper.cpp b/src/plugins/cppeditor/modelmanagertesthelper.cpp index f4114c33b2..a133ac7fef 100644 --- a/src/plugins/cppeditor/modelmanagertesthelper.cpp +++ b/src/plugins/cppeditor/modelmanagertesthelper.cpp @@ -6,7 +6,7 @@ #include "cpptoolstestcase.h" #include "projectinfo.h" -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> #include <utils/algorithm.h> @@ -59,7 +59,7 @@ void ModelManagerTestHelper::cleanup() CppModelManager *mm = CppModelManager::instance(); QList<ProjectInfo::ConstPtr> pies = mm->projectInfos(); for (Project * const p : std::as_const(m_projects)) { - ProjectExplorer::SessionManager::removeProject(p); + ProjectExplorer::ProjectManager::removeProject(p); emit aboutToRemoveProject(p); } @@ -72,7 +72,7 @@ ModelManagerTestHelper::Project *ModelManagerTestHelper::createProject( { auto tp = new TestProject(name, this, filePath); m_projects.push_back(tp); - ProjectExplorer::SessionManager::addProject(tp); + ProjectExplorer::ProjectManager::addProject(tp); emit projectAdded(tp); return tp; } diff --git a/src/plugins/cppeditor/symbolsfindfilter.cpp b/src/plugins/cppeditor/symbolsfindfilter.cpp index 3b901715b2..0317d0ee98 100644 --- a/src/plugins/cppeditor/symbolsfindfilter.cpp +++ b/src/plugins/cppeditor/symbolsfindfilter.cpp @@ -12,9 +12,10 @@ #include <coreplugin/progressmanager/progressmanager.h> #include <coreplugin/editormanager/editormanager.h> #include <coreplugin/find/searchresultwindow.h> + #include <projectexplorer/project.h> #include <projectexplorer/projectexplorer.h> -#include <projectexplorer/session.h> +#include <projectexplorer/projectmanager.h> #include <utils/algorithm.h> #include <utils/runextensions.h> @@ -108,7 +109,7 @@ void SymbolsFindFilter::startSearch(SearchResult *search) SymbolSearcher::Parameters parameters = search->userData().value<SymbolSearcher::Parameters>(); QSet<QString> projectFileNames; if (parameters.scope == SymbolSearcher::SearchProjectsOnly) { - for (ProjectExplorer::Project *project : ProjectExplorer::SessionManager::projects()) + for (ProjectExplorer::Project *project : ProjectExplorer::ProjectManager::projects()) projectFileNames += Utils::transform<QSet>(project->files(ProjectExplorer::Project::AllFiles), &Utils::FilePath::toString); } |