treemodel.h
author insilmaril
Wed, 04 Feb 2009 16:33:16 +0000
changeset 740 6dc0a20031f7
parent 729 7ddbe3fa34a1
child 741 1b4d1ea6ea8c
permissions -rw-r--r--
started to rewrite first(), next()
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@740
    40
	static QModelIndex ixCur;
insilmaril@740
    41
	static TreeItem *itStartParent;
insilmaril@725
    42
};
insilmaril@725
    43
insilmaril@725
    44
#endif