linkobj.h
author insilmaril
Sun, 30 Jan 2005 23:28:09 +0000
changeset 87 5cf1836a440a
parent 86 0ed77eb5d1cd
child 89 9db3eaa21237
permissions -rw-r--r--
added linkobj.*
     1 #ifndef LINKOBJ_H
     2 #define LINKOBJ_H
     3 
     4 #include "linkablemapobj.h"
     5 
     6 enum LinkState {undefinedLink,initLink,activeLink,deleteLink};
     7 
     8 /////////////////////////////////////////////////////////////////////////////
     9 class LinkObj:public MapObj {
    10 public:
    11     LinkObj ();
    12     LinkObj (QCanvas*);
    13     ~LinkObj ();
    14     virtual void init ();
    15     virtual void copy (LinkObj*);
    16 	void setBegin (BranchObj*);
    17 	void setEnd   (BranchObj*);
    18 	void setEnd   (QPoint);
    19 	bool activate ();			// Sets pointers in branchObjects
    20 	void deactivate();			// removes those pointers
    21 	bool isUsed();				// true, if at least on branch uses it
    22 	void updateLink();
    23 	void positionBBox();
    24 	void calcBBoxSize();
    25 	void setVisibility (bool);
    26 
    27 private:
    28 	QCanvasLine *line;
    29 	BranchObj *beginBranch;
    30 	BranchObj *endBranch;
    31 	LinkState linkState;	// init during drawing or active
    32 	QPoint beginPos;
    33 	QPoint   endPos;
    34 };
    35 
    36 #endif