branchobj.h
author insilmaril
Mon, 04 Jan 2010 20:36:06 +0000
changeset 819 8f987e376035
parent 817 b486ffd0fa11
child 822 c2ce9944148c
permissions -rw-r--r--
various fixes
     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 (QGraphicsScene*,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 updateContentSize();
    31 	virtual void positionContents();
    32     virtual void move (double x,double y);
    33     virtual void move (QPointF);
    34     virtual void moveBy (double x,double y);
    35     virtual void moveBy (QPointF);
    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);	// set default attributes (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 BBox including children			
    50 	virtual QRectF getBBoxSizeWithChildren();	// return size of BBox including children  
    51 	virtual ConvexPolygon getBoundingPolygon();
    52 	virtual void calcBBoxSizeWithChildren();	// calc size of  BBox including children recursivly
    53 
    54 	virtual void setAnimation(const AnimPoint &ap);
    55 	virtual bool animate();
    56 
    57 protected:
    58 	QList<XLinkObj*> xlink;			// xlinks to other branches
    59 
    60 	AnimPoint anim;
    61 };
    62 
    63 
    64 #endif
    65