author | insilmaril |
Mon Oct 06 11:10:20 2008 +0000 (2008-10-06) | |
changeset 726 | 7f43b93242aa |
parent 725 | 7ea31701156e |
child 727 | 96402b172173 |
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@726 | 33 |
protected: |
insilmaril@726 | 34 |
QModelIndex index (TreeItem* ti); |
insilmaril@726 | 35 |
TreeItem *LMOToItem(LinkableMapObj*); |
insilmaril@725 | 36 |
void setupModelData(TreeItem *parent); |
insilmaril@725 | 37 |
|
insilmaril@725 | 38 |
TreeItem *rootItem; |
insilmaril@726 | 39 |
static TreeItem* itFirst; |
insilmaril@726 | 40 |
static TreeItem* itCur; |
insilmaril@725 | 41 |
}; |
insilmaril@725 | 42 |
|
insilmaril@725 | 43 |
#endif |