xlinkitem.h
author convert-repo
Fri, 23 Jul 2010 16:43:49 +0000
changeset 849 988f1908a7c4
parent 847 43268373032d
permissions -rw-r--r--
update tags
insilmaril@795
     1
#ifndef XLINKITEM_H
insilmaril@795
     2
#define XLINKITEM_H
insilmaril@795
     3
insilmaril@795
     4
class BranchItem;
insilmaril@847
     5
class QGraphicsScene;
insilmaril@795
     6
class XLinkObj;
insilmaril@795
     7
insilmaril@795
     8
#include "mapitem.h"
insilmaril@847
     9
#include "xlink.h"
insilmaril@795
    10
insilmaril@795
    11
/*! \brief xlinks are used to draw arbitrary connections between branches (BranchObj) in the map. */
insilmaril@795
    12
insilmaril@795
    13
/////////////////////////////////////////////////////////////////////////////
insilmaril@847
    14
insilmaril@795
    15
class XLinkItem:public MapItem {
insilmaril@795
    16
public:
insilmaril@795
    17
	enum XLinkState {undefinedXLink,initXLink,activeXLink,deleteXLink};	
insilmaril@795
    18
insilmaril@795
    19
	XLinkItem (const QList<QVariant> &data, TreeItem *parent=NULL);
insilmaril@795
    20
    virtual ~XLinkItem ();
insilmaril@795
    21
    virtual void init ();
insilmaril@847
    22
	void setLink (Link*);
insilmaril@847
    23
	Link* getLink ();
insilmaril@795
    24
	void updateXLink();
insilmaril@795
    25
	BranchItem* getPartnerBranch ();
insilmaril@795
    26
insilmaril@795
    27
private:
insilmaril@847
    28
	Link *link;
insilmaril@795
    29
};
insilmaril@795
    30
insilmaril@795
    31
#endif