diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2020-02-02 17:07:51 -0500 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2020-02-04 03:33:23 -0500 |
| commit | 47d1826f55c66a039951d922dabab8b01324bebb (patch) | |
| tree | a55665174c27c6d6c55bc97fcb6ab4e26eee519b /src/filetreeitem.h | |
| parent | 97b91b5fe5077228a82c622e4af6a9b698396fda (diff) | |
hidden unique_ptr into FileTreeItem
refactored pruning
don't show shell menu for directories
added collapse all in context menu
Diffstat (limited to 'src/filetreeitem.h')
| -rw-r--r-- | src/filetreeitem.h | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/filetreeitem.h b/src/filetreeitem.h index c5418d43..8ef42289 100644 --- a/src/filetreeitem.h +++ b/src/filetreeitem.h @@ -9,7 +9,8 @@ class FileTreeItem class Sorter; public: - using Children = std::vector<std::unique_ptr<FileTreeItem>>; + using Ptr = std::unique_ptr<FileTreeItem>; + using Children = std::vector<Ptr>; enum Flag { @@ -22,7 +23,7 @@ public: Q_DECLARE_FLAGS(Flags, Flag); - FileTreeItem( + static Ptr create( FileTreeItem* parent, int originID, std::wstring dataRelativeParentPath, std::wstring realPath, Flags flags, std::wstring file, std::wstring mod); @@ -32,13 +33,13 @@ public: FileTreeItem(FileTreeItem&&) = default; FileTreeItem& operator=(FileTreeItem&&) = default; - void add(std::unique_ptr<FileTreeItem> child) + void add(Ptr child) { child->m_indexGuess = m_children.size(); m_children.push_back(std::move(child)); } - void insert(std::unique_ptr<FileTreeItem> child, std::size_t at); + void insert(Ptr child, std::size_t at); template <class Itor> void insert(Itor begin, Itor end, std::size_t at) @@ -269,6 +270,12 @@ private: bool m_expanded; Children m_children; + + FileTreeItem( + FileTreeItem* parent, int originID, + std::wstring dataRelativeParentPath, std::wstring realPath, Flags flags, + std::wstring file, std::wstring mod); + void getFileType() const; }; |
