X-Git-Url: https://git.sven.stormbind.net/?a=blobdiff_plain;f=src%2Fflagrowobj.h;fp=src%2Fflagrowobj.h;h=a877c7dac0bedf942130cdbef6d6b758030748f5;hb=d483bd8e6523c23c6f1d8908a2e0611c2bc9ff4f;hp=0000000000000000000000000000000000000000;hpb=7dfa3fe589d1722d49681f42cdb0bf1e6efb5223;p=sven%2Fvym.git diff --git a/src/flagrowobj.h b/src/flagrowobj.h new file mode 100644 index 0000000..a877c7d --- /dev/null +++ b/src/flagrowobj.h @@ -0,0 +1,37 @@ +#ifndef FLAGROWOBJ_H +#define FLAGROWOBJ_H + +#include + +//#include "mapobj.h" +#include "flagobj.h" + +class Flag; + +/*! \brief A collection of flags (FlagObj) in a map. + + The flags are aligned horizontally in a row on the map. + */ + +class FlagRowObj : public MapObj { + public: + FlagRowObj(); + FlagRowObj(QGraphicsItem *); + ~FlagRowObj(); + virtual void move(double, double); + virtual void moveBy(double, double); + virtual void setZValue(double z); + virtual void setVisibility(bool); + void updateActiveFlagObjs(const QList, FlagRowMaster *masterRowMain, + FlagRowMaster *masterRowOptional = NULL); + virtual void positionBBox(); + virtual void calcBBoxSize(); + bool isFlagActive(const QUuid &); + void activateFlag(Flag *flag); + FlagObj *findFlagObjByUid(const QUuid &); + virtual QUuid findFlagUidByPos(const QPointF &p); // Find flag by position + private: + QList flagobjs; + bool showFlags; // FloatObjects want to hide their flags +}; +#endif