author | insilmaril |
Wed Jun 09 13:14:08 2010 +0000 (2010-06-09) | |
changeset 847 | 43268373032d |
permissions | -rw-r--r-- |
insilmaril@847 | 1 |
#ifndef LINK_H |
insilmaril@847 | 2 |
#define LINK_H |
insilmaril@847 | 3 |
|
insilmaril@847 | 4 |
#include <QColor> |
insilmaril@847 | 5 |
|
insilmaril@847 | 6 |
#include "xmlobj.h" |
insilmaril@847 | 7 |
|
insilmaril@847 | 8 |
class QPointF; |
insilmaril@847 | 9 |
class QGraphicsScene; |
insilmaril@847 | 10 |
class QString; |
insilmaril@847 | 11 |
|
insilmaril@847 | 12 |
class BranchItem; |
insilmaril@847 | 13 |
class LinkableMapObj; |
insilmaril@847 | 14 |
class VymModel; |
insilmaril@847 | 15 |
class XLinkItem; |
insilmaril@847 | 16 |
class XLinkObj; |
insilmaril@847 | 17 |
|
insilmaril@847 | 18 |
|
insilmaril@847 | 19 |
class Link:public XMLObj |
insilmaril@847 | 20 |
{ |
insilmaril@847 | 21 |
public: |
insilmaril@847 | 22 |
enum XLinkState {undefinedXLink,initXLink,activeXLink,deleteXLink}; |
insilmaril@847 | 23 |
|
insilmaril@847 | 24 |
Link (VymModel *m); |
insilmaril@847 | 25 |
virtual ~Link(); |
insilmaril@847 | 26 |
virtual void init (); |
insilmaril@847 | 27 |
void setBeginBranch (BranchItem*); |
insilmaril@847 | 28 |
BranchItem* getBeginBranch(); |
insilmaril@847 | 29 |
void setEndBranch (BranchItem*); |
insilmaril@847 | 30 |
void setEndPoint(QPointF); |
insilmaril@847 | 31 |
BranchItem* getEndBranch(); |
insilmaril@847 | 32 |
void setBeginLinkItem (XLinkItem*); |
insilmaril@847 | 33 |
XLinkItem* getBeginLinkItem(); |
insilmaril@847 | 34 |
void setEndLinkItem (XLinkItem*); |
insilmaril@847 | 35 |
XLinkItem* getEndLinkItem (); |
insilmaril@847 | 36 |
void setColor(QColor); |
insilmaril@847 | 37 |
QColor getColor(); |
insilmaril@847 | 38 |
void setWidth (int); |
insilmaril@847 | 39 |
int getWidth (); |
insilmaril@847 | 40 |
bool activate (); |
insilmaril@847 | 41 |
void deactivate (); |
insilmaril@847 | 42 |
void removeXLinkItem (XLinkItem *xli); |
insilmaril@847 | 43 |
void updateLink(); |
insilmaril@847 | 44 |
QString saveToDir (); |
insilmaril@847 | 45 |
XLinkObj* getXLinkObj(); |
insilmaril@847 | 46 |
XLinkObj* createMapObj(QGraphicsScene *scene); |
insilmaril@847 | 47 |
|
insilmaril@847 | 48 |
private: |
insilmaril@847 | 49 |
XLinkState xLinkState; // init during drawing or active |
insilmaril@847 | 50 |
QColor color; |
insilmaril@847 | 51 |
int width; |
insilmaril@847 | 52 |
|
insilmaril@847 | 53 |
XLinkObj *xlo; |
insilmaril@847 | 54 |
VymModel *model; |
insilmaril@847 | 55 |
|
insilmaril@847 | 56 |
BranchItem *beginBranch; |
insilmaril@847 | 57 |
BranchItem *endBranch; |
insilmaril@847 | 58 |
XLinkItem *beginLinkItem; |
insilmaril@847 | 59 |
XLinkItem *endLinkItem; |
insilmaril@847 | 60 |
}; |
insilmaril@847 | 61 |
|
insilmaril@847 | 62 |
|
insilmaril@847 | 63 |
#endif |
insilmaril@847 | 64 |