From d52ff7e83007f4ffbd856c3558378868b29e4d9f Mon Sep 17 00:00:00 2001 From: doitux Date: Sun, 23 Sep 2007 01:29:22 +0000 Subject: [PATCH] implement manual blindslist saving in settingsdialog --- src/config/configfile.cpp | 10 +- src/gui/qt/manualblindsorderdialog.ui | 14 ++- .../qt/settingsdialog/settingsdialogimpl.cpp | 101 +++++++++++++++++- .../qt/settingsdialog/settingsdialogimpl.h | 19 +++- src/pokerth.cpp | 1 - 5 files changed, 133 insertions(+), 12 deletions(-) diff --git a/src/config/configfile.cpp b/src/config/configfile.cpp index 89bd1e50..432e12ba 100644 --- a/src/config/configfile.cpp +++ b/src/config/configfile.cpp @@ -55,7 +55,7 @@ ConfigFile::ConfigFile(int argc, char **argv) : noWriteAccess(0) if(strcmp(argv[i], "--nowriteaccess") == 0) { noWriteAccess = 1; } } // !!!! Revisionsnummer der Configdefaults !!!!! - configRev = 40; + configRev = 41; //standard defaults logOnOffDefault = "1"; @@ -176,6 +176,10 @@ ConfigFile::ConfigFile(int argc, char **argv) : noWriteAccess(0) configList.push_back(ConfigInfo("AlwaysDoubleBlinds", CONFIG_TYPE_INT, "1")); configList.push_back(ConfigInfo("ManualBlindsOrder", CONFIG_TYPE_INT, "0")); configList.push_back(ConfigInfo("ManualBlindsList", CONFIG_TYPE_INT_LIST, "Blind")); + configList.push_back(ConfigInfo("AfterMBAlwaysDoubleBlinds", CONFIG_TYPE_INT, "1")); + configList.push_back(ConfigInfo("AfterMBAlwaysRaiseAbout", CONFIG_TYPE_INT, "0")); + configList.push_back(ConfigInfo("AfterMBAlwaysRaiseValue", CONFIG_TYPE_INT, "0")); + configList.push_back(ConfigInfo("AfterMBStayAtLastBlind", CONFIG_TYPE_INT, "0")); configList.push_back(ConfigInfo("GameSpeed", CONFIG_TYPE_INT, "4")); configList.push_back(ConfigInfo("EngineVersion", CONFIG_TYPE_INT, "0")); configList.push_back(ConfigInfo("PauseBetweenHands", CONFIG_TYPE_INT, "0")); @@ -190,6 +194,10 @@ ConfigFile::ConfigFile(int argc, char **argv) : noWriteAccess(0) configList.push_back(ConfigInfo("NetAlwaysDoubleBlinds", CONFIG_TYPE_INT, "1")); configList.push_back(ConfigInfo("NetManualBlindsOrder", CONFIG_TYPE_INT, "0")); configList.push_back(ConfigInfo("NetManualBlindsList", CONFIG_TYPE_INT_LIST, "NetBlind")); + configList.push_back(ConfigInfo("NetAfterMBAlwaysDoubleBlinds", CONFIG_TYPE_INT, "1")); + configList.push_back(ConfigInfo("NetAfterMBAlwaysRaiseAbout", CONFIG_TYPE_INT, "0")); + configList.push_back(ConfigInfo("NetAfterMBAlwaysRaiseValue", CONFIG_TYPE_INT, "0")); + configList.push_back(ConfigInfo("NetAfterMBStayAtLastBlind", CONFIG_TYPE_INT, "0")); configList.push_back(ConfigInfo("NetGameSpeed", CONFIG_TYPE_INT, "4")); configList.push_back(ConfigInfo("NetEngineVersion", CONFIG_TYPE_INT, "0")); configList.push_back(ConfigInfo("NetTimeOutPlayerAction", CONFIG_TYPE_INT, "20")); diff --git a/src/gui/qt/manualblindsorderdialog.ui b/src/gui/qt/manualblindsorderdialog.ui index c120afc3..109731c3 100644 --- a/src/gui/qt/manualblindsorderdialog.ui +++ b/src/gui/qt/manualblindsorderdialog.ui @@ -6,7 +6,7 @@ 0 0 248 - 437 + 426 @@ -63,6 +63,12 @@ After this: + + 2 + + + 2 + @@ -83,7 +89,7 @@ - + @@ -123,7 +129,7 @@ pushButton_delete radioButton_alwaysDoubleBlinds radioButton_alwaysRaiseAbout - spinBox_AfterThisAlwaysRaiseValue + spinBox_alwaysRaiseValue radioButton_stayAtLastBlind buttonBox @@ -164,7 +170,7 @@ radioButton_alwaysRaiseAbout toggled(bool) - spinBox_AfterThisAlwaysRaiseValue + spinBox_alwaysRaiseValue setEnabled(bool) diff --git a/src/gui/qt/settingsdialog/settingsdialogimpl.cpp b/src/gui/qt/settingsdialog/settingsdialogimpl.cpp index 037359db..f5bc0fbb 100644 --- a/src/gui/qt/settingsdialog/settingsdialogimpl.cpp +++ b/src/gui/qt/settingsdialog/settingsdialogimpl.cpp @@ -22,8 +22,8 @@ #include "configfile.h" #include -#include +using namespace std; settingsDialogImpl::settingsDialogImpl(QWidget *parent, ConfigFile *c, selectAvatarDialogImpl *s) : QDialog(parent), myConfig(c), mySelectAvatarDialogImpl(s) @@ -31,7 +31,7 @@ settingsDialogImpl::settingsDialogImpl(QWidget *parent, ConfigFile *c, selectAva setupUi(this); - myManualBlindsOrderDialog = new manualBlindsOrderDialogImpl; + myManualBlindsOrderDialog = new manualBlindsOrderDialogImpl; myAppDataPath = QString::fromUtf8(myConfig->readConfigString("AppDataDir").c_str()); @@ -182,6 +182,21 @@ void settingsDialogImpl::exec() { checkBox_useIpv6->setEnabled(socket_has_ipv6()); checkBox_useSctp->setEnabled(socket_has_sctp()); + //Manual Blinds Order Dialog (local) + myManualBlindsList = myConfig->readConfigIntList("ManualBlindsList"); + myAfterMBAlwaysDoubleBlinds = myConfig->readConfigInt("AfterMBAlwaysDoubleBlinds"); + myAfterMBAlwaysRaiseAbout = myConfig->readConfigInt("AfterMBAlwaysRaiseAbout"); + myAfterMBAlwaysRaiseValue = myConfig->readConfigInt("AfterMBAlwaysRaiseValue"); + myAfterMBStayAtLastBlind = myConfig->readConfigInt("AfterMBStayAtLastBlind"); + + //Manual Blinds Order Dialog (network) + myNetManualBlindsList = myConfig->readConfigIntList("NetManualBlindsList"); + myNetAfterMBAlwaysDoubleBlinds = myConfig->readConfigInt("NetAfterMBAlwaysDoubleBlinds"); + myNetAfterMBAlwaysRaiseAbout = myConfig->readConfigInt("NetAfterMBAlwaysRaiseAbout"); + myNetAfterMBAlwaysRaiseValue = myConfig->readConfigInt("NetAfterMBAlwaysRaiseValue"); + myNetAfterMBStayAtLastBlind = myConfig->readConfigInt("NetAfterMBStayAtLastBlind"); + + QDialog::exec(); } @@ -300,6 +315,21 @@ void settingsDialogImpl::isAccepted() { myConfig->writeConfigInt("LogInterval", comboBox_logInterval->currentIndex()); } + //Manual Blinds Order Dialog (local) + myConfig->writeConfigIntList("ManualBlindsList",myManualBlindsList); + myConfig->writeConfigInt("AfterMBAlwaysDoubleBlinds",myAfterMBAlwaysDoubleBlinds); + myConfig->writeConfigInt("AfterMBAlwaysRaiseAbout",myAfterMBAlwaysRaiseAbout); + myConfig->writeConfigInt("AfterMBAlwaysRaiseValue",myAfterMBAlwaysRaiseValue); + myConfig->writeConfigInt("AfterMBStayAtLastBlind",myAfterMBStayAtLastBlind); + + //Manual Blinds Order Dialog (network) + myConfig->writeConfigIntList("NetManualBlindsList",myNetManualBlindsList); + myConfig->writeConfigInt("NetAfterMBAlwaysDoubleBlinds",myNetAfterMBAlwaysDoubleBlinds); + myConfig->writeConfigInt("NetAfterMBAlwaysRaiseAbout",myNetAfterMBAlwaysRaiseAbout); + myConfig->writeConfigInt("NetAfterMBAlwaysRaiseValue",myNetAfterMBAlwaysRaiseValue); + myConfig->writeConfigInt("NetAfterMBStayAtLastBlind",myNetAfterMBStayAtLastBlind); + + //write buffer to disc myConfig->writeBuffer(); @@ -396,5 +426,68 @@ void settingsDialogImpl::clearInternetGamePassword(bool clear) { if(!clear) { lineEdit_InternetGamePassword->clear(); } } -void settingsDialogImpl::callManualBlindsOrderDialog() { myManualBlindsOrderDialog->exec(); } -void settingsDialogImpl::callNetManualBlindsOrderDialog() { myManualBlindsOrderDialog->exec(); } \ No newline at end of file +void settingsDialogImpl::callManualBlindsOrderDialog() { + + myManualBlindsOrderDialog->listWidget_blinds->clear(); + myManualBlindsOrderDialog->spinBox_input->setMinimum(spinBox_firstSmallBlind->value()+1); + + list::iterator it1; + for(it1= myManualBlindsList.begin(); it1 != myManualBlindsList.end(); it1++) { + myManualBlindsOrderDialog->listWidget_blinds->addItem(QString::number(*it1,10)); + } + myManualBlindsOrderDialog->sortBlindsList(); + + myManualBlindsOrderDialog->radioButton_alwaysDoubleBlinds->setChecked(myAfterMBAlwaysDoubleBlinds); + myManualBlindsOrderDialog->radioButton_alwaysRaiseAbout->setChecked(myAfterMBAlwaysRaiseAbout); + myManualBlindsOrderDialog->spinBox_alwaysRaiseValue->setValue(myAfterMBAlwaysRaiseValue); + myManualBlindsOrderDialog->radioButton_stayAtLastBlind->setChecked(myAfterMBStayAtLastBlind); + + myManualBlindsOrderDialog->exec(); + if(myManualBlindsOrderDialog->result() == QDialog::Accepted) { + + bool ok = TRUE; + int i; + myManualBlindsList.clear(); + for(i=0; ilistWidget_blinds->count(); i++) { + myManualBlindsList.push_back(myManualBlindsOrderDialog->listWidget_blinds->item(i)->text().toInt(&ok,10)); + } + + myAfterMBAlwaysDoubleBlinds = myManualBlindsOrderDialog->radioButton_alwaysDoubleBlinds->isChecked(); + myAfterMBAlwaysRaiseAbout = myManualBlindsOrderDialog->radioButton_alwaysRaiseAbout->isChecked(); + myAfterMBAlwaysRaiseValue = myManualBlindsOrderDialog->spinBox_alwaysRaiseValue->value(); + myAfterMBStayAtLastBlind = myManualBlindsOrderDialog->radioButton_stayAtLastBlind->isChecked(); + } +} + +void settingsDialogImpl::callNetManualBlindsOrderDialog() { + + myManualBlindsOrderDialog->listWidget_blinds->clear(); + myManualBlindsOrderDialog->spinBox_input->setMinimum(spinBox_netFirstSmallBlind->value()+1); + + list::iterator it1; + for(it1= myNetManualBlindsList.begin(); it1 != myNetManualBlindsList.end(); it1++) { + myManualBlindsOrderDialog->listWidget_blinds->addItem(QString::number(*it1,10)); + } + myManualBlindsOrderDialog->sortBlindsList(); + + myManualBlindsOrderDialog->radioButton_alwaysDoubleBlinds->setChecked(myNetAfterMBAlwaysDoubleBlinds); + myManualBlindsOrderDialog->radioButton_alwaysRaiseAbout->setChecked(myNetAfterMBAlwaysRaiseAbout); + myManualBlindsOrderDialog->spinBox_alwaysRaiseValue->setValue(myNetAfterMBAlwaysRaiseValue); + myManualBlindsOrderDialog->radioButton_stayAtLastBlind->setChecked(myNetAfterMBStayAtLastBlind); + + myManualBlindsOrderDialog->exec(); + if(myManualBlindsOrderDialog->result() == QDialog::Accepted) { + + bool ok = TRUE; + int i; + myNetManualBlindsList.clear(); + for(i=0; ilistWidget_blinds->count(); i++) { + myNetManualBlindsList.push_back(myManualBlindsOrderDialog->listWidget_blinds->item(i)->text().toInt(&ok,10)); + } + + myNetAfterMBAlwaysDoubleBlinds = myManualBlindsOrderDialog->radioButton_alwaysDoubleBlinds->isChecked(); + myNetAfterMBAlwaysRaiseAbout = myManualBlindsOrderDialog->radioButton_alwaysRaiseAbout->isChecked(); + myNetAfterMBAlwaysRaiseValue = myManualBlindsOrderDialog->spinBox_alwaysRaiseValue->value(); + myNetAfterMBStayAtLastBlind = myManualBlindsOrderDialog->radioButton_stayAtLastBlind->isChecked(); + } +} \ No newline at end of file diff --git a/src/gui/qt/settingsdialog/settingsdialogimpl.h b/src/gui/qt/settingsdialog/settingsdialogimpl.h index 8340325c..d8fc8615 100644 --- a/src/gui/qt/settingsdialog/settingsdialogimpl.h +++ b/src/gui/qt/settingsdialog/settingsdialogimpl.h @@ -27,6 +27,10 @@ #include #include +#include +#include +#include + class ConfigFile; class selectAvatarDialogImpl; class manualBlindsOrderDialogImpl; @@ -65,15 +69,26 @@ public slots: void clearInternetGamePassword(bool); - private: bool playerNickIsChanged; bool settingsCorrect; + + bool myAfterMBAlwaysDoubleBlinds; + bool myNetAfterMBAlwaysDoubleBlinds; + bool myAfterMBAlwaysRaiseAbout; + bool myNetAfterMBAlwaysRaiseAbout; + bool myAfterMBStayAtLastBlind; + bool myNetAfterMBStayAtLastBlind; + int myAfterMBAlwaysRaiseValue; + int myNetAfterMBAlwaysRaiseValue; + std::list myManualBlindsList; + std::list myNetManualBlindsList; ConfigFile* myConfig; selectAvatarDialogImpl* mySelectAvatarDialogImpl; - manualBlindsOrderDialogImpl* myManualBlindsOrderDialog; + manualBlindsOrderDialogImpl *myManualBlindsOrderDialog; + QString myAppDataPath; }; diff --git a/src/pokerth.cpp b/src/pokerth.cpp index 4a1c94d6..41023cf0 100755 --- a/src/pokerth.cpp +++ b/src/pokerth.cpp @@ -75,7 +75,6 @@ int main( int argc, char **argv ) //ENABLE_LEAK_CHECK(); //_CrtSetBreakAlloc(49937); - socket_startup(); /////// can be removed for non-qt-guis ////////////