From bc8f9b9b8911cf309e1ae6b034054f5076ff9070 Mon Sep 17 00:00:00 2001 From: doitux Date: Fri, 6 Jan 2012 09:34:26 +0000 Subject: [PATCH] check if settingsdialog is called from ingame and disable reset settings button --- src/gui/qt/gametable/gametableimpl.cpp | 3 ++- src/gui/qt/settingsdialog.ui | 14 +++++++++++++- .../qt/settingsdialog/settingsdialogimpl.cpp | 17 ++++++++++++++--- src/gui/qt/settingsdialog/settingsdialogimpl.h | 3 ++- src/gui/qt/startwindow/startwindowimpl.cpp | 10 +++++++--- src/gui/qt/startwindow/startwindowimpl.h | 3 ++- 6 files changed, 40 insertions(+), 10 deletions(-) diff --git a/src/gui/qt/gametable/gametableimpl.cpp b/src/gui/qt/gametable/gametableimpl.cpp index eb819c3c..3df5c1c1 100755 --- a/src/gui/qt/gametable/gametableimpl.cpp +++ b/src/gui/qt/gametable/gametableimpl.cpp @@ -605,7 +605,8 @@ gameTableImpl::~gameTableImpl() void gameTableImpl::callSettingsDialog() { - myStartWindow->callSettingsDialog(); + bool iamInGame = true; + myStartWindow->callSettingsDialog(iamInGame); } void gameTableImpl::applySettings(settingsDialogImpl* mySettingsDialog) diff --git a/src/gui/qt/settingsdialog.ui b/src/gui/qt/settingsdialog.ui index ae301a92..e2cf728a 100644 --- a/src/gui/qt/settingsdialog.ui +++ b/src/gui/qt/settingsdialog.ui @@ -3701,7 +3701,7 @@ p, li { white-space: pre-wrap; } - + Qt::Vertical @@ -3721,6 +3721,18 @@ p, li { white-space: pre-wrap; } + + + + + true + + + + Note: You can not reset all settings to default during a running game! + + + diff --git a/src/gui/qt/settingsdialog/settingsdialogimpl.cpp b/src/gui/qt/settingsdialog/settingsdialogimpl.cpp index 50890089..883a27e5 100644 --- a/src/gui/qt/settingsdialog/settingsdialogimpl.cpp +++ b/src/gui/qt/settingsdialog/settingsdialogimpl.cpp @@ -486,11 +486,22 @@ void settingsDialogImpl::prepareDialog() //set this AFTER switch combobox like config-settings. This IS a currentIndexChanged() ;-) languageIsChanged = FALSE; + + //disable reset config button when dialog is called from ingame + if(calledIngame) { + pushButton_resetSettings->setDisabled(true); + label_resetNote->show(); + } + else { + pushButton_resetSettings->setEnabled(true); + label_resetNote->hide(); + } + } -void settingsDialogImpl::exec() +void settingsDialogImpl::exec(bool in_game) { - + calledIngame = in_game; prepareDialog(); QDialog::exec(); @@ -1371,7 +1382,7 @@ void settingsDialogImpl::showLogFilePreview() void settingsDialogImpl::resetSettings() { int ret = QMessageBox::warning(this, tr("PokerTH - Settings"), - tr("Attention: this will delete all your personal settings!\n" + tr("Attention: this will delete all your personal settings and close PokerTH!\n" "Do you really want to reset factory settings?"), QMessageBox::Yes | QMessageBox::No); if(ret == QMessageBox::Yes) diff --git a/src/gui/qt/settingsdialog/settingsdialogimpl.h b/src/gui/qt/settingsdialog/settingsdialogimpl.h index 09c934c7..29daa7d3 100644 --- a/src/gui/qt/settingsdialog/settingsdialogimpl.h +++ b/src/gui/qt/settingsdialog/settingsdialogimpl.h @@ -44,7 +44,7 @@ public: ~settingsDialogImpl(); void prepareDialog(); - void exec(); + void exec(bool ingame); void setPlayerNickIsChanged(bool theValue) { playerNickIsChanged = theValue; @@ -142,6 +142,7 @@ private: QString myAppDataPath; bool languageIsChanged; + bool calledIngame; int changedLanguageIndex; }; diff --git a/src/gui/qt/startwindow/startwindowimpl.cpp b/src/gui/qt/startwindow/startwindowimpl.cpp index 69e3a089..70193ddc 100644 --- a/src/gui/qt/startwindow/startwindowimpl.cpp +++ b/src/gui/qt/startwindow/startwindowimpl.cpp @@ -110,7 +110,7 @@ startWindowImpl::startWindowImpl(ConfigFile *c, Log *l) connect( pushButton_Join_Network_Game, SIGNAL( clicked() ), this, SLOT( callJoinNetworkGameDialog() ) ); connect( actionAbout_PokerTH, SIGNAL( triggered() ), this, SLOT( callAboutPokerthDialog() ) ); - connect( actionConfigure_PokerTH, SIGNAL( triggered() ), this, SLOT( callSettingsDialog() ) ); + connect( actionConfigure_PokerTH, SIGNAL( triggered() ), this, SLOT( callSettingsDialogFromStartwindow() ) ); connect(this, SIGNAL(signalShowClientDialog()), this, SLOT(showClientDialog())); @@ -587,10 +587,14 @@ void startWindowImpl::callAboutPokerthDialog() myAboutPokerthDialog->exec(); } -void startWindowImpl::callSettingsDialog() +void startWindowImpl::callSettingsDialogFromStartwindow() { + callSettingsDialog(false); +} - mySettingsDialog->exec(); +void startWindowImpl::callSettingsDialog(bool ingame) +{ + mySettingsDialog->exec(ingame); if (mySettingsDialog->result() == QDialog::Accepted && mySettingsDialog->getSettingsCorrect()) { myGuiInterface->getMyW()->applySettings(mySettingsDialog); diff --git a/src/gui/qt/startwindow/startwindowimpl.h b/src/gui/qt/startwindow/startwindowimpl.h index 3cf6732e..22fac072 100644 --- a/src/gui/qt/startwindow/startwindowimpl.h +++ b/src/gui/qt/startwindow/startwindowimpl.h @@ -126,7 +126,8 @@ signals: public slots: void callAboutPokerthDialog(); - void callSettingsDialog(); + void callSettingsDialog(bool); + void callSettingsDialogFromStartwindow(); void callNewGameDialog(); void callGameLobbyDialog(); void callCreateNetworkGameDialog();