summaryrefslogtreecommitdiffstats
path: root/application/dialogs/NewInstanceDialog.h
diff options
context:
space:
mode:
Diffstat (limited to 'application/dialogs/NewInstanceDialog.h')
-rw-r--r--application/dialogs/NewInstanceDialog.h43
1 files changed, 18 insertions, 25 deletions
diff --git a/application/dialogs/NewInstanceDialog.h b/application/dialogs/NewInstanceDialog.h
index f1fe26f4..ca134d32 100644
--- a/application/dialogs/NewInstanceDialog.h
+++ b/application/dialogs/NewInstanceDialog.h
@@ -18,15 +18,19 @@
#include <QDialog>
#include "BaseVersion.h"
-#include "modplatform/ftb/FtbPackDownloader.h"
-#include "modplatform/ftb/PackHelpers.h"
+#include "pages/BasePageProvider.h"
+#include "InstanceTask.h"
namespace Ui
{
class NewInstanceDialog;
}
-class NewInstanceDialog : public QDialog
+class PageContainer;
+class QDialogButtonBox;
+class ImportPage;
+
+class NewInstanceDialog : public QDialog, public BasePageProvider
{
Q_OBJECT
@@ -36,39 +40,28 @@ public:
void updateDialogState();
- void setSelectedVersion(BaseVersionPtr version);
+ void setSuggestedPack(const QString & name = QString(), InstanceTask * task = nullptr);
+ InstanceTask * extractTask();
+
+ QString dialogTitle() override;
+ QList<BasePage *> getPages() override;
QString instName() const;
QString instGroup() const;
QString iconKey() const;
- QUrl modpackUrl() const;
- BaseVersionPtr selectedVersion() const;
-
- bool isFtbModpackRequested();
- FtbPackDownloader* getFtbPackDownloader();
private
slots:
- void on_btnChangeVersion_clicked();
void on_iconButton_clicked();
- void on_modpackBtn_clicked();
- void on_btnChooseFtbPack_clicked();
void on_instNameTextBox_textChanged(const QString &arg1);
- void versionListUpdated();
-
- void ftbPackDataDownloadSuccessfully();
- void ftbPackDataDownloadFailed();
+ virtual void closeEvent(QCloseEvent *event);
private:
- Ui::NewInstanceDialog *ui;
-
- bool m_versionSetByUser = false;
- bool ftbModpackRequested = false;
+ Ui::NewInstanceDialog *ui = nullptr;
+ PageContainer * m_container = nullptr;
+ QDialogButtonBox * m_buttons = nullptr;
- BaseVersionPtr m_selectedVersion;
QString InstIconKey;
- QString originalPlaceholderText;
-
- FtbPackDownloader* ftbPackDownloader;
- FtbModpack selectedPack;
+ ImportPage *importPage = nullptr;
+ std::unique_ptr<InstanceTask> creationTask;
};