2014-05-09 16:16:25 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <memory>
|
2014-05-10 00:53:32 +01:00
|
|
|
#include <QList>
|
|
|
|
#include "JarMod.h"
|
2014-05-09 16:16:25 +01:00
|
|
|
|
2014-05-19 01:22:09 +01:00
|
|
|
class InstanceVersion;
|
2014-05-09 16:16:25 +01:00
|
|
|
class VersionPatch
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual ~VersionPatch(){};
|
2014-05-19 01:22:09 +01:00
|
|
|
virtual void applyTo(InstanceVersion *version) = 0;
|
2014-05-10 00:53:32 +01:00
|
|
|
|
2014-05-11 11:37:21 +01:00
|
|
|
virtual bool isMinecraftVersion() = 0;
|
2014-05-09 16:16:25 +01:00
|
|
|
virtual bool hasJarMods() = 0;
|
2014-05-10 00:53:32 +01:00
|
|
|
virtual QList<JarmodPtr> getJarMods() = 0;
|
|
|
|
|
|
|
|
virtual bool isMoveable()
|
|
|
|
{
|
|
|
|
return getOrder() >= 0;
|
|
|
|
}
|
|
|
|
virtual void setOrder(int order) = 0;
|
|
|
|
virtual int getOrder() = 0;
|
|
|
|
|
|
|
|
virtual QString getPatchID() = 0;
|
|
|
|
virtual QString getPatchName() = 0;
|
|
|
|
virtual QString getPatchVersion() = 0;
|
|
|
|
virtual QString getPatchFilename() = 0;
|
2014-08-11 01:17:48 +01:00
|
|
|
virtual bool isCustom() = 0;
|
2014-05-09 16:16:25 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
typedef std::shared_ptr<VersionPatch> VersionPatchPtr;
|