]> git.sven.stormbind.net Git - sven/vym.git/blob - flagobj.h
Import Upstream version 2.6.11
[sven/vym.git] / flagobj.h
1 #ifndef FLAGOBJ_H
2 #define FLAGOBJ_H
3
4
5 #include <QAction>
6 #include <QPixmap>
7
8 #include "flag.h"
9 #include "mapobj.h"
10 #include "imageobj.h"
11
12 /*! \brief One flag which is visible in the map. 
13
14     Flags are aligned in a row. 
15 */
16
17
18 /////////////////////////////////////////////////////////////////////////////
19 class FlagObj:public MapObj {
20 public:
21     FlagObj (QGraphicsItem *);
22     ~FlagObj ();
23     virtual void init ();
24     virtual void copy (FlagObj*);
25     virtual void move (double x,double y);      // move to absolute Position
26     virtual void moveBy (double x,double y);    // move to relative Position
27     virtual void setZValue (double z);
28     virtual void setVisibility(bool);
29     void load (const QString&);
30     void load (const QPixmap&);
31     void setName (const QString&);
32     const QString getName ();
33     QPixmap getPixmap();
34     void setAction(QAction*);
35     void setAlwaysVisible (bool b);
36     bool isAlwaysVisible ();
37     bool isActive();
38     void toggle();
39     void activate();
40     void deactivate();
41     void saveToDir (const QString&, const QString&);
42     
43 protected:  
44     QString name;
45     bool state;
46     bool avis;
47     virtual void positionBBox();
48     virtual void calcBBoxSize();
49 private:
50     ImageObj* icon;
51 };
52
53 #endif