aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--launcher/ui/dialogs/ModDownloadDialog.cpp28
-rw-r--r--launcher/ui/dialogs/ModDownloadDialog.h1
2 files changed, 28 insertions, 1 deletions
diff --git a/launcher/ui/dialogs/ModDownloadDialog.cpp b/launcher/ui/dialogs/ModDownloadDialog.cpp
index c2bf2d6f..6240ecdc 100644
--- a/launcher/ui/dialogs/ModDownloadDialog.cpp
+++ b/launcher/ui/dialogs/ModDownloadDialog.cpp
@@ -5,6 +5,7 @@
#include <InstanceList.h>
#include "ProgressDialog.h"
+#include "CustomMessageBox.h"
#include <QLayout>
#include <QPushButton>
@@ -41,7 +42,7 @@ ModDownloadDialog::ModDownloadDialog(const std::shared_ptr<ModFolderModel> &mods
auto OkButton = m_buttons->button(QDialogButtonBox::Ok);
OkButton->setDefault(true);
OkButton->setAutoDefault(true);
- connect(OkButton, &QPushButton::clicked, this, &ModDownloadDialog::accept);
+ connect(OkButton, &QPushButton::clicked, this, &ModDownloadDialog::confirm);
auto CancelButton = m_buttons->button(QDialogButtonBox::Cancel);
CancelButton->setDefault(false);
@@ -68,6 +69,31 @@ void ModDownloadDialog::reject()
QDialog::reject();
}
+void ModDownloadDialog::confirm()
+{
+ auto info = QString("You're about to download the following mods:\n\n");
+ for(auto task : modTask.keys()){
+ info.append(task);
+ info.append("\n --> File name: ");
+ info.append(modTask.find(task).value()->getFilename());
+ info.append('\n');
+ }
+
+ auto confirm_dialog = CustomMessageBox::selectable(
+ this,
+ tr("Confirm mods to download"),
+ info,
+ QMessageBox::NoIcon,
+ {QMessageBox::Cancel, QMessageBox::Ok},
+ QMessageBox::Ok
+ );
+
+ auto AcceptButton = confirm_dialog->button(QMessageBox::Ok);
+ connect(AcceptButton, &QPushButton::clicked, this, &ModDownloadDialog::accept);
+
+ confirm_dialog->open();
+}
+
void ModDownloadDialog::accept()
{
QDialog::accept();
diff --git a/launcher/ui/dialogs/ModDownloadDialog.h b/launcher/ui/dialogs/ModDownloadDialog.h
index 02870c6c..309d89d0 100644
--- a/launcher/ui/dialogs/ModDownloadDialog.h
+++ b/launcher/ui/dialogs/ModDownloadDialog.h
@@ -37,6 +37,7 @@ public:
const std::shared_ptr<ModFolderModel> &mods;
public slots:
+ void confirm();
void accept() override;
void reject() override;