diff --git a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp
index 24e5a575..364d7af6 100644
--- a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp
+++ b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp
@@ -396,10 +396,6 @@ void gameLobbyDialogImpl::addGame(unsigned gameId)
updateGameItem(itemList, gameId);
- delete item1;
- delete item2;
- delete item3;
- delete item4;
}
void gameLobbyDialogImpl::updateGameMode(unsigned gameId, int /*newMode*/)
diff --git a/src/gui/qt/internetgamelogindialog.ui b/src/gui/qt/internetgamelogindialog.ui
index 3ec7f68f..200a2da6 100644
--- a/src/gui/qt/internetgamelogindialog.ui
+++ b/src/gui/qt/internetgamelogindialog.ui
@@ -17,7 +17,7 @@
-
- Registered User
+ Registered user
true
@@ -43,14 +43,14 @@
-
- QLineEdit::Normal
+ QLineEdit::Password
-
- Remember Password (not recommended)
+ Remember password (not recommended)
@@ -60,7 +60,7 @@
-
- Login as Guest
+ Login as guest
@@ -80,14 +80,14 @@
-
-
+
Login
-
-
+
Cancel
@@ -101,8 +101,8 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
-</style></head><body style="font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#0000ff;">Create an user account ...</span></p></body></html>
+</style></head><body style=" font-family:'Nimbus Sans L'; font-size:8pt; font-weight:400; font-style:normal;">
+<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" color:#0000ff;">Create new user account ...</span></p></body></html>
@@ -111,7 +111,7 @@ p, li { white-space: pre-wrap; }
- pushButton
+ pushButton_login
clicked()
internetGameLoginDialog
accept()
@@ -127,7 +127,7 @@ p, li { white-space: pre-wrap; }
- pushButton_2
+ pushButton_cancel
clicked()
internetGameLoginDialog
reject()
diff --git a/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.cpp b/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.cpp
index f562af8b..d3823588 100644
--- a/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.cpp
+++ b/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.cpp
@@ -8,6 +8,8 @@ internetGameLoginDialogImpl::internetGameLoginDialogImpl(QWidget *parent, Config
connect(groupBox_reguser, SIGNAL(toggled(bool)), this, SLOT(regUserToggled(bool)));
connect(checkBox_guest, SIGNAL(toggled(bool)), this, SLOT(guestUserToggled(bool)));
+ connect(lineEdit_password, SIGNAL(textEdited(QString)), this, SLOT(okButtonCheck()));
+ connect(lineEdit_username, SIGNAL(textEdited(QString)), this, SLOT(okButtonCheck()));
}
void internetGameLoginDialogImpl::regUserToggled(bool b) {
@@ -18,12 +20,14 @@ void internetGameLoginDialogImpl::regUserToggled(bool b) {
void internetGameLoginDialogImpl::guestUserToggled(bool b) {
groupBox_reguser->setChecked(!b);
+
+ if(b) {
+ checkBox_rememberPassword->setChecked(false);
+ lineEdit_password->clear();
+ lineEdit_username->clear();
+ }
}
-
-
-
-
void internetGameLoginDialogImpl::exec() {
if(myConfig->readConfigInt("InternetLoginMode") == 0) {
@@ -38,6 +42,7 @@ void internetGameLoginDialogImpl::exec() {
checkBox_guest->setChecked(true);
}
+ okButtonCheck();
QDialog::exec();
}
@@ -64,3 +69,18 @@ void internetGameLoginDialogImpl::accept() {
QDialog::accept();
}
+void internetGameLoginDialogImpl::okButtonCheck() {
+
+ if(groupBox_reguser->isChecked()) {
+ if(!lineEdit_password->text().isEmpty() && !lineEdit_username->text().isEmpty()) {
+ pushButton_login->setEnabled(true);
+ }
+ else {
+ pushButton_login->setEnabled(false);
+ }
+ }
+ else {
+ pushButton_login->setEnabled(true);
+ }
+}
+
diff --git a/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.h b/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.h
index 9836fb25..57816adb 100644
--- a/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.h
+++ b/src/gui/qt/internetgamelogindialog/internetgamelogindialogimpl.h
@@ -17,6 +17,7 @@ public:
public slots:
void regUserToggled(bool);
void guestUserToggled(bool);
+ void okButtonCheck();
private:
diff --git a/src/gui/qt/startwindow/startwindowimpl.cpp b/src/gui/qt/startwindow/startwindowimpl.cpp
index c8b7db3b..5315aca1 100644
--- a/src/gui/qt/startwindow/startwindowimpl.cpp
+++ b/src/gui/qt/startwindow/startwindowimpl.cpp
@@ -302,7 +302,6 @@ void startWindowImpl::joinGameLobby() {
// Stop local game.
myGuiInterface->getMyW()->stopTimer();
-// Join Lobby
mySession->terminateNetworkClient();
if (myServerGuiInterface)
myServerGuiInterface->getSession()->terminateNetworkServer();
@@ -313,16 +312,20 @@ void startWindowImpl::joinGameLobby() {
// Clear Lobby dialog.
myGameLobbyDialog->clearDialog();
- showInternetGameLoginDialog();
-
- //Dialog mit Statusbalken
- myConnectToServerDialog->exec();
-
- if (myConnectToServerDialog->result() == QDialog::Rejected ) {
- mySession->terminateNetworkClient();
- }
- else {
- showLobbyDialog();
+ //login
+ myInternetGameLoginDialog->exec();
+ if(myInternetGameLoginDialog->result() == QDialog::Accepted) {
+ //send login infos
+ mySession->startInternetClient(std::string(myInternetGameLoginDialog->lineEdit_username->text().toUtf8().constData()), std::string(myInternetGameLoginDialog->lineEdit_password->text().toUtf8().constData()));
+
+ //Dialog mit Statusbalken
+ myConnectToServerDialog->exec();
+ if (myConnectToServerDialog->result() == QDialog::Accepted ) {
+ showLobbyDialog();
+ }
+ else {
+ mySession->terminateNetworkClient();
+ }
}
}
@@ -871,18 +874,3 @@ QStringList startWindowImpl::getPlayerNicksList() {
return list;
}
-
-void startWindowImpl::showInternetGameLoginDialog() {
-
- myInternetGameLoginDialog->exec();
-
-// send login infos
- mySession->startInternetClient(std::string(myInternetGameLoginDialog->lineEdit_username->text().toUtf8().constData()), std::string(myInternetGameLoginDialog->lineEdit_password->text().toUtf8().constData()));
-
-}
-
-//void startWindowImpl::keyPressEvent ( QKeyEvent * event ) {
-//
-// if (event->key() == Qt::Key_F6) { showInternetGameLoginDialog(); }
-//
-//}
diff --git a/src/gui/qt/startwindow/startwindowimpl.h b/src/gui/qt/startwindow/startwindowimpl.h
index 2abeaee1..e26952d4 100644
--- a/src/gui/qt/startwindow/startwindowimpl.h
+++ b/src/gui/qt/startwindow/startwindowimpl.h
@@ -112,7 +112,6 @@ public slots:
void joinGameLobby();
void showClientDialog();
void showNetworkStartDialog();
- void showInternetGameLoginDialog();
void startNewLocalGame(newGameDialogImpl* =0);