ResourceEditor: Change signature of ResourceTopLevelNode ctor

Replace the parent node by the only data item it is used for to
make it more clear that this is not about tree structure.

Also move the parameter with possible default to the last position.

Change-Id: Ibf62328dea335b5999595e5cebb36051ec84bc3a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
hjk
2019-03-01 08:38:17 +01:00
parent e3a7aa1ad2
commit 4e0ff112e4
4 changed files with 8 additions and 6 deletions

View File

@@ -168,7 +168,8 @@ static void createTree(const QmakePriFile *pri, QmakePriFileNode *node, const Fi
int eid = vfs->idForFileName(file.toString(), QMakeVfs::VfsExact); int eid = vfs->idForFileName(file.toString(), QMakeVfs::VfsExact);
vfs->readFile(eid, &contents, &errorMessage); vfs->readFile(eid, &contents, &errorMessage);
} }
vfolder->addNode(std::make_unique<ResourceEditor::ResourceTopLevelNode>(file, contents, vfolder.get())); vfolder->addNode(std::make_unique<ResourceEditor::ResourceTopLevelNode>
(file, vfolder->filePath(), contents));
} }
} else { } else {
for (const FileName &fn : newFilePaths) { for (const FileName &fn : newFilePaths) {

View File

@@ -217,7 +217,7 @@ void ResourceEditorPlugin::extensionsInitialized()
FolderNode *const pn = file->parentFolderNode(); FolderNode *const pn = file->parentFolderNode();
QTC_ASSERT(pn, continue); QTC_ASSERT(pn, continue);
const Utils::FileName path = file->filePath(); const Utils::FileName path = file->filePath();
auto topLevel = std::make_unique<ResourceTopLevelNode>(path, QString(), pn); auto topLevel = std::make_unique<ResourceTopLevelNode>(path, pn->filePath());
topLevel->setIsGenerated(file->isGenerated()); topLevel->setIsGenerated(file->isGenerated());
pn->replaceSubtree(file, std::move(topLevel)); pn->replaceSubtree(file, std::move(topLevel));
} }

View File

@@ -73,7 +73,7 @@ public:
FolderNode *parent = m_node->parentFolderNode(); FolderNode *parent = m_node->parentFolderNode();
QTC_ASSERT(parent, return false); QTC_ASSERT(parent, return false);
parent->replaceSubtree(m_node, std::make_unique<ResourceTopLevelNode>( parent->replaceSubtree(m_node, std::make_unique<ResourceTopLevelNode>(
m_node->filePath(), m_node->contents(), parent)); m_node->filePath(), parent->filePath(), m_node->contents()));
return true; return true;
} }
@@ -265,7 +265,8 @@ bool SimpleResourceFolderNode::renameFile(const QString &filePath, const QString
} // Internal } // Internal
ResourceTopLevelNode::ResourceTopLevelNode(const FileName &filePath, ResourceTopLevelNode::ResourceTopLevelNode(const FileName &filePath,
const QString &contents, FolderNode *parent) const FileName &base,
const QString &contents)
: FolderNode(filePath) : FolderNode(filePath)
{ {
setIcon(FileIconProvider::icon(filePath.toString())); setIcon(FileIconProvider::icon(filePath.toString()));
@@ -283,7 +284,6 @@ ResourceTopLevelNode::ResourceTopLevelNode(const FileName &filePath,
m_contents = contents; m_contents = contents;
} }
FileName base = parent->filePath();
if (filePath.isChildOf(base)) if (filePath.isChildOf(base))
setDisplayName(filePath.relativeChildPath(base).toUserOutput()); setDisplayName(filePath.relativeChildPath(base).toUserOutput());
else else

View File

@@ -35,7 +35,8 @@ class RESOURCE_EXPORT ResourceTopLevelNode : public ProjectExplorer::FolderNode
{ {
public: public:
ResourceTopLevelNode(const Utils::FileName &filePath, ResourceTopLevelNode(const Utils::FileName &filePath,
const QString &contents, FolderNode *parent); const Utils::FileName &basePath,
const QString &contents = {});
~ResourceTopLevelNode() override; ~ResourceTopLevelNode() override;
void addInternalNodes(); void addInternalNodes();