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

@ -37,6 +37,7 @@ BaseInstance::BaseInstance(BaseInstancePrivate *d_in, const QString &rootDir,
I_D(BaseInstance);
d->m_settings = settings_obj;
d->m_rootDir = rootDir;
d->m_flags = 0;
settings().registerSetting("name", "Unnamed Instance");
settings().registerSetting("iconKey", "default");
@ -146,6 +147,28 @@ SettingsObject &BaseInstance::settings() const
return *d->m_settings;
}
BaseInstance::InstanceFlags BaseInstance::flags() const
{
I_D(const BaseInstance);
return InstanceFlags(d->m_flags);
}
void BaseInstance::setFlags(const BaseInstance::InstanceFlags flags)
{
I_D(BaseInstance);
if (flags != d->m_flags)
{
d->m_flags = flags;
emit flagsChanged();
emit propertiesChanged(this);
}
}
bool BaseInstance::canLaunch() const
{
return !(flags() & VersionBrokenFlag);
}
QString BaseInstance::baseJar() const
{
I_D(BaseInstance);