From fb2cddd92a1f09fef22dc66c737aa608408aaa18 Mon Sep 17 00:00:00 2001 From: isanae <14251494+isanae@users.noreply.github.com> Date: Tue, 3 Nov 2020 11:13:28 -0500 Subject: replace "create instance" title by "setting up instance" fixed bad game location for custom paths --- src/createinstancedialog.cpp | 7 ++++++- src/createinstancedialog.h | 6 +++--- src/createinstancedialog.ui | 11 +++++++++-- src/main.cpp | 10 +++++----- 4 files changed, 23 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/createinstancedialog.cpp b/src/createinstancedialog.cpp index d67e3451..d2846367 100644 --- a/src/createinstancedialog.cpp +++ b/src/createinstancedialog.cpp @@ -99,13 +99,18 @@ void CreateInstanceDialog::back() changePage(-1); } -void CreateInstanceDialog::setSinglePageImpl() +void CreateInstanceDialog::setSinglePageImpl(const QString& instanceName) { m_singlePage = true; if (m_pages[ui->pages->currentIndex()]->skip()) { next(); } + + // don't show the "create a new instance" title for single pages, this is + // when the instance already exists but some info is missing + ui->title->setText(tr("Setting up instance %1").arg(instanceName)); + setWindowTitle(tr("Setting up an instance %1").arg(instanceName)); } void CreateInstanceDialog::changePage(int d) diff --git a/src/createinstancedialog.h b/src/createinstancedialog.h index 6947f2e2..f05495c6 100644 --- a/src/createinstancedialog.h +++ b/src/createinstancedialog.h @@ -58,7 +58,7 @@ public: Settings* settings(); template - void setSinglePage() + void setSinglePage(const QString& instanceName) { for (auto&& p : m_pages) { if (auto* tp=dynamic_cast(p.get())) { @@ -68,7 +68,7 @@ public: } } - setSinglePageImpl(); + setSinglePageImpl(instanceName); } template @@ -113,7 +113,7 @@ private: bool m_singlePage; - void setSinglePageImpl(); + void setSinglePageImpl(const QString& instanceName); template T getSelected(T (cid::Page::*mf)() const) const diff --git a/src/createinstancedialog.ui b/src/createinstancedialog.ui index b7f4f502..b10d74a7 100644 --- a/src/createinstancedialog.ui +++ b/src/createinstancedialog.ui @@ -30,9 +30,16 @@ 0 - + + + + 14 + 75 + true + + - <h2>Creating a new instance</h2> + Creating a new instance diff --git a/src/main.cpp b/src/main.cpp index 2a5a3e81..bfc074ec 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -344,7 +344,7 @@ SetupInstanceResults setupInstance(Instance& instance, PluginContainer& pc) .arg(instance.name()).arg(instance.iniPath())); CreateInstanceDialog dlg(pc, nullptr); - dlg.setSinglePage(); + dlg.setSinglePage(instance.name()); dlg.show(); dlg.activateWindow(); @@ -356,7 +356,7 @@ SetupInstanceResults setupInstance(Instance& instance, PluginContainer& pc) instance.setGame( dlg.creationInfo().game->gameName(), - dlg.creationInfo().game->gameDirectory().absolutePath()); + dlg.creationInfo().gameLocation); return SetupInstanceResults::TryAgain; } @@ -384,7 +384,7 @@ SetupInstanceResults setupInstance(Instance& instance, PluginContainer& pc) .arg(instance.gameName())); CreateInstanceDialog dlg(pc, nullptr); - dlg.setSinglePage(); + dlg.setSinglePage(instance.name()); dlg.show(); dlg.activateWindow(); @@ -396,7 +396,7 @@ SetupInstanceResults setupInstance(Instance& instance, PluginContainer& pc) instance.setGame( dlg.creationInfo().game->gameName(), - dlg.creationInfo().game->gameDirectory().absolutePath()); + dlg.creationInfo().gameLocation); return SetupInstanceResults::TryAgain; } @@ -408,7 +408,7 @@ SetupInstanceResults setupInstance(Instance& instance, PluginContainer& pc) dlg.getPage()->select( instance.gamePlugin(), instance.gameDirectory()); - dlg.setSinglePage(); + dlg.setSinglePage(instance.name()); dlg.show(); dlg.activateWindow(); -- cgit v1.3.1