aboutsummaryrefslogtreecommitdiff
path: root/launcher/ui/dialogs/ResourceDownloadDialog.cpp
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/dialogs/ResourceDownloadDialog.cpp
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/dialogs/ResourceDownloadDialog.cpp')
-rw-r--r--launcher/ui/dialogs/ResourceDownloadDialog.cpp79
1 files changed, 79 insertions, 0 deletions
diff --git a/launcher/ui/dialogs/ResourceDownloadDialog.cpp b/launcher/ui/dialogs/ResourceDownloadDialog.cpp
index fa829bfb..edb7d063 100644
--- a/launcher/ui/dialogs/ResourceDownloadDialog.cpp
+++ b/launcher/ui/dialogs/ResourceDownloadDialog.cpp
@@ -25,6 +25,9 @@
#include "ResourceDownloadTask.h"
#include "minecraft/mod/ModFolderModel.h"
+#include "minecraft/mod/ResourcePackFolderModel.h"
+#include "minecraft/mod/TexturePackFolderModel.h"
+#include "minecraft/mod/ShaderPackFolderModel.h"
#include "ui/dialogs/ReviewMessageBox.h"
@@ -229,4 +232,80 @@ QList<BasePage*> ModDownloadDialog::getPages()
return pages;
}
+
+ResourcePackDownloadDialog::ResourcePackDownloadDialog(QWidget* parent,
+ const std::shared_ptr<ResourcePackFolderModel>& resource_packs,
+ BaseInstance* instance)
+ : ResourceDownloadDialog(parent, resource_packs), m_instance(instance)
+{
+ setWindowTitle(dialogTitle());
+
+ initializeContainer();
+ connectButtons();
+
+ if (!geometrySaveKey().isEmpty())
+ restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
+}
+
+QList<BasePage*> ResourcePackDownloadDialog::getPages()
+{
+ QList<BasePage*> pages;
+
+ pages.append(ModrinthResourcePackPage::create(this, *m_instance));
+ if (APPLICATION->capabilities() & Application::SupportsFlame)
+ pages.append(FlameResourcePackPage::create(this, *m_instance));
+
+ return pages;
+}
+
+
+TexturePackDownloadDialog::TexturePackDownloadDialog(QWidget* parent,
+ const std::shared_ptr<TexturePackFolderModel>& resource_packs,
+ BaseInstance* instance)
+ : ResourceDownloadDialog(parent, resource_packs), m_instance(instance)
+{
+ setWindowTitle(dialogTitle());
+
+ initializeContainer();
+ connectButtons();
+
+ if (!geometrySaveKey().isEmpty())
+ restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
+}
+
+QList<BasePage*> TexturePackDownloadDialog::getPages()
+{
+ QList<BasePage*> pages;
+
+ pages.append(ModrinthTexturePackPage::create(this, *m_instance));
+ if (APPLICATION->capabilities() & Application::SupportsFlame)
+ pages.append(FlameTexturePackPage::create(this, *m_instance));
+
+ return pages;
+}
+
+
+ShaderPackDownloadDialog::ShaderPackDownloadDialog(QWidget* parent,
+ const std::shared_ptr<ShaderPackFolderModel>& shaders,
+ BaseInstance* instance)
+ : ResourceDownloadDialog(parent, shaders), m_instance(instance)
+{
+ setWindowTitle(dialogTitle());
+
+ initializeContainer();
+ connectButtons();
+
+ if (!geometrySaveKey().isEmpty())
+ restoreGeometry(QByteArray::fromBase64(APPLICATION->settings()->get(geometrySaveKey()).toByteArray()));
+}
+
+QList<BasePage*> ShaderPackDownloadDialog::getPages()
+{
+ QList<BasePage*> pages;
+
+ pages.append(ModrinthShaderPackPage::create(this, *m_instance));
+
+ return pages;
+}
+
} // namespace ResourceDownload