diff -r 6783e13bb05d -r f688a9913724 xlinkobj.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/xlinkobj.h Mon Apr 18 06:17:00 2005 +0000 @@ -0,0 +1,45 @@ +#ifndef XLINKOBJ_H +#define XLINKOBJ_H + +#include "linkablemapobj.h" + +enum XLinkState {undefinedXLink,initXLink,activeXLink,deleteXLink}; + +///////////////////////////////////////////////////////////////////////////// +class XLinkObj:public MapObj { +public: + XLinkObj (); + XLinkObj (QCanvas*); + ~XLinkObj (); + virtual void init (); + virtual void copy (XLinkObj*); + void setBegin (BranchObj*); + void setEnd (BranchObj*); + void setEnd (QPoint); + void setColor(QColor); + bool activate (); // Sets pointers in branchObjects + void deactivate(); // removes those pointers + bool isUsed(); // true, if at least on branch uses it + void updateXLink(); + BranchObj* otherBranch (BranchObj*); + void positionBBox(); + void calcBBoxSize(); + void setVisibility (bool); + void setVisibility (); + QString saveToDir (); + +private: + static int arrowSize; + static QColor defXLinkColor; + QColor xLinkColor; + QCanvasLine *line; + QCanvasPolygon *poly; + BranchObj *beginBranch; + BranchObj *endBranch; + BranchObj *visBranch; // the "visible" part of a partially scrolled link + XLinkState xLinkState; // init during drawing or active + QPoint beginPos; + QPoint endPos; +}; + +#endif