diff options
author | TheKodeToad <TheKodeToad@proton.me> | 2023-08-31 14:58:54 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-31 14:58:54 +0100 |
commit | 25ce11d85d1aa9060e9df335a63f3de5e61c7f6b (patch) | |
tree | e273257fef10a5dac301f8db5f2fcfd70f57c72f /launcher/modplatform | |
parent | b83fdbd1b752acdf555fb90d397ff61ddb896f2c (diff) | |
parent | 8c607ae7348206c29a8a8ce5e2db421138bd89ff (diff) | |
download | PrismLauncher-25ce11d85d1aa9060e9df335a63f3de5e61c7f6b.tar.gz PrismLauncher-25ce11d85d1aa9060e9df335a63f3de5e61c7f6b.tar.bz2 PrismLauncher-25ce11d85d1aa9060e9df335a63f3de5e61c7f6b.zip |
Merge pull request #1539 from Trial97/refactor_modpack_ux
Improvements to modpack UX
Diffstat (limited to 'launcher/modplatform')
-rw-r--r-- | launcher/modplatform/ResourceAPI.h | 4 | ||||
-rw-r--r-- | launcher/modplatform/helpers/NetworkResourceAPI.cpp | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/launcher/modplatform/ResourceAPI.h b/launcher/modplatform/ResourceAPI.h index 7965d0f5..3b195938 100644 --- a/launcher/modplatform/ResourceAPI.h +++ b/launcher/modplatform/ResourceAPI.h @@ -105,7 +105,9 @@ class ResourceAPI { void operator=(ProjectInfoArgs other) { pack = other.pack; } }; struct ProjectInfoCallbacks { - std::function<void(QJsonDocument&, ModPlatform::IndexedPack)> on_succeed; + std::function<void(QJsonDocument&, const ModPlatform::IndexedPack&)> on_succeed; + std::function<void(QString const& reason)> on_fail; + std::function<void()> on_abort; }; struct DependencySearchArgs { diff --git a/launcher/modplatform/helpers/NetworkResourceAPI.cpp b/launcher/modplatform/helpers/NetworkResourceAPI.cpp index 78b39fff..dccccdc2 100644 --- a/launcher/modplatform/helpers/NetworkResourceAPI.cpp +++ b/launcher/modplatform/helpers/NetworkResourceAPI.cpp @@ -72,7 +72,8 @@ Task::Ptr NetworkResourceAPI::getProjectInfo(ProjectInfoArgs&& args, ProjectInfo callbacks.on_succeed(doc, args.pack); }); - + QObject::connect(job.get(), &NetJob::failed, [callbacks](QString reason) { callbacks.on_fail(reason); }); + QObject::connect(job.get(), &NetJob::aborted, [callbacks] { callbacks.on_abort(); }); return job; } |