diff --git a/src/plugins/projectexplorer/projectnodes.cpp b/src/plugins/projectexplorer/projectnodes.cpp index abcd1931386..a8ecb9ee94b 100644 --- a/src/plugins/projectexplorer/projectnodes.cpp +++ b/src/plugins/projectexplorer/projectnodes.cpp @@ -730,11 +730,6 @@ QString ProjectNode::vcsTopic() const return QString(); } -QList ProjectNode::projectNodes() const -{ - return m_projectNodes; -} - bool ProjectNode::canAddSubProject(const QString &proFilePath) const { Q_UNUSED(proFilePath) @@ -811,6 +806,18 @@ void ProjectNode::accept(NodesVisitor *visitor) folder->accept(visitor); } +ProjectNode *ProjectNode::projectNode(const Utils::FileName &file) const +{ + return Utils::findOrDefault(m_projectNodes, [&file](const ProjectNode *fn) { + return fn->filePath() == file; + }); +} + +QList ProjectNode::projectNodes() const +{ + return m_projectNodes; +} + /*! Adds project nodes specified by \a subProjects to the node hierarchy and emits the corresponding signals. diff --git a/src/plugins/projectexplorer/projectnodes.h b/src/plugins/projectexplorer/projectnodes.h index 547ab7e1b0d..c512b76a278 100644 --- a/src/plugins/projectexplorer/projectnodes.h +++ b/src/plugins/projectexplorer/projectnodes.h @@ -257,9 +257,6 @@ class PROJECTEXPLORER_EXPORT ProjectNode : public FolderNode public: QString vcsTopic() const; - // all subFolders that are projects - QList projectNodes() const; - virtual bool canAddSubProject(const QString &proFilePath) const; virtual bool addSubProjects(const QStringList &proFilePaths); virtual bool removeSubProjects(const QStringList &proFilePaths); @@ -277,8 +274,9 @@ public: void accept(NodesVisitor *visitor) override; - // to be called in implementation of - // the corresponding public functions + ProjectNode *projectNode(const Utils::FileName &file) const; + // all subFolders that are projects + QList projectNodes() const; void addProjectNodes(const QList &subProjects); void removeProjectNodes(const QList &subProjects);