author | insilmaril |
Mon, 16 Nov 2009 09:47:10 +0000 | |
changeset 805 | fc7a93ff97c3 |
parent 774 | 2f002657dada |
permissions | -rw-r--r-- |
insilmaril@774 | 1 |
#ifndef FLAGROW_H |
insilmaril@774 | 2 |
#define FLAGROW_H |
insilmaril@774 | 3 |
|
insilmaril@774 | 4 |
#include <QStringList> |
insilmaril@774 | 5 |
#include <QToolBar> |
insilmaril@774 | 6 |
|
insilmaril@774 | 7 |
#include "flag.h" |
insilmaril@774 | 8 |
#include "xmlobj.h" |
insilmaril@774 | 9 |
|
insilmaril@774 | 10 |
/*! \brief A set of flags (Flag). |
insilmaril@774 | 11 |
|
insilmaril@774 | 12 |
A toolbar can be created from the flags in this row. |
insilmaril@774 | 13 |
The data needed for represention in a vym map |
insilmaril@774 | 14 |
is stored in FlagRowObj. |
insilmaril@774 | 15 |
*/ |
insilmaril@774 | 16 |
|
insilmaril@774 | 17 |
class FlagRow:public XMLObj { |
insilmaril@774 | 18 |
public: |
insilmaril@774 | 19 |
FlagRow (); |
insilmaril@774 | 20 |
~FlagRow (); |
insilmaril@774 | 21 |
void addFlag (Flag *flag); |
insilmaril@774 | 22 |
Flag *getFlag (const QString &name); |
insilmaril@774 | 23 |
QStringList activeFlagNames(); |
insilmaril@774 | 24 |
bool isActive(const QString &name); |
insilmaril@774 | 25 |
|
insilmaril@774 | 26 |
/*! \brief Toggle a Flag |
insilmaril@774 | 27 |
|
insilmaril@774 | 28 |
To activate a flag it will be copied from masterRow to current row. |
insilmaril@774 | 29 |
*/ |
insilmaril@774 | 30 |
void toggle (const QString&, FlagRow *masterRow=NULL); |
insilmaril@774 | 31 |
void activate(const QString&); |
insilmaril@774 | 32 |
void deactivate(const QString&); |
insilmaril@774 | 33 |
void deactivateAll(); |
insilmaril@774 | 34 |
void setEnabled (bool); |
insilmaril@774 | 35 |
void setShowFlags (bool); |
insilmaril@774 | 36 |
void resetUsedCounter(); |
insilmaril@774 | 37 |
QString saveToDir (const QString &,const QString &,bool); |
insilmaril@774 | 38 |
void setName (const QString&); // prefix for exporting flags to dir |
insilmaril@774 | 39 |
void setToolBar (QToolBar *tb); |
insilmaril@774 | 40 |
void setMasterRow (FlagRow *row); |
insilmaril@774 | 41 |
void updateToolBar(const QStringList &activeNames); |
insilmaril@774 | 42 |
|
insilmaril@774 | 43 |
private: |
insilmaril@774 | 44 |
QToolBar *toolBar; |
insilmaril@774 | 45 |
FlagRow *masterRow; |
insilmaril@774 | 46 |
QList <Flag*> flags; |
insilmaril@774 | 47 |
QStringList activeNames; //! Lists all names of currently active flags |
insilmaril@774 | 48 |
QString rowName; //! Name of this collection of flags |
insilmaril@774 | 49 |
// bool showFlags; // FloatObjects want to hide their flags |
insilmaril@774 | 50 |
}; |
insilmaril@774 | 51 |
#endif |
insilmaril@774 | 52 |