From 37907c7837d8b8cc898c003034a8fa3ff9b4c7c4 Mon Sep 17 00:00:00 2001 From: Lioncache Date: Sun, 7 Dec 2025 08:21:11 -0500 Subject: [PATCH] CResourceTableModel: std::move parameters in DisplayEntryList() We can allow for moving into this to avoid allocation churning. --- .../CharacterEditor/CSkeletonHierarchyModel.h | 2 +- .../CResourceTableContextMenu.cpp | 16 +++++++--------- .../ResourceBrowser/CResourceTableModel.cpp | 6 +++--- src/Editor/ResourceBrowser/CResourceTableModel.h | 2 +- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/Editor/CharacterEditor/CSkeletonHierarchyModel.h b/src/Editor/CharacterEditor/CSkeletonHierarchyModel.h index 5f9213fd..b6069e98 100644 --- a/src/Editor/CharacterEditor/CSkeletonHierarchyModel.h +++ b/src/Editor/CharacterEditor/CSkeletonHierarchyModel.h @@ -6,7 +6,7 @@ class CSkeletonHierarchyModel : public QAbstractItemModel { - CSkeleton *mpSkeleton = nullptr; + const CSkeleton *mpSkeleton = nullptr; public: explicit CSkeletonHierarchyModel(QObject *pParent = nullptr); diff --git a/src/Editor/ResourceBrowser/CResourceTableContextMenu.cpp b/src/Editor/ResourceBrowser/CResourceTableContextMenu.cpp index e36d3bae..d90d1af8 100644 --- a/src/Editor/ResourceBrowser/CResourceTableContextMenu.cpp +++ b/src/Editor/ResourceBrowser/CResourceTableContextMenu.cpp @@ -178,8 +178,8 @@ void CResourceTableContextMenu::ShowReferencers() if (!mpModel->IsDisplayingUserEntryList()) mpBrowser->SetInspectedEntry(mpClickedEntry); - const QString ListDesc = tr("Referencers of \"%1\"").arg( TO_QSTRING(mpClickedEntry->CookedAssetPath().GetFileName()) ); - mpModel->DisplayEntryList(EntryList, ListDesc); + QString ListDesc = tr("Referencers of \"%1\"").arg(TO_QSTRING(mpClickedEntry->CookedAssetPath().GetFileName())); + mpModel->DisplayEntryList(std::move(EntryList), std::move(ListDesc)); mpBrowser->ClearFilters(); } @@ -192,19 +192,17 @@ void CResourceTableContextMenu::ShowDependencies() QList EntryList; - for (auto Iter = Dependencies.begin(); Iter != Dependencies.end(); Iter++) + for (const auto& Dep : Dependencies) { - CResourceEntry *pEntry = mpClickedEntry->ResourceStore()->FindEntry(*Iter); - - if (pEntry) + if (auto* pEntry = mpClickedEntry->ResourceStore()->FindEntry(Dep)) EntryList.push_back(pEntry); } if (!mpModel->IsDisplayingUserEntryList()) mpBrowser->SetInspectedEntry(mpClickedEntry); - const QString ListDesc = tr("Dependencies of \"%1\"").arg( TO_QSTRING(mpClickedEntry->CookedAssetPath().GetFileName()) ); - mpModel->DisplayEntryList(EntryList, ListDesc); + QString ListDesc = tr("Dependencies of \"%1\"").arg(TO_QSTRING(mpClickedEntry->CookedAssetPath().GetFileName())); + mpModel->DisplayEntryList(std::move(EntryList), std::move(ListDesc)); mpBrowser->ClearFilters(); } @@ -222,7 +220,7 @@ void CResourceTableContextMenu::Delete() Resources.push_back(mpModel->IndexEntry(kIndex)); } - mpBrowser->Delete(Resources, Directories); + mpBrowser->Delete(std::move(Resources), std::move(Directories)); } void CResourceTableContextMenu::CopyName() diff --git a/src/Editor/ResourceBrowser/CResourceTableModel.cpp b/src/Editor/ResourceBrowser/CResourceTableModel.cpp index d14c2648..d90dd3ff 100644 --- a/src/Editor/ResourceBrowser/CResourceTableModel.cpp +++ b/src/Editor/ResourceBrowser/CResourceTableModel.cpp @@ -249,12 +249,12 @@ void CResourceTableModel::FillEntryList(CVirtualDirectory *pDir, bool AssetListM endResetModel(); } -void CResourceTableModel::DisplayEntryList(QList& rkEntries, const QString& rkListDescription) +void CResourceTableModel::DisplayEntryList(QList rkEntries, QString rkListDescription) { beginResetModel(); - mEntries = rkEntries; + mEntries = std::move(rkEntries); mDirectories.clear(); - mModelDescription = rkListDescription; + mModelDescription = std::move(rkListDescription); mIsAssetListMode = true; mIsDisplayingUserEntryList = true; endResetModel(); diff --git a/src/Editor/ResourceBrowser/CResourceTableModel.h b/src/Editor/ResourceBrowser/CResourceTableModel.h index 61ea4cf2..94502aa6 100644 --- a/src/Editor/ResourceBrowser/CResourceTableModel.h +++ b/src/Editor/ResourceBrowser/CResourceTableModel.h @@ -43,7 +43,7 @@ public: bool IsIndexDirectory(const QModelIndex& rkIndex) const; bool HasParentDirectoryEntry() const; void FillEntryList(CVirtualDirectory *pDir, bool AssetListMode); - void DisplayEntryList(QList& rkEntries, const QString& rkListDescription); + void DisplayEntryList(QList rkEntries, QString rkListDescription); protected: void RecursiveAddDirectoryContents(CVirtualDirectory *pDir); int EntryListIndex(CResourceEntry *pEntry);