]> git.sven.stormbind.net Git - sven/vym.git/blob - flag.h
d63d752aff2ba0eafde52a609c128d83b4460b05
[sven/vym.git] / flag.h
1 #ifndef FLAG_H
2 #define FLAG_H
3
4
5 #include <QAction>
6 #include <QPixmap>
7
8 #include "xmlobj.h"
9
10 /*! \brief One flag belonging to a FlagRow.
11
12     Each TreeItem in a VymModel has a set of standard flags and system
13     flags.
14 */
15
16
17 /////////////////////////////////////////////////////////////////////////////
18 class Flag:public XMLObj {
19 public:
20     Flag ();
21     Flag (const QString &fname);
22     Flag (Flag*);
23     ~Flag ();
24     virtual void init ();
25     virtual void copy (Flag*);
26     void load (const QString&);
27     void load (const QPixmap&);
28     void setName (const QString&);
29     const QString getName ();
30     void setVisible (bool b);
31     bool isVisible ();
32     void setGroup (const QString&);
33     const QString getGroup();
34     void unsetGroup ();
35     void setToolTip(const QString&);
36     const QString getToolTip();
37     QPixmap getPixmap();
38     void setAction (QAction *a);
39     QAction* getAction ();
40     void setUsed (bool);    //FIXME-3 needed?
41     bool isUsed();
42     void saveToDir (const QString&, const QString&);
43     
44 protected:  
45     QString name;
46     bool visible;
47     QString group;
48     QString tooltip;
49     QAction *action;
50     bool state;
51     bool used;
52 private:
53     QPixmap pixmap;
54 };
55
56 #endif