aboutsummaryrefslogtreecommitdiff
path: root/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
diff options
context:
space:
mode:
authorSefa Eyeoglu <contact@scrumplex.net>2023-03-02 10:08:45 +0000
committerGitHub <noreply@github.com>2023-03-02 10:08:45 +0000
commit9265c319a96b3dd5681767c196a397fbbae9164a (patch)
tree2f2602a604d64201f1d626dc8655d6edfa0b3e0d /launcher/ui/pages/modplatform/flame/FlameResourceModels.h
parent9f202caf9356ebaf5fd845210adea5e935d4350f (diff)
parent89255e34bd0651ab226518090667bef92066d80c (diff)
downloadPrismLauncher-9265c319a96b3dd5681767c196a397fbbae9164a.tar.gz
PrismLauncher-9265c319a96b3dd5681767c196a397fbbae9164a.tar.bz2
PrismLauncher-9265c319a96b3dd5681767c196a397fbbae9164a.zip
Merge pull request #788 from flowln/other_resource_downloaders_two
Add resource pack, texture pack and shader pack downloaders
Diffstat (limited to 'launcher/ui/pages/modplatform/flame/FlameResourceModels.h')
-rw-r--r--launcher/ui/pages/modplatform/flame/FlameResourceModels.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/launcher/ui/pages/modplatform/flame/FlameResourceModels.h b/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
index 625a2a7d..0252ac40 100644
--- a/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
+++ b/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
@@ -5,6 +5,7 @@
#pragma once
#include "ui/pages/modplatform/ModModel.h"
+#include "ui/pages/modplatform/ResourcePackModel.h"
#include "ui/pages/modplatform/flame/FlameResourcePages.h"
namespace ResourceDownload {
@@ -27,4 +28,43 @@ class FlameModModel : public ModModel {
auto documentToArray(QJsonDocument& obj) const -> QJsonArray override;
};
+class FlameResourcePackModel : public ResourcePackResourceModel {
+ Q_OBJECT
+
+ public:
+ FlameResourcePackModel(const BaseInstance&);
+ ~FlameResourcePackModel() override = default;
+
+ private:
+ [[nodiscard]] QString debugName() const override { return Flame::debugName() + " (Model)"; }
+ [[nodiscard]] QString metaEntryBase() const override { return Flame::metaEntryBase(); }
+
+ void loadIndexedPack(ModPlatform::IndexedPack& m, QJsonObject& obj) override;
+ void loadExtraPackInfo(ModPlatform::IndexedPack& m, QJsonObject& obj) override;
+ void loadIndexedPackVersions(ModPlatform::IndexedPack& m, QJsonArray& arr) override;
+
+ auto documentToArray(QJsonDocument& obj) const -> QJsonArray override;
+};
+
+class FlameTexturePackModel : public TexturePackResourceModel {
+ Q_OBJECT
+
+ public:
+ FlameTexturePackModel(const BaseInstance&);
+ ~FlameTexturePackModel() override = default;
+
+ private:
+ [[nodiscard]] QString debugName() const override { return Flame::debugName() + " (Model)"; }
+ [[nodiscard]] QString metaEntryBase() const override { return Flame::metaEntryBase(); }
+
+ void loadIndexedPack(ModPlatform::IndexedPack& m, QJsonObject& obj) override;
+ void loadExtraPackInfo(ModPlatform::IndexedPack& m, QJsonObject& obj) override;
+ void loadIndexedPackVersions(ModPlatform::IndexedPack& m, QJsonArray& arr) override;
+
+ ResourceAPI::SearchArgs createSearchArguments() override;
+ ResourceAPI::VersionSearchArgs createVersionsArguments(QModelIndex&) override;
+
+ auto documentToArray(QJsonDocument& obj) const -> QJsonArray override;
+};
+
} // namespace ResourceDownload