mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-16 20:19:57 +00:00
Reimplemented the old new profile dialog behaviour
This commit is contained in:
parent
5d94cb112f
commit
af883991e2
3 changed files with 25 additions and 7 deletions
|
@ -30,6 +30,11 @@ Launcher::DataFilesPage::DataFilesPage(Files::ConfigurationManager &cfg, Config:
|
|||
setObjectName ("DataFilesPage");
|
||||
mSelector = new ContentSelectorView::ContentSelector (ui.contentSelectorWidget);
|
||||
|
||||
mProfileDialog = new TextInputDialog(tr("New Profile"), tr("Profile name:"), this);
|
||||
|
||||
connect(mProfileDialog->lineEdit(), SIGNAL(textChanged(QString)),
|
||||
this, SLOT(updateOkButton(QString)));
|
||||
|
||||
buildView();
|
||||
setupDataFiles();
|
||||
}
|
||||
|
@ -212,12 +217,10 @@ void Launcher::DataFilesPage::slotProfileChanged(int index)
|
|||
|
||||
void Launcher::DataFilesPage::on_newProfileAction_triggered()
|
||||
{
|
||||
TextInputDialog newDialog (tr("New Profile"), tr("Profile name:"), this);
|
||||
|
||||
if (newDialog.exec() != QDialog::Accepted)
|
||||
if (!mProfileDialog->exec() == QDialog::Accepted)
|
||||
return;
|
||||
|
||||
QString profile = newDialog.lineEdit()->text();
|
||||
QString profile = mProfileDialog->lineEdit()->text();
|
||||
|
||||
if (profile.isEmpty())
|
||||
return;
|
||||
|
@ -271,6 +274,19 @@ void Launcher::DataFilesPage::on_deleteProfileAction_triggered()
|
|||
checkForDefaultProfile();
|
||||
}
|
||||
|
||||
void Launcher::DataFilesPage::updateOkButton(const QString &text)
|
||||
{
|
||||
// We do this here because we need the profiles combobox text
|
||||
if (text.isEmpty()) {
|
||||
mProfileDialog->setOkButtonEnabled(false);
|
||||
return;
|
||||
}
|
||||
|
||||
(ui.profilesComboBox->findText(text) == -1)
|
||||
? mProfileDialog->setOkButtonEnabled(true)
|
||||
: mProfileDialog->setOkButtonEnabled(false);
|
||||
}
|
||||
|
||||
void Launcher::DataFilesPage::checkForDefaultProfile()
|
||||
{
|
||||
//don't allow deleting "Default" profile
|
||||
|
|
|
@ -55,12 +55,14 @@ namespace Launcher
|
|||
void slotProfileRenamed(const QString &previous, const QString ¤t);
|
||||
void slotProfileDeleted(const QString &item);
|
||||
|
||||
void updateOkButton(const QString &text);
|
||||
|
||||
void on_newProfileAction_triggered();
|
||||
void on_deleteProfileAction_triggered();
|
||||
|
||||
private:
|
||||
|
||||
QMenu *mContextMenu;
|
||||
TextInputDialog *mProfileDialog;
|
||||
|
||||
Files::ConfigurationManager &mCfgMgr;
|
||||
|
||||
|
|
|
@ -222,7 +222,7 @@ void Launcher::SettingsPage::importerFinished(int exitCode, QProcess::ExitStatus
|
|||
|
||||
void Launcher::SettingsPage::updateOkButton(const QString &text)
|
||||
{
|
||||
// We do this here because we need the profiles combobox text
|
||||
// We do this here because we need to access the profiles
|
||||
if (text.isEmpty()) {
|
||||
mProfileDialog->setOkButtonEnabled(false);
|
||||
return;
|
||||
|
|
Loading…
Reference in a new issue