Files
pokerth/src/gui/qt/settingsdialog/settingsdialogimpl.cpp
T

400 lines
23 KiB
C++
Raw Normal View History

2007-01-17 01:22:55 +00:00
/***************************************************************************
* Copyright (C) 2006 by FThauer FHammer *
* f.thauer@web.de *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#include "settingsdialogimpl.h"
2007-06-03 12:54:10 +00:00
#include "myavatarlistitem.h"
2007-05-23 10:19:10 +00:00
2007-01-17 23:57:41 +00:00
#include "configfile.h"
#include <net/socket_startup.h>
2007-01-17 23:57:41 +00:00
#include <iostream>
2007-01-17 01:22:55 +00:00
2007-05-23 10:19:10 +00:00
settingsDialogImpl::settingsDialogImpl(QWidget *parent, ConfigFile *c, selectAvatarDialogImpl *s)
: QDialog(parent), myConfig(c), mySelectAvatarDialogImpl(s)
2007-01-17 01:22:55 +00:00
{
2007-06-25 00:25:52 +00:00
setupUi(this);
2007-08-29 21:53:08 +00:00
2007-09-21 00:13:47 +00:00
myManualBlindsOrderDialog = new manualBlindsOrderDialogImpl;
2007-09-08 22:01:30 +00:00
myAppDataPath = QString::fromUtf8(myConfig->readConfigString("AppDataDir").c_str());
pushButton_openFlipsidePicture->setIcon(QIcon(QPixmap(myAppDataPath+"gfx/gui/misc/fileopen16.png")));
pushButton_openLogDir->setIcon(QIcon(QPixmap(myAppDataPath+"gfx/gui/misc/fileopen16.png")));
2007-01-17 23:57:41 +00:00
2007-05-16 09:31:54 +00:00
if (myConfig->readConfigInt("CLA_NoWriteAccess")) { groupBox_logOnOff->setDisabled(TRUE); }
2007-05-13 15:08:10 +00:00
connect( buttonBox, SIGNAL( accepted() ), this, SLOT( isAccepted() ) );
2007-06-03 21:27:02 +00:00
connect( lineEdit_HumanPlayerName, SIGNAL( textChanged( const QString &) ), this, SLOT( playerNickChanged() ) );
2007-05-13 15:08:10 +00:00
connect( lineEdit_Opponent1Name, SIGNAL( textChanged(const QString &) ), this, SLOT( playerNickChanged() ) );
connect( lineEdit_Opponent2Name, SIGNAL( textChanged(const QString &) ), this, SLOT( playerNickChanged() ) );
connect( lineEdit_Opponent3Name, SIGNAL( textChanged(const QString &) ), this, SLOT( playerNickChanged() ) );
connect( lineEdit_Opponent4Name, SIGNAL( textChanged(const QString &) ), this, SLOT( playerNickChanged() ) );
connect( lineEdit_Opponent5Name, SIGNAL( textChanged(const QString &) ), this, SLOT( playerNickChanged() ) );
connect( lineEdit_Opponent6Name, SIGNAL( textChanged(const QString &) ), this, SLOT( playerNickChanged() ) );
connect( pushButton_openFlipsidePicture, SIGNAL( clicked() ), this, SLOT( setFlipsidePicFileName()) );
connect( pushButton_openLogDir, SIGNAL( clicked() ), this, SLOT( setLogDir()) );
2007-06-03 21:27:02 +00:00
connect( pushButton_HumanPlayerAvatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile0()) );
connect( pushButton_Opponent1Avatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile1()) );
connect( pushButton_Opponent2Avatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile2()) );
connect( pushButton_Opponent3Avatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile3()) );
connect( pushButton_Opponent4Avatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile4()) );
connect( pushButton_Opponent5Avatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile5()) );
connect( pushButton_Opponent6Avatar, SIGNAL( clicked() ), this, SLOT( setAvatarFile6()) );
2007-05-13 15:08:10 +00:00
2007-09-21 00:13:47 +00:00
connect( pushButton_editManualBlindsOrder, SIGNAL( clicked() ), this, SLOT( callManualBlindsOrderDialog()) );
connect( pushButton_netEditManualBlindsOrder, SIGNAL( clicked() ), this, SLOT( callNetManualBlindsOrderDialog()) );
2007-08-26 08:02:07 +00:00
connect( checkBox_UseInternetGamePassword, SIGNAL( toggled(bool) ), this, SLOT( clearInternetGamePassword(bool)) );
2007-05-23 10:19:10 +00:00
2007-06-05 21:56:33 +00:00
//temporarely unused until ai is enabled in network
2007-08-21 23:31:09 +00:00
// label_36->hide();
// spinBox_netGameSpeed->hide();
//
// label_18->hide();
// comboBox_netEngineVersion->hide();
2007-05-13 15:08:10 +00:00
}
void settingsDialogImpl::exec() {
2007-05-05 19:02:11 +00:00
// stackedWidget->removeWidget(page_4);
// listWidget->takeItem(2);
2007-03-30 21:02:44 +00:00
// page_4->hide();
playerNickIsChanged = FALSE;
2007-01-17 23:57:41 +00:00
//Player Nicks
2007-06-03 21:27:02 +00:00
lineEdit_HumanPlayerName->setText(QString::fromUtf8(myConfig->readConfigString("MyName").c_str()));
pushButton_HumanPlayerAvatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("MyAvatar").c_str()));
2007-05-13 13:32:06 +00:00
lineEdit_Opponent1Name->setText(QString::fromUtf8(myConfig->readConfigString("Opponent1Name").c_str()));
2007-06-03 21:27:02 +00:00
pushButton_Opponent1Avatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("Opponent1Avatar").c_str()));
2007-05-13 13:32:06 +00:00
lineEdit_Opponent2Name->setText(QString::fromUtf8(myConfig->readConfigString("Opponent2Name").c_str()));
2007-06-03 21:27:02 +00:00
pushButton_Opponent2Avatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("Opponent2Avatar").c_str()));
2007-05-13 13:32:06 +00:00
lineEdit_Opponent3Name->setText(QString::fromUtf8(myConfig->readConfigString("Opponent3Name").c_str()));
2007-06-03 21:27:02 +00:00
pushButton_Opponent3Avatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("Opponent3Avatar").c_str()));
2007-05-13 13:32:06 +00:00
lineEdit_Opponent4Name->setText(QString::fromUtf8(myConfig->readConfigString("Opponent4Name").c_str()));
2007-06-03 21:27:02 +00:00
pushButton_Opponent4Avatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("Opponent4Avatar").c_str()));
2007-05-13 13:32:06 +00:00
lineEdit_Opponent5Name->setText(QString::fromUtf8(myConfig->readConfigString("Opponent5Name").c_str()));
2007-06-03 21:27:02 +00:00
pushButton_Opponent5Avatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("Opponent5Avatar").c_str()));
2007-05-13 13:32:06 +00:00
lineEdit_Opponent6Name->setText(QString::fromUtf8(myConfig->readConfigString("Opponent6Name").c_str()));
2007-06-03 21:27:02 +00:00
pushButton_Opponent6Avatar->setMyLink(QString::fromUtf8(myConfig->readConfigString("Opponent6Avatar").c_str()));
//refresh AvatarIcons
pushButton_HumanPlayerAvatar->setIcon(QIcon(pushButton_HumanPlayerAvatar->getMyLink()));
pushButton_Opponent1Avatar->setIcon(QIcon(pushButton_Opponent1Avatar->getMyLink()));
pushButton_Opponent2Avatar->setIcon(QIcon(pushButton_Opponent2Avatar->getMyLink()));
pushButton_Opponent3Avatar->setIcon(QIcon(pushButton_Opponent3Avatar->getMyLink()));
pushButton_Opponent4Avatar->setIcon(QIcon(pushButton_Opponent4Avatar->getMyLink()));
pushButton_Opponent5Avatar->setIcon(QIcon(pushButton_Opponent5Avatar->getMyLink()));
pushButton_Opponent6Avatar->setIcon(QIcon(pushButton_Opponent6Avatar->getMyLink()));
2007-01-17 23:57:41 +00:00
2007-02-22 22:59:42 +00:00
//Local Game Settings
2007-05-13 13:32:06 +00:00
spinBox_quantityPlayers->setValue(myConfig->readConfigInt("NumberOfPlayers"));
spinBox_startCash->setValue(myConfig->readConfigInt("StartCash"));
2007-09-21 00:13:47 +00:00
spinBox_firstSmallBlind->setValue(myConfig->readConfigInt("FirstSmallBlind"));
radioButton_raiseBlindsAtHands->setChecked(myConfig->readConfigInt("RaiseBlindsAtHands"));
radioButton_raiseBlindsAtMinutes->setChecked(myConfig->readConfigInt("RaiseBlindsAtMinutes"));
spinBox_raiseSmallBlindEveryHands->setValue(myConfig->readConfigInt("RaiseSmallBlindEveryHands"));
spinBox_raiseSmallBlindEveryMinutes->setValue(myConfig->readConfigInt("RaiseSmallBlindEveryMinutes"));
radioButton_alwaysDoubleBlinds->setChecked(myConfig->readConfigInt("AlwaysDoubleBlinds"));
radioButton_manualBlindsOrder->setChecked(myConfig->readConfigInt("ManualBlindsOrder"));
2007-05-13 13:32:06 +00:00
spinBox_gameSpeed->setValue(myConfig->readConfigInt("GameSpeed"));
checkBox_pauseBetweenHands->setChecked(myConfig->readConfigInt("PauseBetweenHands"));
checkBox_showGameSettingsDialogOnNewGame->setChecked(myConfig->readConfigInt("ShowGameSettingsDialogOnNewGame"));
comboBox_engineVersion->setCurrentIndex(myConfig->readConfigInt("EngineVersion"));
2007-02-22 22:59:42 +00:00
//Network Game Settings
2007-05-13 13:32:06 +00:00
spinBox_netQuantityPlayers->setValue(myConfig->readConfigInt("NetNumberOfPlayers"));
spinBox_netStartCash->setValue(myConfig->readConfigInt("NetStartCash"));
2007-09-21 00:13:47 +00:00
spinBox_netFirstSmallBlind->setValue(myConfig->readConfigInt("NetFirstSmallBlind"));
radioButton_netRaiseBlindsAtHands->setChecked(myConfig->readConfigInt("NetRaiseBlindsAtHands"));
radioButton_netRaiseBlindsAtMinutes->setChecked(myConfig->readConfigInt("NetRaiseBlindsAtMinutes"));
spinBox_netRaiseSmallBlindEveryHands->setValue(myConfig->readConfigInt("NetRaiseSmallBlindEveryHands"));
spinBox_netRaiseSmallBlindEveryMinutes->setValue(myConfig->readConfigInt("NetRaiseSmallBlindEveryMinutes"));
radioButton_netAlwaysDoubleBlinds->setChecked(myConfig->readConfigInt("NetAlwaysDoubleBlinds"));
radioButton_netManualBlindsOrder->setChecked(myConfig->readConfigInt("NetManualBlindsOrder"));
2007-08-21 23:31:09 +00:00
spinBox_netGameSpeed->setValue(myConfig->readConfigInt("NetGameSpeed"));
comboBox_netEngineVersion->setCurrentIndex(myConfig->readConfigInt("NetEngineVersion"));
2007-05-30 08:05:53 +00:00
spinBox_netTimeOutPlayerAction->setValue(myConfig->readConfigInt("NetTimeOutPlayerAction"));
2007-05-13 13:32:06 +00:00
spinBox_serverPort->setValue(myConfig->readConfigInt("ServerPort"));
lineEdit_serverPassword->setText(QString::fromUtf8(myConfig->readConfigString("ServerPassword").c_str()));
checkBox_useIpv6->setChecked(myConfig->readConfigInt("ServerUseIpv6"));
2007-06-03 22:41:53 +00:00
checkBox_useSctp->setChecked(myConfig->readConfigInt("ServerUseSctp"));
2007-05-30 08:05:53 +00:00
2007-08-25 20:34:41 +00:00
//Internet Game Settings
lineEdit_InternetServerAddress->setText(QString::fromUtf8(myConfig->readConfigString("InternetServerAddress").c_str()));
spinBox_InternetServerPort->setValue(myConfig->readConfigInt("InternetServerPort"));
2007-08-26 11:40:39 +00:00
lineEdit_InternetServerPassword->setText(QString::fromUtf8(myConfig->readConfigString("InternetServerPassword").c_str()));
2007-08-25 20:34:41 +00:00
checkBox_InternetServerUseIpv6->setChecked(myConfig->readConfigInt("InternetServerUseIpv6"));
checkBox_InternetServerUseSctp->setChecked(myConfig->readConfigInt("InternetServerUseSctp"));
checkBox_UseInternetGamePassword->setChecked(myConfig->readConfigInt("UseInternetGamePassword"));
2007-08-26 08:02:07 +00:00
if(myConfig->readConfigInt("UseInternetGamePassword")) {
lineEdit_InternetGamePassword->setText(QString::fromUtf8(myConfig->readConfigString("InternetGamePassword").c_str()));
}
lineEdit_IRCServerAddress->setText(QString::fromUtf8(myConfig->readConfigString("IRCServerAddress").c_str()));
spinBox_IRCServerPort->setValue(myConfig->readConfigInt("IRCServerPort"));
lineEdit_IRCChannel->setText(QString::fromUtf8(myConfig->readConfigString("IRCChannel").c_str()));
checkBox_IRCServerUseIpv6->setChecked(myConfig->readConfigInt("IRCServerUseIpv6"));
2007-02-22 22:59:42 +00:00
2007-01-20 01:38:40 +00:00
//Interface
2007-05-13 13:32:06 +00:00
checkBox_showLeftToolbox->setChecked(myConfig->readConfigInt("ShowLeftToolBox"));
checkBox_showRightToolbox->setChecked(myConfig->readConfigInt("ShowRightToolBox"));
checkBox_showStatusbarMessages->setChecked(myConfig->readConfigInt("ShowStatusbarMessages"));
checkBox_showIntro->setChecked(myConfig->readConfigInt("ShowIntro"));
checkBox_showFadeOutCardsAnimation->setChecked(myConfig->readConfigInt("ShowFadeOutCardsAnimation"));
checkBox_showFlipCardsAnimation->setChecked(myConfig->readConfigInt("ShowFlipCardsAnimation"));
2007-05-17 23:28:36 +00:00
checkBox_showBlindButtons->setChecked(myConfig->readConfigInt("ShowBlindButtons"));
2007-08-19 23:19:30 +00:00
checkBox_antiPeekMode->setChecked(myConfig->readConfigInt("AntiPeekMode"));
2007-09-17 08:38:09 +00:00
checkBox_alternateFKeysUserActionMode->setChecked(myConfig->readConfigInt("AlternateFKeysUserActionMode"));
2007-05-30 08:05:53 +00:00
checkBox_playSoundEffects->setChecked(myConfig->readConfigInt("PlaySoundEffects"));
2007-06-13 09:27:28 +00:00
horizontalSlider_soundVolume->setValue(myConfig->readConfigInt("SoundVolume"));
2007-05-13 13:32:06 +00:00
radioButton_flipsideTux->setChecked(myConfig->readConfigInt("FlipsideTux"));
radioButton_flipsideOwn->setChecked(myConfig->readConfigInt("FlipsideOwn"));
2007-01-29 00:53:20 +00:00
if(radioButton_flipsideOwn->isChecked()) {
lineEdit_OwnFlipsideFilename->setEnabled(TRUE);
pushButton_openFlipsidePicture->setEnabled(TRUE);
}
2007-05-13 13:32:06 +00:00
lineEdit_OwnFlipsideFilename->setText(QString::fromUtf8(myConfig->readConfigString("FlipsideOwnFile").c_str()));
2007-02-03 10:10:25 +00:00
//Log
2007-05-15 21:22:16 +00:00
groupBox_logOnOff->setChecked(myConfig->readConfigInt("LogOnOff"));
2007-05-13 13:32:06 +00:00
lineEdit_logDir->setText(QString::fromUtf8(myConfig->readConfigString("LogDir").c_str()));
spinBox_logStoreDuration->setValue(myConfig->readConfigInt("LogStoreDuration"));
2007-05-15 21:22:16 +00:00
comboBox_logInterval->setCurrentIndex(myConfig->readConfigInt("LogInterval"));
checkBox_useIpv6->setEnabled(socket_has_ipv6());
checkBox_useSctp->setEnabled(socket_has_sctp());
2007-05-15 21:22:16 +00:00
2007-05-13 15:08:10 +00:00
QDialog::exec();
2007-01-17 23:57:41 +00:00
}
2007-01-20 01:38:40 +00:00
void settingsDialogImpl::isAccepted() {
2007-01-17 23:57:41 +00:00
2007-02-03 22:47:16 +00:00
settingsCorrect = TRUE;
2007-01-22 22:25:58 +00:00
// Player Nicks
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("MyName", lineEdit_HumanPlayerName->text().toUtf8().constData());
myConfig->writeConfigString("MyAvatar", pushButton_HumanPlayerAvatar->getMyLink().toUtf8().constData());
2007-03-28 17:44:22 +00:00
2007-05-13 13:32:06 +00:00
myConfig->writeConfigString("Opponent1Name", lineEdit_Opponent1Name->text().toUtf8().constData());
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("Opponent1Avatar", pushButton_Opponent1Avatar->getMyLink().toUtf8().constData());
2007-03-28 17:44:22 +00:00
2007-05-13 13:32:06 +00:00
myConfig->writeConfigString("Opponent2Name", lineEdit_Opponent2Name->text().toUtf8().constData());
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("Opponent2Avatar", pushButton_Opponent2Avatar->getMyLink().toUtf8().constData());
2007-05-13 13:32:06 +00:00
myConfig->writeConfigString("Opponent3Name", lineEdit_Opponent3Name->text().toUtf8().constData());
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("Opponent3Avatar", pushButton_Opponent3Avatar->getMyLink().toUtf8().constData());
2007-05-13 13:32:06 +00:00
myConfig->writeConfigString("Opponent4Name", lineEdit_Opponent4Name->text().toUtf8().constData());
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("Opponent4Avatar", pushButton_Opponent4Avatar->getMyLink().toUtf8().constData());
2007-05-13 13:32:06 +00:00
myConfig->writeConfigString("Opponent5Name", lineEdit_Opponent5Name->text().toUtf8().constData());
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("Opponent5Avatar", pushButton_Opponent5Avatar->getMyLink().toUtf8().constData());
2007-03-28 17:44:22 +00:00
2007-05-13 13:32:06 +00:00
myConfig->writeConfigString("Opponent6Name", lineEdit_Opponent6Name->text().toUtf8().constData());
2007-06-03 21:27:02 +00:00
myConfig->writeConfigString("Opponent6Avatar", pushButton_Opponent6Avatar->getMyLink().toUtf8().constData());
2007-01-17 23:57:41 +00:00
2007-02-22 22:59:42 +00:00
// Local Game Settings
2007-05-13 13:32:06 +00:00
myConfig->writeConfigInt("NumberOfPlayers", spinBox_quantityPlayers->value());
myConfig->writeConfigInt("StartCash", spinBox_startCash->value());
2007-09-21 00:13:47 +00:00
myConfig->writeConfigInt("FirstSmallBlind", spinBox_firstSmallBlind->value());
myConfig->writeConfigInt("RaiseBlindsAtHands", radioButton_raiseBlindsAtHands->isChecked());
myConfig->writeConfigInt("RaiseBlindsAtMinutes", radioButton_raiseBlindsAtMinutes->isChecked());
myConfig->writeConfigInt("RaiseSmallBlindEveryHands", spinBox_raiseSmallBlindEveryHands->value());
myConfig->writeConfigInt("RaiseSmallBlindEveryMinutes", spinBox_raiseSmallBlindEveryMinutes->value());
myConfig->writeConfigInt("AlwaysDoubleBlinds", radioButton_alwaysDoubleBlinds->isChecked());
myConfig->writeConfigInt("ManualBlindsOrder", radioButton_manualBlindsOrder->isChecked());
2007-05-13 13:32:06 +00:00
myConfig->writeConfigInt("GameSpeed", spinBox_gameSpeed->value());
myConfig->writeConfigInt("EngineVersion", comboBox_engineVersion->currentIndex());
myConfig->writeConfigInt("PauseBetweenHands", checkBox_pauseBetweenHands->isChecked());
myConfig->writeConfigInt("ShowGameSettingsDialogOnNewGame", checkBox_showGameSettingsDialogOnNewGame->isChecked());
2007-01-17 23:57:41 +00:00
2007-02-22 22:59:42 +00:00
//Network Game Settings
2007-05-13 13:32:06 +00:00
myConfig->writeConfigInt("NetNumberOfPlayers", spinBox_netQuantityPlayers->value());
myConfig->writeConfigInt("NetStartCash", spinBox_netStartCash->value());
2007-09-21 00:13:47 +00:00
myConfig->writeConfigInt("NetFirstSmallBlind", spinBox_netFirstSmallBlind->value());
myConfig->writeConfigInt("NetRaiseBlindsAtHands", radioButton_netRaiseBlindsAtHands->isChecked());
myConfig->writeConfigInt("NetRaiseBlindsAtMinutes", radioButton_netRaiseBlindsAtMinutes->isChecked());
myConfig->writeConfigInt("NetRaiseSmallBlindEveryHands", spinBox_netRaiseSmallBlindEveryHands->value());
myConfig->writeConfigInt("NetRaiseSmallBlindEveryMinutes", spinBox_netRaiseSmallBlindEveryMinutes->value());
myConfig->writeConfigInt("NetAlwaysDoubleBlinds", radioButton_netAlwaysDoubleBlinds->isChecked());
myConfig->writeConfigInt("NetManualBlindsOrder", radioButton_netManualBlindsOrder->isChecked());
2007-08-21 23:31:09 +00:00
myConfig->writeConfigInt("NetGameSpeed", spinBox_netGameSpeed->value());
myConfig->writeConfigInt("NetEngineVersion", comboBox_netEngineVersion->currentIndex());
2007-05-30 08:05:53 +00:00
myConfig->writeConfigInt("NetTimeOutPlayerAction", spinBox_netTimeOutPlayerAction->value());
2007-05-13 13:32:06 +00:00
myConfig->writeConfigInt("ServerPort", spinBox_serverPort->value());
myConfig->writeConfigString("ServerPassword", lineEdit_serverPassword->text().toUtf8().constData());
myConfig->writeConfigInt("ServerUseIpv6", checkBox_useIpv6->isChecked());
2007-06-03 22:41:53 +00:00
myConfig->writeConfigInt("ServerUseSctp", checkBox_useSctp->isChecked());
2007-08-25 20:34:41 +00:00
//Internet Game Settings
myConfig->writeConfigString("InternetServerAddress", lineEdit_InternetServerAddress->text().toUtf8().constData());
myConfig->writeConfigInt("InternetServerPort", spinBox_InternetServerPort->value());
2007-08-26 11:40:39 +00:00
myConfig->writeConfigString("InternetServerPassword", lineEdit_InternetServerPassword->text().toUtf8().constData());
2007-08-25 20:34:41 +00:00
myConfig->writeConfigInt("InternetServerUseIpv6", checkBox_InternetServerUseIpv6->isChecked());
myConfig->writeConfigInt("InternetServerUseSctp", checkBox_InternetServerUseSctp->isChecked());
myConfig->writeConfigInt("UseInternetGamePassword", checkBox_UseInternetGamePassword->isChecked());
myConfig->writeConfigString("InternetGamePassword", lineEdit_InternetGamePassword->text().toUtf8().constData());
myConfig->writeConfigString("IRCServerAddress", lineEdit_IRCServerAddress->text().toUtf8().constData());
myConfig->writeConfigInt("IRCServerPort", spinBox_IRCServerPort->value());
myConfig->writeConfigString("IRCChannel", lineEdit_IRCChannel->text().toUtf8().constData());
myConfig->writeConfigInt("IRCServerUseIpv6", checkBox_IRCServerUseIpv6->isChecked());
2007-02-22 22:59:42 +00:00
2007-01-22 22:25:58 +00:00
// Interface
2007-05-13 13:32:06 +00:00
myConfig->writeConfigInt("ShowLeftToolBox", checkBox_showLeftToolbox->isChecked());
myConfig->writeConfigInt("ShowRightToolBox", checkBox_showRightToolbox->isChecked());
myConfig->writeConfigInt("ShowStatusbarMessages", checkBox_showStatusbarMessages->isChecked());
myConfig->writeConfigInt("ShowIntro", checkBox_showIntro->isChecked());
myConfig->writeConfigInt("ShowFadeOutCardsAnimation", checkBox_showFadeOutCardsAnimation->isChecked());
myConfig->writeConfigInt("ShowFlipCardsAnimation", checkBox_showFlipCardsAnimation->isChecked());
2007-05-17 23:28:36 +00:00
myConfig->writeConfigInt("ShowBlindButtons", checkBox_showBlindButtons->isChecked());
2007-08-19 23:19:30 +00:00
myConfig->writeConfigInt("AntiPeekMode", checkBox_antiPeekMode->isChecked());
2007-09-17 08:38:09 +00:00
myConfig->writeConfigInt("AlternateFKeysUserActionMode", checkBox_alternateFKeysUserActionMode->isChecked());
2007-05-30 08:05:53 +00:00
myConfig->writeConfigInt("PlaySoundEffects", checkBox_playSoundEffects->isChecked());
2007-06-13 09:27:28 +00:00
myConfig->writeConfigInt("SoundVolume", horizontalSlider_soundVolume->value());
2007-05-13 13:32:06 +00:00
myConfig->writeConfigInt("FlipsideTux", radioButton_flipsideTux->isChecked());
myConfig->writeConfigInt("FlipsideOwn", radioButton_flipsideOwn->isChecked());
2007-02-04 00:34:44 +00:00
2007-02-05 09:14:11 +00:00
if(radioButton_flipsideOwn->isChecked()) {
2007-05-13 13:32:06 +00:00
if(QFile::QFile(lineEdit_OwnFlipsideFilename->text()).exists() && lineEdit_OwnFlipsideFilename->text() != "") {myConfig->writeConfigString("FlipsideOwnFile", lineEdit_OwnFlipsideFilename->text().toUtf8().constData()); }
2007-02-05 09:14:11 +00:00
else { QMessageBox::warning(this, tr("Settings Error"),
2007-03-01 22:23:38 +00:00
tr("The entered flipside picture doesn't exists.\n"
"Please enter an valid picture!"),
2007-02-05 09:14:11 +00:00
QMessageBox::Ok);
settingsCorrect = FALSE;
}
}
2007-01-20 01:38:40 +00:00
2007-02-03 10:10:25 +00:00
// Log
2007-05-15 21:22:16 +00:00
myConfig->writeConfigInt("LogOnOff", groupBox_logOnOff->isChecked());
2007-05-16 09:31:54 +00:00
if (myConfig->readConfigInt("LogOnOff")) {
// if log On
if(QDir::QDir(lineEdit_logDir->text()).exists() && lineEdit_logDir->text() != "") { myConfig->writeConfigString("LogDir", lineEdit_logDir->text().toUtf8().constData()); }
else {
QMessageBox::warning(this, tr("Settings Error"),
tr("The log file directory doesn't exists.\n"
"Please select an valid directory!"),
QMessageBox::Ok);
settingsCorrect = FALSE;
}
myConfig->writeConfigInt("LogStoreDuration", spinBox_logStoreDuration->value());
myConfig->writeConfigInt("LogInterval", comboBox_logInterval->currentIndex());
2007-02-03 22:47:16 +00:00
}
2007-06-09 09:45:04 +00:00
//write buffer to disc
myConfig->writeBuffer();
2007-02-04 00:34:44 +00:00
//Wenn alles richtig eingegeben wurde --> Dialog schließen
2007-02-03 22:47:16 +00:00
if(settingsCorrect) { this->hide(); }
2007-01-17 01:22:55 +00:00
}
2007-01-28 23:33:48 +00:00
void settingsDialogImpl::setFlipsidePicFileName()
{
2007-03-01 22:23:38 +00:00
QString fileName = QFileDialog::getOpenFileName(this, tr("Select your flipside picture"),
2007-01-28 23:33:48 +00:00
QDir::homePath(),
2007-09-15 22:35:35 +00:00
tr("Images (*.png *.jpg *.gif)"));
2007-01-28 23:33:48 +00:00
if (!fileName.isEmpty())
lineEdit_OwnFlipsideFilename->setText(fileName);
2007-01-29 00:53:20 +00:00
}
2007-02-03 10:10:25 +00:00
2007-03-28 17:44:22 +00:00
void settingsDialogImpl::setAvatarFile0() {
2007-06-03 12:54:10 +00:00
callSelectAvatarDialog();
2007-06-03 21:27:02 +00:00
pushButton_HumanPlayerAvatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_HumanPlayerAvatar->setIcon(QIcon(pushButton_HumanPlayerAvatar->getMyLink()));
2007-03-28 17:44:22 +00:00
}
void settingsDialogImpl::setAvatarFile1() {
2007-06-03 21:27:02 +00:00
callSelectAvatarDialog();
if(mySelectAvatarDialogImpl->getSettingsCorrect()) {
pushButton_Opponent1Avatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_Opponent1Avatar->setIcon(QIcon(pushButton_Opponent1Avatar->getMyLink()));
}
2007-03-28 17:44:22 +00:00
}
void settingsDialogImpl::setAvatarFile2() {
2007-06-03 21:27:02 +00:00
callSelectAvatarDialog();
if(mySelectAvatarDialogImpl->getSettingsCorrect()) {
pushButton_Opponent2Avatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_Opponent2Avatar->setIcon(QIcon(pushButton_Opponent2Avatar->getMyLink()));
}
2007-03-28 17:44:22 +00:00
}
void settingsDialogImpl::setAvatarFile3() {
2007-06-03 21:27:02 +00:00
callSelectAvatarDialog();
if(mySelectAvatarDialogImpl->getSettingsCorrect()) {
pushButton_Opponent3Avatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_Opponent3Avatar->setIcon(QIcon(pushButton_Opponent3Avatar->getMyLink()));
}
2007-03-28 17:44:22 +00:00
}
void settingsDialogImpl::setAvatarFile4() {
2007-06-03 21:27:02 +00:00
callSelectAvatarDialog();
if(mySelectAvatarDialogImpl->getSettingsCorrect()) {
pushButton_Opponent4Avatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_Opponent4Avatar->setIcon(QIcon(pushButton_Opponent4Avatar->getMyLink()));
}
2007-03-28 17:44:22 +00:00
}
void settingsDialogImpl::setAvatarFile5() {
2007-06-03 21:27:02 +00:00
callSelectAvatarDialog();
if(mySelectAvatarDialogImpl->getSettingsCorrect()) {
pushButton_Opponent5Avatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_Opponent5Avatar->setIcon(QIcon(pushButton_Opponent5Avatar->getMyLink()));
}
2007-03-28 17:44:22 +00:00
}
void settingsDialogImpl::setAvatarFile6() {
2007-06-03 21:27:02 +00:00
callSelectAvatarDialog();
if(mySelectAvatarDialogImpl->getSettingsCorrect()) {
pushButton_Opponent6Avatar->setMyLink(mySelectAvatarDialogImpl->getAvatarLink());
pushButton_Opponent6Avatar->setIcon(QIcon(pushButton_Opponent6Avatar->getMyLink()));
}
2007-03-28 17:44:22 +00:00
}
2007-02-03 10:10:25 +00:00
void settingsDialogImpl::setLogDir()
{
QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"),
QDir::homePath(),
QFileDialog::ShowDirsOnly
| QFileDialog::DontResolveSymlinks);
if (!dir.isEmpty()) lineEdit_logDir->setText(dir);
}
2007-08-26 08:02:07 +00:00
void settingsDialogImpl::clearInternetGamePassword(bool clear) {
if(!clear) { lineEdit_InternetGamePassword->clear(); }
}
2007-09-21 00:13:47 +00:00
void settingsDialogImpl::callManualBlindsOrderDialog() { myManualBlindsOrderDialog->exec(); }
void settingsDialogImpl::callNetManualBlindsOrderDialog() { myManualBlindsOrderDialog->exec(); }