Instance flags. Currently used for marking instances as broken. Can later be used for badges.

This commit is contained in:
Jan Dalheimer
2014-02-17 20:31:50 +01:00
parent 4e8be668cb
commit 0b56b5efaf
10 changed files with 83 additions and 10 deletions

View File

@ -175,6 +175,17 @@ public:
/// FIXME: this really should be elsewhere...
virtual QString instanceConfigFolder() const = 0;
enum InstanceFlag
{
NoFlags = 0x00,
VersionBrokenFlag = 0x01
};
Q_DECLARE_FLAGS(InstanceFlags, InstanceFlag)
InstanceFlags flags() const;
void setFlags(const BaseInstance::InstanceFlags flags);
bool canLaunch() const;
signals:
/*!
* \brief Signal emitted when properties relevant to the instance view change
@ -189,6 +200,8 @@ signals:
*/
void nuked(BaseInstance *inst);
void flagsChanged();
protected slots:
void iconUpdated(QString key);
@ -198,3 +211,5 @@ protected:
// pointer for lazy people
typedef std::shared_ptr<BaseInstance> InstancePtr;
Q_DECLARE_OPERATORS_FOR_FLAGS(BaseInstance::InstanceFlags)