treeitem.h
author insilmaril
Mon, 06 Oct 2008 11:10:20 +0000
changeset 726 7f43b93242aa
parent 725 7ea31701156e
child 727 96402b172173
permissions -rw-r--r--
Various fixes, also from 1.12. branch
insilmaril@725
     1
#ifndef TREEITEM_H
insilmaril@725
     2
#define TREEITEM_H
insilmaril@725
     3
insilmaril@725
     4
#include <QList>
insilmaril@725
     5
#include <QVariant>
insilmaril@725
     6
insilmaril@726
     7
class LinkableMapObj;
insilmaril@726
     8
insilmaril@725
     9
class TreeItem
insilmaril@725
    10
{
insilmaril@725
    11
public:
insilmaril@726
    12
	enum Type {Undefined,MapCenter,Branch};
insilmaril@725
    13
    TreeItem(const QList<QVariant> &data, TreeItem *parent = 0);
insilmaril@725
    14
    ~TreeItem();
insilmaril@725
    15
insilmaril@725
    16
    void appendChild(TreeItem *child);
insilmaril@725
    17
insilmaril@725
    18
    TreeItem *child(int row);
insilmaril@725
    19
    int childCount() const;
insilmaril@725
    20
    int columnCount() const;
insilmaril@725
    21
    QVariant data(int column) const;
insilmaril@726
    22
	void setHeading (const QString s);
insilmaril@726
    23
	QString getHeading();
insilmaril@726
    24
	void setType (const Type t);
insilmaril@726
    25
	Type getType ();
insilmaril@726
    26
	QString getTypeName ();
insilmaril@726
    27
	
insilmaril@725
    28
    int row() const;
insilmaril@726
    29
	int column() const;
insilmaril@725
    30
    TreeItem *parent();
insilmaril@725
    31
insilmaril@726
    32
	// Relation to map objects in graphicsscene
insilmaril@726
    33
	LinkableMapObj* getLMO();
insilmaril@726
    34
	void setLMO (LinkableMapObj*);
insilmaril@726
    35
insilmaril@725
    36
private:
insilmaril@725
    37
    QList<TreeItem*> childItems;
insilmaril@725
    38
    QList<QVariant> itemData;
insilmaril@725
    39
    TreeItem *parentItem;
insilmaril@726
    40
 
insilmaril@726
    41
	Type type;
insilmaril@726
    42
	LinkableMapObj *lmo;
insilmaril@725
    43
};
insilmaril@725
    44
insilmaril@725
    45
#endif