diff options
author | hjk <hjk@qt.io> | 2017-02-08 14:50:43 +0100 |
---|---|---|
committer | hjk <hjk@qt.io> | 2017-02-09 12:15:23 +0000 |
commit | 04a525877ba7583621771e61f605cec9a76c9399 (patch) | |
tree | a6cc21dff4df21a4450c79ec03c12b9db0f719d5 /src/plugins/resourceeditor | |
parent | 719ff7047b09264a5a0a42335cd31ba94f0c733a (diff) | |
download | qt-creator-04a525877ba7583621771e61f605cec9a76c9399.tar.gz |
ProjectExplorer: Merge FolderNode's m_{file,folder}Node fields
One step closer to direct use of Utils::TreeNode.
Change-Id: Icd0dfd2fa4d12c2572a68f61ae43c5e906956a0e
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'src/plugins/resourceeditor')
-rw-r--r-- | src/plugins/resourceeditor/resourcenode.cpp | 27 | ||||
-rw-r--r-- | src/plugins/resourceeditor/resourcenode.h | 4 |
2 files changed, 14 insertions, 17 deletions
diff --git a/src/plugins/resourceeditor/resourcenode.cpp b/src/plugins/resourceeditor/resourcenode.cpp index dad9bad023..7cb6c82e67 100644 --- a/src/plugins/resourceeditor/resourcenode.cpp +++ b/src/plugins/resourceeditor/resourcenode.cpp @@ -121,7 +121,7 @@ ResourceTopLevelNode::~ResourceTopLevelNode() void ResourceTopLevelNode::addInternalNodes() { - QMap<PrefixFolderLang, QList<ProjectExplorer::FileNode *>> filesToAdd; + QMap<PrefixFolderLang, QList<ProjectExplorer::Node *>> nodesToAdd; QMap<PrefixFolderLang, QList<ProjectExplorer::FolderNode *>> foldersToAddToFolders; QMap<PrefixFolderLang, QList<ProjectExplorer::FolderNode *>> foldersToAddToPrefix; @@ -138,7 +138,7 @@ void ResourceTopLevelNode::addInternalNodes() PrefixFolderLang prefixId(prefix, QString(), lang); if (!prefixNodes.contains(prefixId)) { ProjectExplorer::FolderNode *fn = new ResourceFolderNode(file.prefix(i), file.lang(i), this); - addFolderNode(fn); + addNode(fn); prefixNodes.insert(prefixId, fn); } ResourceFolderNode *currentPrefixNode = static_cast<ResourceFolderNode*>(prefixNodes[prefixId]); @@ -189,6 +189,7 @@ void ResourceTopLevelNode::addInternalNodes() } else { PrefixFolderLang parentFolderId(prefix, parentFolderName, lang); foldersToAddToFolders[parentFolderId] << newNode; + nodesToAdd[parentFolderId] << newNode; } folderNodes.insert(folderId, newNode); } @@ -198,9 +199,9 @@ void ResourceTopLevelNode::addInternalNodes() const QString qrcPath = QDir::cleanPath(prefixWithSlash + alias); fileNames.insert(fileName); - filesToAdd[folderId] - << new ResourceFileNode(Utils::FileName::fromString(fileName), - qrcPath, displayName); + auto rn = new ResourceFileNode(Utils::FileName::fromString(fileName), + qrcPath, displayName); + nodesToAdd[folderId] << rn; } } } @@ -209,11 +210,10 @@ void ResourceTopLevelNode::addInternalNodes() foreach (FolderNode *sfn, folderNodes()) { ResourceFolderNode *srn = static_cast<ResourceFolderNode *>(sfn); PrefixFolderLang folderId(srn->prefix(), QString(), srn->lang()); - srn->setFileNodes(filesToAdd[folderId]); - srn->setFolderNodes(foldersToAddToPrefix[folderId]); + srn->setNodes(nodesToAdd[folderId]); foreach (FolderNode* ssfn, sfn->folderNodes()) { SimpleResourceFolderNode *sssn = static_cast<SimpleResourceFolderNode *>(ssfn); - sssn->addFilesAndSubfolders(filesToAdd, foldersToAddToFolders, srn->prefix(), srn->lang()); + sssn->addFilesAndSubfolders(foldersToAddToFolders, nodesToAdd, srn->prefix(), srn->lang()); } } } @@ -649,16 +649,13 @@ ResourceFolderNode *SimpleResourceFolderNode::prefixNode() const return m_prefixNode; } -void SimpleResourceFolderNode::addFilesAndSubfolders(QMap<PrefixFolderLang, - QList<ProjectExplorer::FileNode *>> filesToAdd, - QMap<PrefixFolderLang, - QList<ProjectExplorer::FolderNode*> > foldersToAdd, +void SimpleResourceFolderNode::addFilesAndSubfolders(QMap<PrefixFolderLang, QList<ProjectExplorer::FolderNode*> > foldersToAdd, + QMap<PrefixFolderLang, QList<ProjectExplorer::Node*> > nodesToAdd, const QString &prefix, const QString &lang) { - setFileNodes(filesToAdd.value(PrefixFolderLang(prefix, m_folderName, lang))); - setFolderNodes(foldersToAdd.value(PrefixFolderLang(prefix, m_folderName, lang))); + setNodes(nodesToAdd.value(PrefixFolderLang(prefix, m_folderName, lang))); foreach (FolderNode* subNode, folderNodes()) { SimpleResourceFolderNode* sn = static_cast<SimpleResourceFolderNode*>(subNode); - sn->addFilesAndSubfolders(filesToAdd, foldersToAdd, prefix, lang); + sn->addFilesAndSubfolders(foldersToAdd, nodesToAdd, prefix, lang); } } diff --git a/src/plugins/resourceeditor/resourcenode.h b/src/plugins/resourceeditor/resourcenode.h index cde5030499..cfbdbbf1da 100644 --- a/src/plugins/resourceeditor/resourcenode.h +++ b/src/plugins/resourceeditor/resourcenode.h @@ -122,8 +122,8 @@ public: const QString &prefix, const QString &lang, Utils::FileName absolutePath, ResourceTopLevelNode *topLevel, ResourceFolderNode *prefixNode); QList<ProjectExplorer::ProjectAction> supportedActions(ProjectExplorer::Node *node) const; - void addFilesAndSubfolders(QMap<PrefixFolderLang, QList<ProjectExplorer::FileNode *>> filesToAdd, - QMap<PrefixFolderLang, QList<ProjectExplorer::FolderNode *>> foldersToAdd, + void addFilesAndSubfolders(QMap<PrefixFolderLang, QList<ProjectExplorer::FolderNode *>> foldersToAdd, + QMap<PrefixFolderLang, QList<ProjectExplorer::Node *>> nodesToAdd, const QString &prefix, const QString &lang); bool addFiles(const QStringList &filePaths, QStringList *notAdded); bool removeFiles(const QStringList &filePaths, QStringList *notRemoved); |