]> git.sven.stormbind.net Git - sven/vym.git/blob - src/flagobj.h
Replace Pierre as the maintainer
[sven/vym.git] / src / flagobj.h
1 #ifndef FLAGOBJ_H
2 #define FLAGOBJ_H
3
4 #include <QAction>
5 #include <QPixmap>
6 #include <QUuid>
7
8 #include "flag.h"
9 #include "imageobj.h"
10 #include "mapobj.h"
11
12 /*! \brief One flag which is visible in the map.
13
14     Flags are aligned in a row.
15 */
16
17 /////////////////////////////////////////////////////////////////////////////
18 class FlagObj : public MapObj {
19   public:
20     FlagObj(QGraphicsItem *);
21     ~FlagObj();
22     virtual void init();
23     virtual void move(double x, double y);   // move to absolute Position
24     virtual void moveBy(double x, double y); // move to relative Position
25     virtual void setZValue(double z);
26     virtual void setVisibility(bool);
27     void loadImage(ImageObj *io);
28     void setUuid(const QUuid &uid);
29     const QUuid getUuid();
30     QPixmap getPixmap();
31     void setAction(QAction *);
32     void setAlwaysVisible(bool b);
33     bool isAlwaysVisible();
34
35   protected:
36     QUuid uid;
37     bool avis;
38     virtual void positionBBox();
39     virtual void calcBBoxSize();
40
41   private:
42     ImageObj *imageObj;
43 };
44
45 #endif