+ enum myRoles
+ {
+ SortRole = Qt::UserRole,
+ UserRole
+ };
+
+ TreeModel(const QList<QVariant>&, QObject* parent = nullptr);
+ ~TreeModel() override;
+
+ AbstractTreeItem* root() const;
+
+ QVariant data(const QModelIndex& index, int role) const override;
+ bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole) override;
+
+ Qt::ItemFlags flags(const QModelIndex& index) const override;
+ QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;