forked from qt-creator/qt-creator
ProjectExplorer: Remove FolderNode::addNode taking a raw pointer
Change-Id: I53b765d2c3e71889386c76425662bfcc47bdf582 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This commit is contained in:
@@ -80,23 +80,23 @@ void setupArtifacts(ProjectExplorer::FolderNode *root, const QList<qbs::Artifact
|
||||
root->compress();
|
||||
}
|
||||
|
||||
QbsProjectManager::Internal::QbsGroupNode
|
||||
*buildGroupNodeTree(const qbs::GroupData &grp, const QString &productPath, bool productIsEnabled)
|
||||
std::unique_ptr<QbsProjectManager::Internal::QbsGroupNode>
|
||||
buildGroupNodeTree(const qbs::GroupData &grp, const QString &productPath, bool productIsEnabled)
|
||||
{
|
||||
QTC_ASSERT(grp.isValid(), return nullptr);
|
||||
|
||||
auto result = new QbsProjectManager::Internal::QbsGroupNode(grp, productPath);
|
||||
auto result = std::make_unique<QbsProjectManager::Internal::QbsGroupNode>(grp, productPath);
|
||||
|
||||
result->setEnabled(productIsEnabled && grp.isEnabled());
|
||||
result->setAbsoluteFilePathAndLine(
|
||||
Utils::FileName::fromString(grp.location().filePath()).parentDir(), -1);
|
||||
result->setDisplayName(grp.name());
|
||||
result->addNode(new QbsProjectManager::Internal::QbsFileNode(
|
||||
result->addNode(std::make_unique<QbsProjectManager::Internal::QbsFileNode>(
|
||||
Utils::FileName::fromString(grp.location().filePath()),
|
||||
ProjectExplorer::FileType::Project, false,
|
||||
grp.location().line()));
|
||||
|
||||
::setupArtifacts(result, grp.allSourceArtifacts());
|
||||
::setupArtifacts(result.get(), grp.allSourceArtifacts());
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -113,9 +113,9 @@ void setupQbsProductData(QbsProjectManager::Internal::QbsProductNode *node,
|
||||
const QString &productPath = QFileInfo(prd.location().filePath()).absolutePath();
|
||||
|
||||
// Add QbsFileNode:
|
||||
node->addNode(new QbsFileNode(Utils::FileName::fromString(prd.location().filePath()),
|
||||
ProjectExplorer::FileType::Project, false,
|
||||
prd.location().line()));
|
||||
node->addNode(std::make_unique<QbsFileNode>(Utils::FileName::fromString(prd.location().filePath()),
|
||||
ProjectExplorer::FileType::Project, false,
|
||||
prd.location().line()));
|
||||
|
||||
|
||||
foreach (const qbs::GroupData &grp, prd.groups()) {
|
||||
@@ -129,18 +129,19 @@ void setupQbsProductData(QbsProjectManager::Internal::QbsProductNode *node,
|
||||
|
||||
// Add "Generated Files" Node:
|
||||
auto genFiles
|
||||
= new ProjectExplorer::VirtualFolderNode(node->filePath(),
|
||||
ProjectExplorer::Node::DefaultProjectFilePriority - 10);
|
||||
= std::make_unique<ProjectExplorer::VirtualFolderNode>(node->filePath(),
|
||||
ProjectExplorer::Node::DefaultProjectFilePriority - 10);
|
||||
genFiles->setDisplayName(QCoreApplication::translate("QbsProductNode", "Generated files"));
|
||||
node->addNode(genFiles);
|
||||
setupArtifacts(genFiles, prd.generatedArtifacts());
|
||||
setupArtifacts(genFiles.get(), prd.generatedArtifacts());
|
||||
node->addNode(std::move(genFiles));
|
||||
}
|
||||
|
||||
QbsProjectManager::Internal::QbsProductNode *buildProductNodeTree(const qbs::ProductData &prd)
|
||||
std::unique_ptr<QbsProjectManager::Internal::QbsProductNode>
|
||||
buildProductNodeTree(const qbs::ProductData &prd)
|
||||
{
|
||||
auto result = new QbsProjectManager::Internal::QbsProductNode(prd);
|
||||
auto result = std::make_unique<QbsProjectManager::Internal::QbsProductNode>(prd);
|
||||
|
||||
setupQbsProductData(result, prd);
|
||||
setupQbsProductData(result.get(), prd);
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -148,15 +149,15 @@ void setupProjectNode(QbsProjectManager::Internal::QbsProjectNode *node, const q
|
||||
const qbs::Project &qbsProject)
|
||||
{
|
||||
using namespace QbsProjectManager::Internal;
|
||||
node->addNode(new QbsFileNode(Utils::FileName::fromString(prjData.location().filePath()),
|
||||
ProjectExplorer::FileType::Project, false,
|
||||
prjData.location().line()));
|
||||
node->addNode(std::make_unique<QbsFileNode>(Utils::FileName::fromString(prjData.location().filePath()),
|
||||
ProjectExplorer::FileType::Project, false,
|
||||
prjData.location().line()));
|
||||
foreach (const qbs::ProjectData &subData, prjData.subProjects()) {
|
||||
auto subProject =
|
||||
new QbsProjectManager::Internal::QbsProjectNode(
|
||||
std::make_unique<QbsProjectManager::Internal::QbsProjectNode>(
|
||||
Utils::FileName::fromString(subData.location().filePath()).parentDir());
|
||||
setupProjectNode(subProject, subData, qbsProject);
|
||||
node->addNode(subProject);
|
||||
setupProjectNode(subProject.get(), subData, qbsProject);
|
||||
node->addNode(std::move(subProject));
|
||||
}
|
||||
|
||||
foreach (const qbs::ProductData &prd, prjData.products())
|
||||
@@ -212,9 +213,9 @@ std::unique_ptr<QbsRootProjectNode> QbsNodeTreeBuilder::buildTree(QbsProject *pr
|
||||
auto root = std::make_unique<QbsRootProjectNode>(project);
|
||||
setupProjectNode(root.get(), project->qbsProjectData(), project->qbsProject());
|
||||
auto buildSystemFiles
|
||||
= new ProjectExplorer::FolderNode(project->projectDirectory(),
|
||||
ProjectExplorer::NodeType::Folder,
|
||||
QCoreApplication::translate("QbsRootProjectNode", "Qbs files"));
|
||||
= std::make_unique<ProjectExplorer::FolderNode>(project->projectDirectory(),
|
||||
ProjectExplorer::NodeType::Folder,
|
||||
QCoreApplication::translate("QbsRootProjectNode", "Qbs files"));
|
||||
|
||||
Utils::FileName base = project->projectDirectory();
|
||||
const QStringList &files = unreferencedBuildSystemFiles(project->qbsProject());
|
||||
@@ -224,7 +225,7 @@ std::unique_ptr<QbsRootProjectNode> QbsNodeTreeBuilder::buildTree(QbsProject *pr
|
||||
buildSystemFiles->addNestedNode(std::make_unique<ProjectExplorer::FileNode>(filePath, ProjectExplorer::FileType::Project, false));
|
||||
}
|
||||
buildSystemFiles->compress();
|
||||
root->addNode(buildSystemFiles);
|
||||
root->addNode(std::move(buildSystemFiles));
|
||||
|
||||
return root;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user