author | insilmaril |
Mon, 08 Dec 2008 16:57:33 +0000 | |
changeset 729 | 7ddbe3fa34a1 |
parent 727 | 96402b172173 |
child 740 | 6dc0a20031f7 |
permissions | -rw-r--r-- |
insilmaril@725 | 1 |
#ifndef TREEMODEL_H |
insilmaril@725 | 2 |
#define TREEMODEL_H |
insilmaril@725 | 3 |
|
insilmaril@725 | 4 |
#include <QAbstractItemModel> |
insilmaril@725 | 5 |
#include <QModelIndex> |
insilmaril@725 | 6 |
#include <QVariant> |
insilmaril@725 | 7 |
|
insilmaril@726 | 8 |
|
insilmaril@725 | 9 |
class TreeItem; |
insilmaril@726 | 10 |
class LinkableMapObj; |
insilmaril@725 | 11 |
|
insilmaril@725 | 12 |
class TreeModel : public QAbstractItemModel |
insilmaril@725 | 13 |
{ |
insilmaril@725 | 14 |
Q_OBJECT |
insilmaril@725 | 15 |
|
insilmaril@725 | 16 |
public: |
insilmaril@725 | 17 |
TreeModel(QObject *parent = 0); |
insilmaril@725 | 18 |
~TreeModel(); |
insilmaril@725 | 19 |
|
insilmaril@725 | 20 |
QVariant data(const QModelIndex &index, int role) const; |
insilmaril@725 | 21 |
Qt::ItemFlags flags(const QModelIndex &index) const; |
insilmaril@725 | 22 |
QVariant headerData(int section, Qt::Orientation orientation, |
insilmaril@725 | 23 |
int role = Qt::DisplayRole) const; |
insilmaril@725 | 24 |
QModelIndex index(int row, int column, |
insilmaril@725 | 25 |
const QModelIndex &parent = QModelIndex()) const; |
insilmaril@725 | 26 |
QModelIndex parent(const QModelIndex &index) const; |
insilmaril@725 | 27 |
int rowCount(const QModelIndex &parent = QModelIndex()) const; |
insilmaril@725 | 28 |
int columnCount(const QModelIndex &parent = QModelIndex()) const; |
insilmaril@725 | 29 |
|
insilmaril@726 | 30 |
TreeItem *first(); |
insilmaril@726 | 31 |
TreeItem *next(); |
insilmaril@726 | 32 |
|
insilmaril@727 | 33 |
bool removeRows ( int row, int count, |
insilmaril@727 | 34 |
const QModelIndex & parent = QModelIndex() ); |
insilmaril@727 | 35 |
|
insilmaril@726 | 36 |
QModelIndex index (TreeItem* ti); |
insilmaril@725 | 37 |
|
insilmaril@729 | 38 |
protected: |
insilmaril@725 | 39 |
TreeItem *rootItem; |
insilmaril@726 | 40 |
static TreeItem* itFirst; |
insilmaril@726 | 41 |
static TreeItem* itCur; |
insilmaril@725 | 42 |
}; |
insilmaril@725 | 43 |
|
insilmaril@725 | 44 |
#endif |