diff options
author | Petr Mrázek <peterix@gmail.com> | 2014-11-08 21:17:28 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2014-11-08 21:17:28 +0100 |
commit | 992ba0c3f8ae65d25503b74c62c3cdf4668635d3 (patch) | |
tree | 26c3b08e466f74231bf5b0e0bb6aca0123bd83ab /gui/dialogs/NewInstanceDialog.cpp | |
parent | 7d1dd2a32f95eacaaea7d808cd07faf99e425977 (diff) | |
download | MultiMC-992ba0c3f8ae65d25503b74c62c3cdf4668635d3.tar MultiMC-992ba0c3f8ae65d25503b74c62c3cdf4668635d3.tar.gz MultiMC-992ba0c3f8ae65d25503b74c62c3cdf4668635d3.tar.lz MultiMC-992ba0c3f8ae65d25503b74c62c3cdf4668635d3.tar.xz MultiMC-992ba0c3f8ae65d25503b74c62c3cdf4668635d3.zip |
Implement #545
* Instance group can be selected when creating and copying instances
* Original group is pre-selected when copying
* Last used group is pre-selected when creating new instances
Diffstat (limited to 'gui/dialogs/NewInstanceDialog.cpp')
-rw-r--r-- | gui/dialogs/NewInstanceDialog.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gui/dialogs/NewInstanceDialog.cpp b/gui/dialogs/NewInstanceDialog.cpp index 721d7931..aeaa7e4a 100644 --- a/gui/dialogs/NewInstanceDialog.cpp +++ b/gui/dialogs/NewInstanceDialog.cpp @@ -22,6 +22,7 @@ #include "logic/icons/IconList.h" #include "logic/minecraft/MinecraftVersionList.h" #include "logic/tasks/Task.h" +#include <logic/InstanceList.h> #include "gui/Platform.h" #include "VersionSelectDialog.h" @@ -41,6 +42,21 @@ NewInstanceDialog::NewInstanceDialog(QWidget *parent) setSelectedVersion(MMC->minecraftlist()->getLatestStable(), true); InstIconKey = "infinity"; ui->iconButton->setIcon(MMC->icons()->getIcon(InstIconKey)); + auto groups = MMC->instances()->getGroups().toSet(); + auto groupList = QStringList(groups.toList()); + groupList.sort(Qt::CaseInsensitive); + groupList.removeOne(""); + QString oldValue = MMC->settings()->get("LastUsedGroupForNewInstance").toString(); + groupList.push_front(oldValue); + groupList.push_front(""); + ui->groupBox->addItems(groupList); + int index = groupList.indexOf(oldValue); + if(index == -1) + { + index = 0; + } + ui->groupBox->setCurrentIndex(index); + ui->groupBox->lineEdit()->setPlaceholderText(tr("No group")); } NewInstanceDialog::~NewInstanceDialog() @@ -79,6 +95,11 @@ QString NewInstanceDialog::instName() const return ui->instNameTextBox->text(); } +QString NewInstanceDialog::instGroup() const +{ + return ui->groupBox->currentText(); +} + QString NewInstanceDialog::iconKey() const { return InstIconKey; @@ -118,3 +139,4 @@ void NewInstanceDialog::on_instNameTextBox_textChanged(const QString &arg1) { updateDialogState(); } + |