diff options
Diffstat (limited to 'Swift/QtUI/Roster/RosterModel.h')
-rw-r--r-- | Swift/QtUI/Roster/RosterModel.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/Swift/QtUI/Roster/RosterModel.h b/Swift/QtUI/Roster/RosterModel.h new file mode 100644 index 0000000..fc9b1f3 --- /dev/null +++ b/Swift/QtUI/Roster/RosterModel.h @@ -0,0 +1,29 @@ +#pragma once + +#include "Swift/QtUI/Roster/QtTreeWidgetItem.h" + +#include <QAbstractItemModel> +#include <QList> + +namespace Swift { +class RosterModel : public QAbstractItemModel { +Q_OBJECT +public: + RosterModel(); + ~RosterModel(); + void setRoot(QtTreeWidgetItem* tree); + int columnCount(const QModelIndex& parent = QModelIndex()) const; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; + QModelIndex index(int row, int column, const QModelIndex & parent = QModelIndex()) const; + QModelIndex index(QtTreeWidgetItem* item) const; + QModelIndex parent(const QModelIndex& index) const; + int rowCount(const QModelIndex& parent = QModelIndex()) const; +signals: + void itemExpanded(const QModelIndex& item, bool expanded); +private slots: + void handleItemChanged(QtTreeWidgetItem* item); +private: + QtTreeWidgetItem* tree_; +}; + +}
\ No newline at end of file |