aboutsummaryrefslogtreecommitdiff
path: root/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
diff options
context:
space:
mode:
Diffstat (limited to 'launcher/ui/pages/modplatform/flame/FlameResourceModels.h')
-rw-r--r--launcher/ui/pages/modplatform/flame/FlameResourceModels.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/launcher/ui/pages/modplatform/flame/FlameResourceModels.h b/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
new file mode 100644
index 00000000..b94377d3
--- /dev/null
+++ b/launcher/ui/pages/modplatform/flame/FlameResourceModels.h
@@ -0,0 +1,26 @@
+#pragma once
+
+#include "modplatform/flame/FlameAPI.h"
+
+namespace FlameMod {
+
+class ListModel : public ModPlatform::ListModel {
+ Q_OBJECT
+
+ public:
+ ListModel(FlameModPage* parent) : ModPlatform::ListModel(parent, new FlameAPI) {}
+ ~ListModel() override = default;
+
+ private:
+ 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;
+
+ // NOLINTNEXTLINE(modernize-avoid-c-arrays)
+ static const char* sorts[6];
+ inline auto getSorts() const -> const char** override { return sorts; };
+};
+
+} // namespace FlameMod