diff options
Diffstat (limited to 'launcher/modplatform/ResourceAPI.h')
-rw-r--r-- | launcher/modplatform/ResourceAPI.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/launcher/modplatform/ResourceAPI.h b/launcher/modplatform/ResourceAPI.h index d4c9af8a..a8f300b4 100644 --- a/launcher/modplatform/ResourceAPI.h +++ b/launcher/modplatform/ResourceAPI.h @@ -111,6 +111,16 @@ class ResourceAPI { std::function<void(QJsonDocument&, ModPlatform::IndexedPack)> on_succeed; }; + struct DependencySearchArgs { + ModPlatform::Dependency dependency; + Version mcVersion; + ModLoaderTypes loader; + }; + + struct DependencySearchCallbacks { + std::function<void(QJsonDocument&, const ModPlatform::Dependency&)> on_succeed; + }; + public: /** Gets a list of available sorting methods for this API. */ [[nodiscard]] virtual auto getSortingMethods() const -> QList<SortingMethod> = 0; @@ -121,14 +131,12 @@ class ResourceAPI { qWarning() << "TODO: ResourceAPI::searchProjects"; return nullptr; } - /** getProject(QString addonId, QByteArray* responce)*/ - [[nodiscard]] virtual Task::Ptr getProject(QString, QByteArray*) const + [[nodiscard]] virtual Task::Ptr getProject(QString addonId, std::shared_ptr<QByteArray> response) const { qWarning() << "TODO: ResourceAPI::getProject"; return nullptr; } - /** getProjects(QStringList addonIds, QByteArray* responce) */ - [[nodiscard]] virtual Task::Ptr getProjects(QStringList, QByteArray*) const + [[nodiscard]] virtual Task::Ptr getProjects(QStringList addonIds, std::shared_ptr<QByteArray> response) const { qWarning() << "TODO: ResourceAPI::getProjects"; return nullptr; @@ -145,6 +153,12 @@ class ResourceAPI { return nullptr; } + [[nodiscard]] virtual Task::Ptr getDependencyVersion(DependencySearchArgs&&, DependencySearchCallbacks&&) const + { + qWarning() << "TODO"; + return nullptr; + } + static auto getModLoaderString(ModLoaderType type) -> const QString { switch (type) { |