summaryrefslogtreecommitdiff
path: root/src/filetreeitem.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2020-01-14 16:52:33 -0500
committerisanae <14251494+isanae@users.noreply.github.com>2020-02-04 03:33:19 -0500
commit08188830a3cf67924980b4183e2ca7a4b5e12c3d (patch)
tree95f9213db85466dae4d68c7b92f3db94a9b7ba4b /src/filetreeitem.cpp
parentaa63bffd350727041e8fdd4a7fc884fda80a0a4a (diff)
removed LEAK_TRACE stuff
refactored DirectoryEntry for lookup maps filetreemodel: made ensureLoaded() a no-op while refreshing, faster processing for removing rows
Diffstat (limited to 'src/filetreeitem.cpp')
-rw-r--r--src/filetreeitem.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/filetreeitem.cpp b/src/filetreeitem.cpp
index 39cdd9c4..33a70798 100644
--- a/src/filetreeitem.cpp
+++ b/src/filetreeitem.cpp
@@ -48,6 +48,19 @@ void FileTreeItem::remove(std::size_t i)
m_children.erase(m_children.begin() + i);
}
+void FileTreeItem::remove(std::size_t from, std::size_t n)
+{
+ if ((from + n) > m_children.size()) {
+ log::error("{}: can't remove children from {} n={}", debugName(), from, n);
+ return;
+ }
+
+ auto begin = m_children.begin() + from;
+ auto end = begin + n;
+
+ m_children.erase(begin, end);
+}
+
QString FileTreeItem::virtualPath() const
{
QString s = "Data\\";