forked from qt-creator/qt-creator
ProjectExplorer: Introduce per-buildsystem setRootProjectNode
Currently diverting to the original Project::setRootProjectNode. Idea is to focus on the BuildSystem <-> generated tree relation. Change-Id: I8b20173e364713f0919cf4f8b76a2f79ef8770bb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -146,7 +146,7 @@ void AutotoolsBuildSystem::makefileParsingFinished()
|
||||
newRoot->addNestedNode(std::make_unique<FileNode>(path,
|
||||
FileNode::fileTypeForFileName(path)));
|
||||
}
|
||||
project()->setRootProjectNode(std::move(newRoot));
|
||||
setRootProjectNode(std::move(newRoot));
|
||||
project()->setExtraProjectFiles(filesToWatch);
|
||||
|
||||
updateCppCodeModel();
|
||||
|
@@ -420,7 +420,7 @@ void CMakeBuildSystem::updateProjectData()
|
||||
{
|
||||
auto newRoot = generateProjectTree(m_allFiles);
|
||||
if (newRoot) {
|
||||
p->setRootProjectNode(std::move(newRoot));
|
||||
setRootProjectNode(std::move(newRoot));
|
||||
if (p->rootProjectNode())
|
||||
p->setDisplayName(p->rootProjectNode()->displayName());
|
||||
|
||||
|
@@ -427,7 +427,7 @@ void CompilationDatabaseBuildSystem::buildTreeAndProjectParts()
|
||||
root->addNode(std::make_unique<FileNode>(Utils::FilePath::fromString(dbContents.extraFileName),
|
||||
FileType::Project));
|
||||
|
||||
project()->setRootProjectNode(std::move(root));
|
||||
setRootProjectNode(std::move(root));
|
||||
|
||||
m_cppCodeModelUpdater->update({project(), kitInfo, activeParseEnvironment(), rpps});
|
||||
updateDeploymentData();
|
||||
|
@@ -492,7 +492,7 @@ void GenericBuildSystem::refresh(RefreshOptions options)
|
||||
FileType::Project));
|
||||
|
||||
newRoot->compress();
|
||||
project()->setRootProjectNode(std::move(newRoot));
|
||||
setRootProjectNode(std::move(newRoot));
|
||||
}
|
||||
|
||||
refreshCppCodeModel();
|
||||
|
@@ -154,7 +154,7 @@ void NimBuildSystem::updateProject()
|
||||
auto projectNode = std::make_unique<ProjectNode>(project()->projectDirectory());
|
||||
projectNode->setDisplayName(project()->displayName());
|
||||
projectNode->addNestedNodes(std::move(nodes));
|
||||
project()->setRootProjectNode(std::move(projectNode));
|
||||
setRootProjectNode(std::move(projectNode));
|
||||
}
|
||||
|
||||
// Complete scan
|
||||
|
@@ -304,6 +304,11 @@ BuildTargetInfo BuildSystem::buildTarget(const QString &buildKey) const
|
||||
});
|
||||
}
|
||||
|
||||
void BuildSystem::setRootProjectNode(std::unique_ptr<ProjectNode> &&root)
|
||||
{
|
||||
d->m_target->project()->setRootProjectNode(std::move(root));
|
||||
}
|
||||
|
||||
QString BuildSystem::disabledReason(const QString &buildKey) const
|
||||
{
|
||||
if (hasParsingData()) {
|
||||
|
@@ -87,6 +87,8 @@ public:
|
||||
const QList<BuildTargetInfo> applicationTargets() const;
|
||||
BuildTargetInfo buildTarget(const QString &buildKey) const;
|
||||
|
||||
void setRootProjectNode(std::unique_ptr<ProjectNode> &&root);
|
||||
|
||||
class PROJECTEXPLORER_EXPORT ParseGuard
|
||||
{
|
||||
friend class BuildSystem;
|
||||
|
@@ -222,7 +222,7 @@ void PythonBuildSystem::triggerParsing()
|
||||
appTargets.append(bti);
|
||||
}
|
||||
}
|
||||
project()->setRootProjectNode(std::move(newRoot));
|
||||
setRootProjectNode(std::move(newRoot));
|
||||
|
||||
setApplicationTargets(appTargets);
|
||||
|
||||
|
@@ -694,7 +694,7 @@ void QbsBuildSystem::rebuildProjectTree()
|
||||
{
|
||||
std::unique_ptr<QbsRootProjectNode> newRoot = Internal::QbsNodeTreeBuilder::buildTree(this);
|
||||
project()->setDisplayName(newRoot ? newRoot->displayName() : projectFilePath().toFileInfo().completeBaseName());
|
||||
project()->setRootProjectNode(std::move(newRoot));
|
||||
setRootProjectNode(std::move(newRoot));
|
||||
}
|
||||
|
||||
void QbsBuildSystem::handleRuleExecutionDone()
|
||||
|
@@ -490,7 +490,7 @@ void QmakeBuildSystem::decrementPendingEvaluateFutures()
|
||||
m_asyncUpdateFutureInterface.setProgressValue(m_asyncUpdateFutureInterface.progressValue() + 1);
|
||||
if (m_pendingEvaluateFuturesCount == 0) {
|
||||
// We are done!
|
||||
project()->setRootProjectNode(QmakeNodeTreeBuilder::buildTree(this));
|
||||
setRootProjectNode(QmakeNodeTreeBuilder::buildTree(this));
|
||||
|
||||
if (!m_rootProFile->validParse())
|
||||
m_asyncUpdateFutureInterface.reportCanceled();
|
||||
|
@@ -363,7 +363,7 @@ void QmlBuildSystem::generateProjectTree()
|
||||
}
|
||||
newRoot->addNestedNode(std::make_unique<FileNode>(projectFilePath(), FileType::Project));
|
||||
|
||||
project()->setRootProjectNode(std::move(newRoot));
|
||||
setRootProjectNode(std::move(newRoot));
|
||||
refreshTargetDirectory();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user