#ifndef TREEITEM #define TREEITEM #include #include class TreeItem { public: explicit TreeItem(QVariantList data, TreeItem* parentItem = nullptr); void appendChild(std::unique_ptr&& child); TreeItem* child(int row); int childCount() const; int columnCount() const; QVariant data(int column) const; int row() const; TreeItem* parentItem(); private: std::vector > m_childItems; QVariantList m_itemData; TreeItem* m_parentItem; }; #endif //TREEITEM