X-Git-Url: https://git.sven.stormbind.net/?a=blobdiff_plain;f=src%2Fflagobj.h;fp=src%2Fflagobj.h;h=e43ea8bf90eeba9c4a8040ee7b7168a5c3acd377;hb=d483bd8e6523c23c6f1d8908a2e0611c2bc9ff4f;hp=0000000000000000000000000000000000000000;hpb=7dfa3fe589d1722d49681f42cdb0bf1e6efb5223;p=sven%2Fvym.git diff --git a/src/flagobj.h b/src/flagobj.h new file mode 100644 index 0000000..e43ea8b --- /dev/null +++ b/src/flagobj.h @@ -0,0 +1,45 @@ +#ifndef FLAGOBJ_H +#define FLAGOBJ_H + +#include +#include +#include + +#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