summaryrefslogtreecommitdiffstats
blob: fc9b1f30480a2a25e13c6d822a2f5a4496ac7481 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
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_;
};

}