]> git.sven.stormbind.net Git - sven/vym.git/blob - branchobj.h
Import Upstream version 2.6.11
[sven/vym.git] / branchobj.h
1 #ifndef BRANCHOBJ_H
2 #define BRANCHOBJ_H
3
4 #include "floatimageobj.h"
5 #include "linkablemapobj.h"
6 #include "ornamentedobj.h"
7 #include "xlinkobj.h"
8
9 /*! \brief A branch visible in the map */
10
11 /////////////////////////////////////////////////////////////////////////////
12 class BranchObj:public OrnamentedObj {
13 public:
14     /*! New branches will get use same color for heading as parent */
15     enum BranchModification {NewBranch, MovedBranch};
16
17     BranchObj (QGraphicsItem *parent=NULL,TreeItem *ti=NULL);
18     ~BranchObj ();
19     virtual void init ();
20     virtual void copy (BranchObj*);
21     void clear();
22
23     virtual void setParObjTmp (LinkableMapObj*,QPointF,int);// Only for moving Obj around
24     virtual void unsetParObjTmp();          // reuse original ParObj
25
26     virtual void setVisibility(bool,int);   // set visibility
27     virtual void setVisibility(bool);       // set vis. for w
28     virtual void setLinkColor();            // set the color of link
29
30     virtual void positionContents();
31     virtual void move (double x,double y);
32     virtual void move (QPointF);
33     virtual void moveBy (double x,double y);
34     virtual void moveBy (QPointF);
35
36     virtual void positionBBox();
37     virtual void calcBBoxSize();
38     virtual void setDockPos();
39     
40     virtual void updateData();  //! Update represantatio of heading, flags, etc.
41
42 public: 
43     virtual void setDefAttr (BranchModification, bool keepFrame=false); // set default attributes (frame, font, size, ...)
44
45     virtual void alignRelativeTo(const QPointF, bool alignSelf=false );
46     virtual void reposition();
47     virtual void unsetAllRepositionRequests();
48
49     virtual QRectF getTotalBBox();      // return size of BBox including children  
50     virtual ConvexPolygon getBoundingPolygon();
51     virtual void calcBBoxSizeWithChildren();    // calc size of  BBox including children recursivly
52
53     virtual void setAnimation(const AnimPoint &ap);
54     virtual void stopAnimation();
55     virtual bool animate();
56
57 protected:
58     AnimPoint anim;
59 };
60
61
62 #endif
63