aboutsummaryrefslogtreecommitdiff
path: root/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
diff options
context:
space:
mode:
authorflow <flowlnlnln@gmail.com>2023-01-29 18:07:49 -0300
committerflow <flowlnlnln@gmail.com>2023-02-05 17:02:56 -0300
commitada5e88eb933a41691121316c78cd2e564965fa0 (patch)
tree05cbf24f0e42e2a673ac8fafcd04de434b9d1b0d /launcher/ui/pages/modplatform/flame/FlameResourceModels.h
parentb724607e31d102c50cb42225b4a31f2932b2eb61 (diff)
downloadPrismLauncher-ada5e88eb933a41691121316c78cd2e564965fa0.tar.gz
PrismLauncher-ada5e88eb933a41691121316c78cd2e564965fa0.tar.bz2
PrismLauncher-ada5e88eb933a41691121316c78cd2e564965fa0.zip
feat(RD): add texture pack downloader
This extends the resource pack downloader, with the custom behavior of filtering the versions that shows up, to those <= 1.6. As always, Flame is funky and requires a bit more workarounds than average. This will also get a nice improvement when the Version parsing and comparison PR gets merged! :D Signed-off-by: flow <flowlnlnln@gmail.com>
Diffstat (limited to 'launcher/ui/pages/modplatform/flame/FlameResourceModels.h')
-rw-r--r--launcher/ui/pages/modplatform/flame/FlameResourceModels.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/launcher/ui/pages/modplatform/flame/FlameResourceModels.h b/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
index be214716..0252ac40 100644
--- a/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
+++ b/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
@@ -46,4 +46,25 @@ class FlameResourcePackModel : public ResourcePackResourceModel {
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