]> git.sven.stormbind.net Git - sven/vym.git/blobdiff - src/flagobj.h
New upstream version 2.9.22
[sven/vym.git] / src / flagobj.h
diff --git a/src/flagobj.h b/src/flagobj.h
new file mode 100644 (file)
index 0000000..e43ea8b
--- /dev/null
@@ -0,0 +1,45 @@
+#ifndef FLAGOBJ_H
+#define FLAGOBJ_H
+
+#include <QAction>
+#include <QPixmap>
+#include <QUuid>
+
+#include "flag.h"
+#include "imageobj.h"
+#include "mapobj.h"
+
+/*! \brief One flag which is visible in the map.
+
+    Flags are aligned in a row.
+*/
+
+/////////////////////////////////////////////////////////////////////////////
+class FlagObj : public MapObj {
+  public:
+    FlagObj(QGraphicsItem *);
+    ~FlagObj();
+    virtual void init();
+    virtual void move(double x, double y);   // move to absolute Position
+    virtual void moveBy(double x, double y); // move to relative Position
+    virtual void setZValue(double z);
+    virtual void setVisibility(bool);
+    void loadImage(ImageObj *io);
+    void setUuid(const QUuid &uid);
+    const QUuid getUuid();
+    QPixmap getPixmap();
+    void setAction(QAction *);
+    void setAlwaysVisible(bool b);
+    bool isAlwaysVisible();
+
+  protected:
+    QUuid uid;
+    bool avis;
+    virtual void positionBBox();
+    virtual void calcBBoxSize();
+
+  private:
+    ImageObj *imageObj;
+};
+
+#endif