From 743af4769ee59b5830d79139852dda0679b28a03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Sun, 17 May 2015 23:38:28 +0200 Subject: GH-952 Hardcore version page tweakery Version patches get a lot of new flags that determine which actions are allowed Version page respects the flags Customize, revert and edit for version patches Builting patches can be customized --- logic/minecraft/ProfilePatch.h | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'logic/minecraft/ProfilePatch.h') diff --git a/logic/minecraft/ProfilePatch.h b/logic/minecraft/ProfilePatch.h index 2e97677e..de42cb7a 100644 --- a/logic/minecraft/ProfilePatch.h +++ b/logic/minecraft/ProfilePatch.h @@ -2,6 +2,7 @@ #include #include +#include #include "JarMod.h" class MinecraftProfile; @@ -10,15 +11,20 @@ class ProfilePatch public: virtual ~ProfilePatch(){}; virtual void applyTo(MinecraftProfile *version) = 0; + virtual QJsonDocument toJson(bool saveOrder) = 0; virtual bool isMinecraftVersion() = 0; virtual bool hasJarMods() = 0; virtual QList getJarMods() = 0; - virtual bool isMoveable() - { - return getOrder() >= 0; - } + virtual bool isMoveable() = 0; + virtual bool isCustomizable() = 0; + virtual bool isRevertible() = 0; + virtual bool isRemovable() = 0; + virtual bool isCustom() = 0; + virtual bool isEditable() = 0; + virtual bool isVersionChangeable() = 0; + virtual void setOrder(int order) = 0; virtual int getOrder() = 0; @@ -26,7 +32,6 @@ public: virtual QString getPatchName() = 0; virtual QString getPatchVersion() = 0; virtual QString getPatchFilename() = 0; - virtual bool isCustom() = 0; }; typedef std::shared_ptr ProfilePatchPtr; -- cgit v1.2.3