insilmaril@0: #ifndef FLAGROWOBJ_H insilmaril@0: #define FLAGROWOBJ_H insilmaril@0: insilmaril@366: #include insilmaril@0: insilmaril@766: //#include "mapobj.h" insilmaril@0: #include "flagobj.h" insilmaril@0: insilmaril@767: class Flag; insilmaril@767: insilmaril@767: /*! \brief A collection of flags (FlagObj) in a map. insilmaril@468: insilmaril@468: The flags are aligned horizontally in a row on the map. insilmaril@468: */ insilmaril@468: insilmaril@767: class FlagRowObj:public MapObj { insilmaril@0: public: insilmaril@0: FlagRowObj (); insilmaril@408: FlagRowObj (QGraphicsScene *); insilmaril@0: ~FlagRowObj (); insilmaril@0: virtual void init (); insilmaril@0: virtual void copy (FlagRowObj*); insilmaril@0: virtual void move (double,double); insilmaril@0: virtual void moveBy (double,double); insilmaril@0: virtual void setVisibility(bool); insilmaril@0: virtual FlagObj* addFlag (FlagObj *fo); // make deep copy of FlagObj insilmaril@767: virtual QStringList activeFlagNames(); insilmaril@0: virtual void positionBBox(); insilmaril@0: virtual void calcBBoxSize(); insilmaril@408: virtual QString getFlagName (const QPointF &p); // Find flag by position insilmaril@0: bool isActive(const QString&); insilmaril@767: void activate (Flag *flag); insilmaril@0: void deactivate(const QString&); insilmaril@257: void setShowFlags (bool); insilmaril@819: FlagObj* findFlag (const QString&); insilmaril@0: private: insilmaril@406: QList flag; insilmaril@257: bool showFlags; // FloatObjects want to hide their flags insilmaril@0: }; insilmaril@0: #endif