4 #include <QGraphicsItem>
8 #define dZ_BBOX 0 // testing
10 #define dZ_FRAME_LOW 10
14 #define dZ_FLOATIMG 70
18 #define Z_LINEEDIT 10000
24 /*! \brief Base class for all objects visible on a map
27 class MapObj:public XMLObj, public QGraphicsItem {
29 MapObj (QGraphicsItem *parent=NULL,TreeItem *ti=NULL);
32 virtual void copy (MapObj*);
34 virtual void setTreeItem(TreeItem *);
35 virtual TreeItem* getTreeItem() const;
39 virtual qreal width();
40 virtual qreal height();
41 virtual QPointF getAbsPos();
42 virtual QString getPos(); //! Return position as string (x,y)
43 virtual void move (double x,double y); //! move to absolute Position
44 virtual void move (QPointF p);
45 virtual void moveBy (double x,double y); //! move to relative Position
47 virtual QRectF boundingRect () const;
48 virtual void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*);
50 virtual QRectF getBBox(); //! returns bounding box
51 virtual ConvexPolygon getBoundingPolygon(); //! return bounding convex polygon
52 virtual QPolygonF getClickPoly(); //! returns polygon to click
53 virtual QPainterPath getClickPath(); //! returns path to click
54 virtual bool isInClickBox (const QPointF &p); //! Checks if p is in clickBox
55 virtual QSizeF getSize(); //! returns size of bounding box
57 virtual void setRotation(const qreal &a);
58 virtual qreal getRotation();
59 virtual bool isVisibleObj();
60 virtual void setVisibility(bool);
61 virtual void positionBBox();
62 virtual void calcBBoxSize();
65 QRectF bbox; // bounding box of MO itself
66 QPolygonF clickPoly; // area where mouseclicks are found
67 QPointF absPos; // Position on canvas
70 qreal angle; //! Rotation angle
72 TreeItem *treeItem; //! Crossrefence to treemodel
74 QGraphicsPolygonItem *boundingPolygon; //FIXME-3 testing only