next steps startwindow-integration --> UNSTABLE
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 5.3 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 5.1 KiB |
+1
-1
@@ -33,7 +33,7 @@
|
|||||||
#define POKERTH_VERSION ((POKERTH_VERSION_MAJOR << 8) | POKERTH_VERSION_MINOR)
|
#define POKERTH_VERSION ((POKERTH_VERSION_MAJOR << 8) | POKERTH_VERSION_MINOR)
|
||||||
|
|
||||||
#define POKERTH_BETA_REVISION 0
|
#define POKERTH_BETA_REVISION 0
|
||||||
#define POKERTH_BETA_RELEASE_STRING "0.6.2"
|
#define POKERTH_BETA_RELEASE_STRING "0.6.3"
|
||||||
|
|
||||||
enum ServerNetworkMode {
|
enum ServerNetworkMode {
|
||||||
NETWORK_MODE_TCP = 1,
|
NETWORK_MODE_TCP = 1,
|
||||||
|
|||||||
@@ -19,20 +19,8 @@
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
#include "gametableimpl.h"
|
#include "gametableimpl.h"
|
||||||
|
|
||||||
#include "newgamedialogimpl.h"
|
|
||||||
#include "aboutpokerthimpl.h"
|
|
||||||
#include "mymessagedialogimpl.h"
|
#include "mymessagedialogimpl.h"
|
||||||
#include "settingsdialogimpl.h"
|
#include "settingsdialogimpl.h"
|
||||||
#include "selectavatardialogimpl.h"
|
|
||||||
#include "joinnetworkgamedialogimpl.h"
|
|
||||||
#include "connecttoserverdialogimpl.h"
|
|
||||||
#include "createnetworkgamedialogimpl.h"
|
|
||||||
#include "startnetworkgamedialogimpl.h"
|
|
||||||
#include "changehumanplayernamedialogimpl.h"
|
|
||||||
#include "changecompleteblindsdialogimpl.h"
|
|
||||||
#include "gamelobbydialogimpl.h"
|
|
||||||
#include "timeoutmsgboximpl.h"
|
|
||||||
#include "lobbychat.h"
|
|
||||||
#include "startwindowimpl.h"
|
#include "startwindowimpl.h"
|
||||||
|
|
||||||
#include "startsplash.h"
|
#include "startsplash.h"
|
||||||
@@ -472,17 +460,6 @@ gameTableImpl::gameTableImpl(ConfigFile *c, QMainWindow *parent)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Dialogs
|
// Dialogs
|
||||||
// myNewGameDialog = boost::shared_ptr<newGameDialogImpl>(new newGameDialogImpl(this, myConfig));
|
|
||||||
// // mySelectAvatarDialog = boost::shared_ptr<selectAvatarDialogImpl>(new selectAvatarDialogImpl(this, myConfig));
|
|
||||||
// // // mySettingsDialog = boost::shared_ptr<settingsDialogImpl>(new settingsDialogImpl(this, myConfig, mySelectAvatarDialog.get()));
|
|
||||||
// // myChangeHumanPlayerNameDialog = boost::shared_ptr<changeHumanPlayerNameDialogImpl>(new changeHumanPlayerNameDialogImpl(this, myConfig));
|
|
||||||
// // myJoinNetworkGameDialog = boost::shared_ptr<joinNetworkGameDialogImpl>(new joinNetworkGameDialogImpl(this, myConfig));
|
|
||||||
// // myConnectToServerDialog = boost::shared_ptr<connectToServerDialogImpl>(new connectToServerDialogImpl(this));
|
|
||||||
// // myStartNetworkGameDialog = boost::shared_ptr<startNetworkGameDialogImpl>(new startNetworkGameDialogImpl(this, myConfig));
|
|
||||||
// // myCreateNetworkGameDialog = boost::shared_ptr<createNetworkGameDialogImpl>(new createNetworkGameDialogImpl(this, myConfig));
|
|
||||||
|
|
||||||
myTimeoutDialog.reset(new timeoutMsgBoxImpl(this));
|
|
||||||
|
|
||||||
myChat = new Chat(this, myConfig);
|
myChat = new Chat(this, myConfig);
|
||||||
|
|
||||||
lineEdit_ChatInput->installEventFilter(this);
|
lineEdit_ChatInput->installEventFilter(this);
|
||||||
@@ -558,9 +535,6 @@ gameTableImpl::gameTableImpl(ConfigFile *c, QMainWindow *parent)
|
|||||||
|
|
||||||
//Nachrichten Thread-Save
|
//Nachrichten Thread-Save
|
||||||
connect(this, SIGNAL(signalInitGui(int)), this, SLOT(initGui(int)));
|
connect(this, SIGNAL(signalInitGui(int)), this, SLOT(initGui(int)));
|
||||||
|
|
||||||
// connect(this, SIGNAL(signalShowClientDialog()), this, SLOT(showClientDialog()));
|
|
||||||
|
|
||||||
connect(this, SIGNAL(signalRefreshSet()), this, SLOT(refreshSet()));
|
connect(this, SIGNAL(signalRefreshSet()), this, SLOT(refreshSet()));
|
||||||
connect(this, SIGNAL(signalRefreshCash()), this, SLOT(refreshCash()));
|
connect(this, SIGNAL(signalRefreshCash()), this, SLOT(refreshCash()));
|
||||||
connect(this, SIGNAL(signalRefreshAction(int, int)), this, SLOT(refreshAction(int, int)));
|
connect(this, SIGNAL(signalRefreshAction(int, int)), this, SLOT(refreshAction(int, int)));
|
||||||
@@ -572,26 +546,19 @@ gameTableImpl::gameTableImpl(ConfigFile *c, QMainWindow *parent)
|
|||||||
connect(this, SIGNAL(signalRefreshButton()), this, SLOT(refreshButton()));
|
connect(this, SIGNAL(signalRefreshButton()), this, SLOT(refreshButton()));
|
||||||
connect(this, SIGNAL(signalRefreshGameLabels(int)), this, SLOT(refreshGameLabels(int)));
|
connect(this, SIGNAL(signalRefreshGameLabels(int)), this, SLOT(refreshGameLabels(int)));
|
||||||
connect(this, SIGNAL(signalSetPlayerAvatar(int, QString)), this, SLOT(setPlayerAvatar(int, QString)));
|
connect(this, SIGNAL(signalSetPlayerAvatar(int, QString)), this, SLOT(setPlayerAvatar(int, QString)));
|
||||||
// connect(this, SIGNAL(signalSetPlayerAvatar(int, QString)), myGameLobbyDialog.get(), SLOT(refreshConnectedPlayerAvatars()));
|
|
||||||
|
|
||||||
connect(this, SIGNAL(signalGuiUpdateDone()), this, SLOT(guiUpdateDone()));
|
connect(this, SIGNAL(signalGuiUpdateDone()), this, SLOT(guiUpdateDone()));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalMeInAction()), this, SLOT(meInAction()));
|
connect(this, SIGNAL(signalMeInAction()), this, SLOT(meInAction()));
|
||||||
connect(this, SIGNAL(signalDisableMyButtons()), this, SLOT(disableMyButtons()));
|
connect(this, SIGNAL(signalDisableMyButtons()), this, SLOT(disableMyButtons()));
|
||||||
connect(this, SIGNAL(signalUpdateMyButtonsState()), this, SLOT(updateMyButtonsState()));
|
connect(this, SIGNAL(signalUpdateMyButtonsState()), this, SLOT(updateMyButtonsState()));
|
||||||
connect(this, SIGNAL(signalStartTimeoutAnimation(int, int)), this, SLOT(startTimeoutAnimation(int, int)));
|
connect(this, SIGNAL(signalStartTimeoutAnimation(int, int)), this, SLOT(startTimeoutAnimation(int, int)));
|
||||||
connect(this, SIGNAL(signalStopTimeoutAnimation(int)), this, SLOT(stopTimeoutAnimation(int)));
|
connect(this, SIGNAL(signalStopTimeoutAnimation(int)), this, SLOT(stopTimeoutAnimation(int)));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalDealBeRoCards(int)), this, SLOT(dealBeRoCards(int)));
|
connect(this, SIGNAL(signalDealBeRoCards(int)), this, SLOT(dealBeRoCards(int)));
|
||||||
connect(this, SIGNAL(signalDealHoleCards()), this, SLOT(dealHoleCards()));
|
connect(this, SIGNAL(signalDealHoleCards()), this, SLOT(dealHoleCards()));
|
||||||
connect(this, SIGNAL(signalDealFlopCards0()), this, SLOT(dealFlopCards0()));
|
connect(this, SIGNAL(signalDealFlopCards0()), this, SLOT(dealFlopCards0()));
|
||||||
connect(this, SIGNAL(signalDealTurnCards0()), this, SLOT(dealTurnCards0()));
|
connect(this, SIGNAL(signalDealTurnCards0()), this, SLOT(dealTurnCards0()));
|
||||||
connect(this, SIGNAL(signalDealRiverCards0()), this, SLOT(dealRiverCards0()));
|
connect(this, SIGNAL(signalDealRiverCards0()), this, SLOT(dealRiverCards0()));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalNextPlayerAnimation()), this, SLOT(nextPlayerAnimation()));
|
connect(this, SIGNAL(signalNextPlayerAnimation()), this, SLOT(nextPlayerAnimation()));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalBeRoAnimation2(int)), this, SLOT(beRoAnimation2(int)));
|
connect(this, SIGNAL(signalBeRoAnimation2(int)), this, SLOT(beRoAnimation2(int)));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalPreflopAnimation1()), this, SLOT(preflopAnimation1()));
|
connect(this, SIGNAL(signalPreflopAnimation1()), this, SLOT(preflopAnimation1()));
|
||||||
connect(this, SIGNAL(signalPreflopAnimation2()), this, SLOT(preflopAnimation2()));
|
connect(this, SIGNAL(signalPreflopAnimation2()), this, SLOT(preflopAnimation2()));
|
||||||
connect(this, SIGNAL(signalFlopAnimation1()), this, SLOT(flopAnimation1()));
|
connect(this, SIGNAL(signalFlopAnimation1()), this, SLOT(flopAnimation1()));
|
||||||
@@ -602,59 +569,9 @@ gameTableImpl::gameTableImpl(ConfigFile *c, QMainWindow *parent)
|
|||||||
connect(this, SIGNAL(signalRiverAnimation2()), this, SLOT(riverAnimation2()));
|
connect(this, SIGNAL(signalRiverAnimation2()), this, SLOT(riverAnimation2()));
|
||||||
connect(this, SIGNAL(signalPostRiverAnimation1()), this, SLOT(postRiverAnimation1()));
|
connect(this, SIGNAL(signalPostRiverAnimation1()), this, SLOT(postRiverAnimation1()));
|
||||||
connect(this, SIGNAL(signalPostRiverRunAnimation1()), this, SLOT(postRiverRunAnimation1()));
|
connect(this, SIGNAL(signalPostRiverRunAnimation1()), this, SLOT(postRiverRunAnimation1()));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalFlipHolecardsAllIn()), this, SLOT(flipHolecardsAllIn()));
|
connect(this, SIGNAL(signalFlipHolecardsAllIn()), this, SLOT(flipHolecardsAllIn()));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalNextRoundCleanGui()), this, SLOT(nextRoundCleanGui()));
|
connect(this, SIGNAL(signalNextRoundCleanGui()), this, SLOT(nextRoundCleanGui()));
|
||||||
|
|
||||||
// connect(this, SIGNAL(signalNetClientConnect(int)), myConnectToServerDialog.get(), SLOT(refresh(int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameInfo(int)), myStartNetworkGameDialog.get(), SLOT(refresh(int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameInfo(int)), myGameLobbyDialog.get(), SLOT(refresh(int)));
|
|
||||||
|
|
||||||
// connect(this, SIGNAL(signalNetClientSelfJoined(unsigned, QString, int)), myStartNetworkGameDialog.get(), SLOT(joinedNetworkGame(unsigned, QString, int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientPlayerJoined(unsigned, QString, int)), myStartNetworkGameDialog.get(), SLOT(addConnectedPlayer(unsigned, QString, int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientPlayerChanged(unsigned, QString)), myStartNetworkGameDialog.get(), SLOT(updatePlayer(unsigned, QString)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientPlayerLeft(unsigned, QString)), myStartNetworkGameDialog.get(), SLOT(removePlayer(unsigned, QString)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientNewGameAdmin(unsigned, QString)), myStartNetworkGameDialog.get(), SLOT(newGameAdmin(unsigned, QString)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListNew(unsigned)), myStartNetworkGameDialog.get(), SLOT(gameCreated(unsigned)));
|
|
||||||
|
|
||||||
// connect(this, SIGNAL(signalNetClientSelfJoined(unsigned, QString, int)), myGameLobbyDialog.get(), SLOT(joinedNetworkGame(unsigned, QString, int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientPlayerJoined(unsigned, QString, int)), myGameLobbyDialog.get(), SLOT(addConnectedPlayer(unsigned, QString, int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientPlayerChanged(unsigned, QString)), myGameLobbyDialog.get(), SLOT(updatePlayer(unsigned, QString)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientPlayerLeft(unsigned, QString)), myGameLobbyDialog.get(), SLOT(removePlayer(unsigned, QString)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientNewGameAdmin(unsigned, QString)), myGameLobbyDialog.get(), SLOT(newGameAdmin(unsigned, QString)));
|
|
||||||
//
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListNew(unsigned)), myGameLobbyDialog.get(), SLOT(addGame(unsigned)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListRemove(unsigned)), myGameLobbyDialog.get(), SLOT(removeGame(unsigned)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListUpdateMode(unsigned, int)), myGameLobbyDialog.get(), SLOT(updateGameMode(unsigned, int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListUpdateAdmin(unsigned, unsigned)), myGameLobbyDialog.get(), SLOT(updateGameAdmin(unsigned, unsigned)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListPlayerJoined(unsigned, unsigned)), myGameLobbyDialog.get(), SLOT(gameAddPlayer(unsigned, unsigned)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientGameListPlayerLeft(unsigned, unsigned)), myGameLobbyDialog.get(), SLOT(gameRemovePlayer(unsigned, unsigned)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientRemovedFromGame(int)), myGameLobbyDialog.get(), SLOT(removedFromGame(int)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientStatsUpdate(ServerStats)), myGameLobbyDialog.get(), SLOT(updateStats(ServerStats)));
|
|
||||||
connect(this, SIGNAL(signalNetClientShowTimeoutDialog(int, unsigned)), this, SLOT(showTimeoutDialog(int, unsigned)));
|
|
||||||
|
|
||||||
// Errors are handled globally, not within one dialog.
|
|
||||||
connect(this, SIGNAL(signalNetClientError(int, int)), this, SLOT(networkError(int, int)));
|
|
||||||
connect(this, SIGNAL(signalNetClientNotification(int)), this, SLOT(networkNotification(int)));
|
|
||||||
connect(this, SIGNAL(signalNetClientRemovedFromGame(int)), this, SLOT(networkNotification(int)));
|
|
||||||
connect(this, SIGNAL(signalNetServerError(int, int)), this, SLOT(networkError(int, int)));
|
|
||||||
connect(this, SIGNAL(signalNetClientGameStart(boost::shared_ptr<Game>)), this, SLOT(networkStart(boost::shared_ptr<Game>)));
|
|
||||||
|
|
||||||
//Chat Messages
|
|
||||||
// connect(this, SIGNAL(signalNetClientChatMsg(QString, QString)), myChat, SLOT(receiveMessage(QString, QString)));
|
|
||||||
// connect(this, SIGNAL(signalNetClientChatMsg(QString, QString)), myStartNetworkGameDialog.get(), SLOT(receiveChatMsg(QString, QString)));
|
|
||||||
|
|
||||||
// connect(this, SIGNAL(signalIrcConnect(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(connected(QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcSelfJoined(QString, QString)), myGameLobbyDialog->getLobbyChat(), SLOT(selfJoined(QString, QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcPlayerJoined(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(playerJoined(QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcPlayerChanged(QString, QString)), myGameLobbyDialog->getLobbyChat(), SLOT(playerChanged(QString, QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcPlayerKicked(QString, QString, QString)), myGameLobbyDialog->getLobbyChat(), SLOT(playerKicked(QString, QString, QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcPlayerLeft(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(playerLeft(QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcChatMessage(QString, QString)), myGameLobbyDialog->getLobbyChat(), SLOT(displayMessage(QString, QString)));
|
|
||||||
// connect(this, SIGNAL(signalIrcError(int)), myGameLobbyDialog->getLobbyChat(), SLOT(chatError(int)));
|
|
||||||
// connect(this, SIGNAL(signalIrcServerError(int)), myGameLobbyDialog->getLobbyChat(), SLOT(chatServerError(int)));
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
gameTableImpl::~gameTableImpl() {
|
gameTableImpl::~gameTableImpl() {
|
||||||
@@ -887,18 +804,6 @@ void gameTableImpl::refreshPlayerName() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList gameTableImpl::getPlayerNicksList() {
|
|
||||||
|
|
||||||
QStringList list;
|
|
||||||
PlayerListConstIterator it_c;
|
|
||||||
|
|
||||||
for (it_c=mySession->getCurrentGame()->getSeatsList()->begin(); it_c!=mySession->getCurrentGame()->getSeatsList()->end(); it_c++) {
|
|
||||||
list << QString::fromUtf8((*it_c)->getMyName().c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
return list;
|
|
||||||
}
|
|
||||||
|
|
||||||
void gameTableImpl::refreshPlayerAvatar() {
|
void gameTableImpl::refreshPlayerAvatar() {
|
||||||
|
|
||||||
QPixmap onePix = QPixmap::fromImage(QImage(myAppDataPath +"gfx/gui/misc/1px.png"));
|
QPixmap onePix = QPixmap::fromImage(QImage(myAppDataPath +"gfx/gui/misc/1px.png"));
|
||||||
@@ -1499,7 +1404,7 @@ void gameTableImpl::provideMyActions(int mode) {
|
|||||||
if( currentHand->getSeatsList()->front()->getMyAction() != PLAYER_ACTION_FOLD ) {
|
if( currentHand->getSeatsList()->front()->getMyAction() != PLAYER_ACTION_FOLD ) {
|
||||||
pushButtonBetRaiseString = "Bet $"+QString::number(getMyBetAmount());
|
pushButtonBetRaiseString = "Bet $"+QString::number(getMyBetAmount());
|
||||||
pushButtonCallCheckString = "Check";
|
pushButtonCallCheckString = "Check";
|
||||||
if( currentGame->getActivePlayerList()->size() > 2 && currentGame->getSeatsList()->front()->getMyButton() == BUTTON_SMALL_BLIND || ( currentGame->getActivePlayerList()->size() <= 2 && currentGame->getSeatsList()->front()->getMyButton() == BUTTON_BIG_BLIND)) { pushButtonFoldString = "Fold"; }
|
if( (currentGame->getActivePlayerList()->size() > 2 && currentGame->getSeatsList()->front()->getMyButton() == BUTTON_SMALL_BLIND ) || ( currentGame->getActivePlayerList()->size() <= 2 && currentGame->getSeatsList()->front()->getMyButton() == BUTTON_BIG_BLIND)) { pushButtonFoldString = "Fold"; }
|
||||||
else { pushButtonFoldString = "Check / Fold"; }
|
else { pushButtonFoldString = "Check / Fold"; }
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -2667,323 +2572,6 @@ void gameTableImpl::breakButtonClicked() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void gameTableImpl::networkError(int errorID, int /*osErrorID*/) {
|
|
||||||
|
|
||||||
hideTimeoutDialog();
|
|
||||||
switch (errorID) {
|
|
||||||
case ERR_SOCK_SERVERADDR_NOT_SET:
|
|
||||||
{QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Server address was not set."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_INVALID_PORT:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("An invalid port was set (ports 0-1023 are not allowed)."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_CREATION_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not create a socket for TCP communication."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_SET_ADDR_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not set the IP address."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_SET_PORT_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not set the port for this type of address."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_RESOLVE_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The server name could not be resolved."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_BIND_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Bind failed - please choose a different port."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_LISTEN_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal network error: \"listen\" failed."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_ACCEPT_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Server execution was terminated."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_CONNECT_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not connect to the server."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_CONNECT_TIMEOUT:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Connection timed out.\nPlease check the server address.\n\nIf the server is behind a NAT-Router, make sure port forwarding has been set up on server side."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_SELECT_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal network error: \"select\" failed."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_SEND_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal network error: \"send\" failed."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_RECV_FAILED: // Sometimes windows reports recv failed on close.
|
|
||||||
case ERR_SOCK_CONN_RESET:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Connection was closed by the server."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_CONN_EXISTS:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal network error: Duplicate TCP connection."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_INVALID_PACKET:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("An invalid network packet was received.\nPlease make sure that all players use the same version of PokerTH."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_INVALID_STATE:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal state error.\nPlease make sure that all players use the same version of PokerTH."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_INVALID_SERVERLIST_URL:
|
|
||||||
case ERR_SOCK_DOWNLOAD_INVALID_URL:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Invalid server list URL.\nPlease correct the address in the settings."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_OPEN_MD5_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not open the server list MD5 file.\nPlease make sure that the server list URL is correct."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_INVALID_SERVERLIST_MD5:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Synchronization of the PokerTH internet server list has failed.\nPlease make sure that the server list URL is correct."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_INVALID_SERVERLIST_XML:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The PokerTH internet server list contains invalid data.\nIf you use a custom server list, please make sure its format is correct."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_UNZIP_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not unzip the PokerTH internet server list."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_DOWNLOAD_INIT_FAILED:
|
|
||||||
case ERR_SOCK_DOWNLOAD_SELECT_FAILED:
|
|
||||||
case ERR_SOCK_DOWNLOAD_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not download the PokerTH internet server list.\nPlease make sure you are directly connected to the internet."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_SOCK_DOWNLOAD_OPEN_FAILED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not open the target file when downloading the server list."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_VERSION_NOT_SUPPORTED:
|
|
||||||
{ QMessageBox msgBox(QMessageBox::Warning, tr("Network Error"),
|
|
||||||
tr("The PokerTH server does not support this version of the game.<br>Please go to <a href=\"http://www.pokerth.net/\" target=\"_blank\">http://www.pokerth.net</a> and download the latest version."),
|
|
||||||
QMessageBox::Close, this);
|
|
||||||
msgBox.setTextFormat(Qt::RichText);
|
|
||||||
msgBox.exec();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case ERR_NET_SERVER_FULL:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Sorry, this server is already full."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_PASSWORD:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Invalid password when joining the game.\nPlease reenter the password and try again."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_PASSWORD_STR:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The password is too long. Please choose another one."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_PLAYER_NAME_IN_USE:
|
|
||||||
{ /*myChangeHumanPlayerNameDialog->label_Message->setText(tr("Your player name is already used by another player.\nPlease choose a different name."));
|
|
||||||
myChangeHumanPlayerNameDialog->exec();*/ }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_PLAYER_NAME:
|
|
||||||
{ /*myChangeHumanPlayerNameDialog->label_Message->setText(tr("The player name is too short, too long or invalid. Please choose another one."));
|
|
||||||
myChangeHumanPlayerNameDialog->exec();*/ }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_GAME_NAME:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The game name is either too short or too long. Please choose another one."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_UNKNOWN_GAME:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The game could not be found."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_CHAT_TEXT:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The chat text is invalid."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_UNKNOWN_PLAYER_ID:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The server referred to an unknown player. Aborting."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_NO_CURRENT_PLAYER:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal error: The current player could not be found."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_PLAYER_NOT_ACTIVE:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Internal error: The current player is not active."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_PLAYER_KICKED:
|
|
||||||
{ mySession->terminateNetworkClient();
|
|
||||||
QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("You were kicked from the server."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_PLAYER_BANNED:
|
|
||||||
{ mySession->terminateNetworkClient();
|
|
||||||
QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("You were temporarily banned from the server."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_SESSION_TIMED_OUT:
|
|
||||||
{ mySession->terminateNetworkClient();
|
|
||||||
QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Your server connection timed out due to inactivity. You are very welcome to reconnect!"),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_PLAYER_COUNT:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The client player count is invalid."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_TOO_MANY_MANUAL_BLINDS:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Too many manual blinds were set. Please reconfigure the manual blinds."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_AVATAR_FILE:
|
|
||||||
case ERR_NET_WRONG_AVATAR_SIZE:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("An invalid avatar file was configured. Please choose a different avatar."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_AVATAR_TOO_LARGE:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The selected avatar file is too large. Please choose a different avatar."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_AVATAR_UPLOAD_BLOCKED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("You cannot upload a new avatar file at this time. Please try again in a few seconds."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_INVALID_REQUEST_ID:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("An internal avatar error occured. Please report this to an admin in the lobby chat."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_START_TIMEOUT:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("Could not start game: Synchronization failed."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case ERR_NET_SERVER_MAINTENANCE:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("The server is down for maintenance. Please try again later."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
default: { QMessageBox::warning(this, tr("Network Error"),
|
|
||||||
tr("An internal error occured."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
}
|
|
||||||
// close dialogs
|
|
||||||
// myGameLobbyDialog->reject();
|
|
||||||
// myConnectToServerDialog->reject();
|
|
||||||
// myStartNetworkGameDialog->reject();
|
|
||||||
}
|
|
||||||
|
|
||||||
void gameTableImpl::networkNotification(int notificationId)
|
|
||||||
{
|
|
||||||
hideTimeoutDialog();
|
|
||||||
switch (notificationId)
|
|
||||||
{
|
|
||||||
case NTF_NET_REMOVED_KICKED:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Notification"),
|
|
||||||
tr("You were kicked from the game."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case NTF_NET_REMOVED_GAME_FULL:
|
|
||||||
case NTF_NET_JOIN_GAME_FULL:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Notification"),
|
|
||||||
tr("Sorry, this game is already full."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case NTF_NET_REMOVED_ALREADY_RUNNING:
|
|
||||||
case NTF_NET_JOIN_ALREADY_RUNNING:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Notification"),
|
|
||||||
tr("Unable to join - the server has already started the game."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case NTF_NET_REMOVED_TIMEOUT:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Notification"),
|
|
||||||
tr("Your admin state timed out due to inactivity. Feel free to create a new game!"),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case NTF_NET_JOIN_INVALID_PASSWORD:
|
|
||||||
{ QMessageBox::warning(this, tr("Network Notification"),
|
|
||||||
tr("Invalid password when joining the game.\nPlease reenter the password and try again."),
|
|
||||||
QMessageBox::Close); }
|
|
||||||
break;
|
|
||||||
case NTF_NET_NEW_RELEASE_AVAILABLE:
|
|
||||||
{ QMessageBox msgBox(QMessageBox::Information, tr("Network Notification"),
|
|
||||||
tr("A new release of PokerTH is available.<br>Please go to <a href=\"http://www.pokerth.net/\" target=\"_blank\">http://www.pokerth.net</a> and download the latest version."),
|
|
||||||
QMessageBox::Close, this);
|
|
||||||
msgBox.setTextFormat(Qt::RichText);
|
|
||||||
msgBox.exec();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case NTF_NET_OUTDATED_BETA:
|
|
||||||
{ QMessageBox msgBox(QMessageBox::Information, tr("Network Notification"),
|
|
||||||
tr("This beta release of PokerTH is outdated.<br>Please go to <a href=\"http://www.pokerth.net/\" target=\"_blank\">http://www.pokerth.net</a> and download the latest version."),
|
|
||||||
QMessageBox::Close, this);
|
|
||||||
msgBox.setTextFormat(Qt::RichText);
|
|
||||||
msgBox.exec();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void gameTableImpl::networkStart(boost::shared_ptr<Game> game)
|
|
||||||
{
|
|
||||||
mySession->startClientGame(game);
|
|
||||||
|
|
||||||
//send playerNicksList to chat for nick-autocompletition
|
|
||||||
myChat->setPlayerNicksList(getPlayerNicksList());
|
|
||||||
}
|
|
||||||
|
|
||||||
void gameTableImpl::keyPressEvent ( QKeyEvent * event ) {
|
void gameTableImpl::keyPressEvent ( QKeyEvent * event ) {
|
||||||
|
|
||||||
// cout << event->key() << endl;
|
// cout << event->key() << endl;
|
||||||
@@ -3447,19 +3035,3 @@ void gameTableImpl::leaveCurrentNetworkGame() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void gameTableImpl::showTimeoutDialog(int msgID, unsigned duration) {
|
|
||||||
|
|
||||||
if(myTimeoutDialog->isHidden()) {
|
|
||||||
myTimeoutDialog->setMySession(mySession);
|
|
||||||
myTimeoutDialog->setMsgID((NetTimeoutReason)msgID);
|
|
||||||
myTimeoutDialog->setTimeoutDuration(duration);
|
|
||||||
myTimeoutDialog->show();
|
|
||||||
myTimeoutDialog->raise();
|
|
||||||
myTimeoutDialog->activateWindow();
|
|
||||||
myTimeoutDialog->startTimeout();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void gameTableImpl::hideTimeoutDialog() { myTimeoutDialog->hide(); }
|
|
||||||
|
|||||||
@@ -37,21 +37,11 @@ class Game;
|
|||||||
|
|
||||||
class GuiInterface;
|
class GuiInterface;
|
||||||
class BoardInterface;
|
class BoardInterface;
|
||||||
// class HandInterface;
|
|
||||||
class PlayerInterface;
|
class PlayerInterface;
|
||||||
class MyCardsPixmapLabel;
|
class MyCardsPixmapLabel;
|
||||||
class MyAvatarLabel;
|
class MyAvatarLabel;
|
||||||
class newGameDialogImpl;
|
|
||||||
class settingsDialogImpl;
|
class settingsDialogImpl;
|
||||||
class selectAvatarDialogImpl;
|
|
||||||
class aboutPokerthImpl;
|
|
||||||
class joinNetworkGameDialogImpl;
|
|
||||||
class connectToServerDialogImpl;
|
|
||||||
class createNetworkGameDialogImpl;
|
|
||||||
class startNetworkGameDialogImpl;
|
|
||||||
class changeHumanPlayerNameDialogImpl;
|
|
||||||
class gameLobbyDialogImpl;
|
|
||||||
class timeoutMsgBoxImpl;
|
|
||||||
class startWindowImpl;
|
class startWindowImpl;
|
||||||
|
|
||||||
class QColor;
|
class QColor;
|
||||||
@@ -74,7 +64,8 @@ public:
|
|||||||
void setLog(Log* l) { myLog = l; }
|
void setLog(Log* l) { myLog = l; }
|
||||||
|
|
||||||
SDLPlayer* getMySDLPlayer() const { return mySDLPlayer; }
|
SDLPlayer* getMySDLPlayer() const { return mySDLPlayer; }
|
||||||
|
Chat* getMyChat() const { return myChat; }
|
||||||
|
|
||||||
void setSpeeds();
|
void setSpeeds();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
@@ -129,38 +120,6 @@ signals:
|
|||||||
|
|
||||||
void signalNextRoundCleanGui();
|
void signalNextRoundCleanGui();
|
||||||
|
|
||||||
void signalNetClientConnect(int actionID);
|
|
||||||
void signalNetClientGameInfo(int actionID);
|
|
||||||
void signalNetClientError(int errorID, int osErrorID);
|
|
||||||
void signalNetClientNotification(int notificationId);
|
|
||||||
void signalNetClientStatsUpdate(ServerStats stats);
|
|
||||||
void signalNetClientShowTimeoutDialog(int, unsigned);
|
|
||||||
void signalNetClientRemovedFromGame(int notificationId);
|
|
||||||
void signalNetServerError(int errorID, int osErrorID);
|
|
||||||
void signalNetClientSelfJoined(unsigned playerId, QString playerName, int rights);
|
|
||||||
void signalNetClientPlayerJoined(unsigned playerId, QString playerName, int rights);
|
|
||||||
void signalNetClientPlayerChanged(unsigned playerId, QString newPlayerName);
|
|
||||||
void signalNetClientPlayerLeft(unsigned playerId, QString playerName);
|
|
||||||
void signalNetClientNewGameAdmin(unsigned playerId, QString playerName);
|
|
||||||
void signalNetClientGameListNew(unsigned gameId);
|
|
||||||
void signalNetClientGameListRemove(unsigned gameId);
|
|
||||||
void signalNetClientGameListUpdateMode(unsigned gameId, int mode);
|
|
||||||
void signalNetClientGameListUpdateAdmin(unsigned gameId, unsigned adminPlayerId);
|
|
||||||
void signalNetClientGameListPlayerJoined(unsigned gameId, unsigned playerId);
|
|
||||||
void signalNetClientGameListPlayerLeft(unsigned gameId, unsigned playerId);
|
|
||||||
void signalNetClientGameStart(boost::shared_ptr<Game> game);
|
|
||||||
void signalNetClientChatMsg(QString nickName, QString msg);
|
|
||||||
|
|
||||||
void signalIrcConnect(QString server);
|
|
||||||
void signalIrcSelfJoined(QString nickName, QString channel);
|
|
||||||
void signalIrcPlayerJoined(QString nickName);
|
|
||||||
void signalIrcPlayerChanged(QString oldNick, QString newNick);
|
|
||||||
void signalIrcPlayerKicked(QString nickName, QString byWhom, QString reason);
|
|
||||||
void signalIrcPlayerLeft(QString nickName);
|
|
||||||
void signalIrcChatMessage(QString nickName, QString msg);
|
|
||||||
void signalIrcError(int errorCode);
|
|
||||||
void signalIrcServerError(int errorCode);
|
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|
||||||
void initGui(int speed);
|
void initGui(int speed);
|
||||||
@@ -174,7 +133,6 @@ public slots:
|
|||||||
void refreshGroupbox(int =-1, int =-1);
|
void refreshGroupbox(int =-1, int =-1);
|
||||||
void refreshAll();
|
void refreshAll();
|
||||||
void refreshPlayerName();
|
void refreshPlayerName();
|
||||||
QStringList getPlayerNicksList();
|
|
||||||
void refreshGameLabels(int);
|
void refreshGameLabels(int);
|
||||||
void refreshButton();
|
void refreshButton();
|
||||||
void refreshPlayerAvatar();
|
void refreshPlayerAvatar();
|
||||||
@@ -299,10 +257,6 @@ public slots:
|
|||||||
void tabSwitchAction();
|
void tabSwitchAction();
|
||||||
|
|
||||||
void leaveCurrentNetworkGame();
|
void leaveCurrentNetworkGame();
|
||||||
|
|
||||||
void networkError(int, int);
|
|
||||||
void networkNotification(int);
|
|
||||||
void networkStart(boost::shared_ptr<Game> game);
|
|
||||||
|
|
||||||
void localGameModification();
|
void localGameModification();
|
||||||
void networkGameModification();
|
void networkGameModification();
|
||||||
@@ -322,11 +276,6 @@ public slots:
|
|||||||
void showMaximized ();
|
void showMaximized ();
|
||||||
void closeGameTable();
|
void closeGameTable();
|
||||||
|
|
||||||
void showTimeoutDialog(int msgID, unsigned duration);
|
|
||||||
void hideTimeoutDialog();
|
|
||||||
|
|
||||||
Chat* getMyChat() const { return myChat; }
|
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@@ -391,16 +340,6 @@ private:
|
|||||||
QPixmap *flipside;
|
QPixmap *flipside;
|
||||||
|
|
||||||
// Dialogs
|
// Dialogs
|
||||||
// boost::shared_ptr<newGameDialogImpl> myNewGameDialog;
|
|
||||||
// boost::shared_ptr<settingsDialogImpl> mySettingsDialog;
|
|
||||||
// boost::shared_ptr<selectAvatarDialogImpl> mySelectAvatarDialog;
|
|
||||||
// boost::shared_ptr<changeHumanPlayerNameDialogImpl> myChangeHumanPlayerNameDialog;
|
|
||||||
// boost::shared_ptr<joinNetworkGameDialogImpl> myJoinNetworkGameDialog;
|
|
||||||
// boost::shared_ptr<connectToServerDialogImpl> myConnectToServerDialog;
|
|
||||||
// boost::shared_ptr<startNetworkGameDialogImpl> myStartNetworkGameDialog;
|
|
||||||
// boost::shared_ptr<createNetworkGameDialogImpl> myCreateNetworkGameDialog;
|
|
||||||
// boost::shared_ptr<gameLobbyDialogImpl> myGameLobbyDialog;
|
|
||||||
boost::shared_ptr<timeoutMsgBoxImpl> myTimeoutDialog;
|
|
||||||
startWindowImpl *myStartWindow;
|
startWindowImpl *myStartWindow;
|
||||||
|
|
||||||
//Sound
|
//Sound
|
||||||
|
|||||||
@@ -119,14 +119,7 @@ void GuiWrapper::logPlayerWinGame(std::string playerName, int gameID) { myLog->s
|
|||||||
void GuiWrapper::flushLogAtGame(int gameID) { myLog->signalFlushLogAtGame(gameID); }
|
void GuiWrapper::flushLogAtGame(int gameID) { myLog->signalFlushLogAtGame(gameID); }
|
||||||
void GuiWrapper::flushLogAtHand() { myLog->signalFlushLogAtHand(); }
|
void GuiWrapper::flushLogAtHand() { myLog->signalFlushLogAtHand(); }
|
||||||
|
|
||||||
void GuiWrapper::SignalNetClientGameStart(boost::shared_ptr<Game> game) { myW->signalNetClientGameStart(game); }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
////////// this is for startwindow ////////////////////
|
////////// this is for startwindow ////////////////////
|
||||||
|
|
||||||
|
|
||||||
void GuiWrapper::SignalNetClientConnect(int actionID) { myStartWindow->signalNetClientConnect(actionID); }
|
void GuiWrapper::SignalNetClientConnect(int actionID) { myStartWindow->signalNetClientConnect(actionID); }
|
||||||
void GuiWrapper::SignalNetClientGameInfo(int actionID) { myStartWindow->signalNetClientGameInfo(actionID); }
|
void GuiWrapper::SignalNetClientGameInfo(int actionID) { myStartWindow->signalNetClientGameInfo(actionID); }
|
||||||
void GuiWrapper::SignalNetClientError(int errorID, int osErrorID) { myStartWindow->signalNetClientError(errorID, osErrorID); }
|
void GuiWrapper::SignalNetClientError(int errorID, int osErrorID) { myStartWindow->signalNetClientError(errorID, osErrorID); }
|
||||||
@@ -161,13 +154,14 @@ void GuiWrapper::SignalNetClientGameListUpdateMode(unsigned gameId, GameMode mod
|
|||||||
void GuiWrapper::SignalNetClientGameListUpdateAdmin(unsigned gameId, unsigned adminPlayerId) {myStartWindow->signalNetClientGameListUpdateAdmin(gameId, adminPlayerId); }
|
void GuiWrapper::SignalNetClientGameListUpdateAdmin(unsigned gameId, unsigned adminPlayerId) {myStartWindow->signalNetClientGameListUpdateAdmin(gameId, adminPlayerId); }
|
||||||
void GuiWrapper::SignalNetClientGameListPlayerJoined(unsigned gameId, unsigned playerId) { myStartWindow->signalNetClientGameListPlayerJoined(gameId, playerId); }
|
void GuiWrapper::SignalNetClientGameListPlayerJoined(unsigned gameId, unsigned playerId) { myStartWindow->signalNetClientGameListPlayerJoined(gameId, playerId); }
|
||||||
void GuiWrapper::SignalNetClientGameListPlayerLeft(unsigned gameId, unsigned playerId) { myStartWindow->signalNetClientGameListPlayerLeft(gameId, playerId); }
|
void GuiWrapper::SignalNetClientGameListPlayerLeft(unsigned gameId, unsigned playerId) { myStartWindow->signalNetClientGameListPlayerLeft(gameId, playerId); }
|
||||||
|
void GuiWrapper::SignalNetClientGameStart(boost::shared_ptr<Game> game) { myStartWindow->signalNetClientGameStart(game); }
|
||||||
|
|
||||||
|
|
||||||
void GuiWrapper::SignalNetClientWaitDialog() { myStartWindow->signalShowClientDialog(); }
|
void GuiWrapper::SignalNetClientWaitDialog() { myStartWindow->signalShowClientDialog(); }
|
||||||
void GuiWrapper::SignalNetClientChatMsg(const string &playerName, const string &msg) { myStartWindow->signalNetClientChatMsg(QString::fromUtf8(playerName.c_str()), QString::fromUtf8(msg.c_str())); }
|
void GuiWrapper::SignalNetClientChatMsg(const string &playerName, const string &msg) { myStartWindow->signalNetClientChatMsg(QString::fromUtf8(playerName.c_str()), QString::fromUtf8(msg.c_str())); }
|
||||||
|
|
||||||
void GuiWrapper::SignalNetServerSuccess(int /*actionID*/) { }
|
void GuiWrapper::SignalNetServerSuccess(int /*actionID*/) { }
|
||||||
void GuiWrapper::SignalNetServerError(int errorID, int osErrorID) { myW->signalNetServerError(errorID, osErrorID); }
|
void GuiWrapper::SignalNetServerError(int errorID, int osErrorID) { myStartWindow->signalNetServerError(errorID, osErrorID); }
|
||||||
|
|
||||||
void GuiWrapper::SignalIrcConnect(const string &server) { myStartWindow->signalIrcConnect(QString::fromUtf8(server.c_str())); }
|
void GuiWrapper::SignalIrcConnect(const string &server) { myStartWindow->signalIrcConnect(QString::fromUtf8(server.c_str())); }
|
||||||
void GuiWrapper::SignalIrcSelfJoined(const string &nickName, const string &channel) { myStartWindow->signalIrcSelfJoined(QString::fromUtf8(nickName.c_str()), QString::fromUtf8(channel.c_str())); }
|
void GuiWrapper::SignalIrcSelfJoined(const string &nickName, const string &channel) { myStartWindow->signalIrcSelfJoined(QString::fromUtf8(nickName.c_str()), QString::fromUtf8(channel.c_str())); }
|
||||||
|
|||||||
@@ -74,8 +74,6 @@ selectAvatarDialogImpl::selectAvatarDialogImpl(QWidget *parent, ConfigFile *c)
|
|||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/14e3f39cc775608bcecf5597248b3558.png";
|
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/14e3f39cc775608bcecf5597248b3558.png";
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/0c04318e6fa54534935e3e6cfe12c4a1.png";
|
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/0c04318e6fa54534935e3e6cfe12c4a1.png";
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/6ecea83d9fac6b4cae97e2fccd09a5f6.png";
|
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/6ecea83d9fac6b4cae97e2fccd09a5f6.png";
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/d90bd3fbbe3671ebac5f9f223d0c6d65.png";
|
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/93dec21823a314fb8ef2261b7aa75ae5.png";
|
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/74672ebfa2ab02968386c4e441a08668.png";
|
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/74672ebfa2ab02968386c4e441a08668.png";
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/e54e67ebd5265cf549362a2cda5a999c.png";
|
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/e54e67ebd5265cf549362a2cda5a999c.png";
|
||||||
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/da34195981d255656f39c05481de3b6a.png";
|
peopleAvatarList << myAppDataPath +"gfx/avatars/default/people/da34195981d255656f39c05481de3b6a.png";
|
||||||
|
|||||||
@@ -166,6 +166,9 @@
|
|||||||
<property name="text" >
|
<property name="text" >
|
||||||
<string>Quit</string>
|
<string>Quit</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="shortcut" >
|
||||||
|
<string>Ctrl+Q</string>
|
||||||
|
</property>
|
||||||
</action>
|
</action>
|
||||||
<action name="actionCreate_Network_Game" >
|
<action name="actionCreate_Network_Game" >
|
||||||
<property name="text" >
|
<property name="text" >
|
||||||
@@ -179,5 +182,22 @@
|
|||||||
</action>
|
</action>
|
||||||
</widget>
|
</widget>
|
||||||
<resources/>
|
<resources/>
|
||||||
<connections/>
|
<connections>
|
||||||
|
<connection>
|
||||||
|
<sender>actionQuit</sender>
|
||||||
|
<signal>triggered()</signal>
|
||||||
|
<receiver>startWindow</receiver>
|
||||||
|
<slot>close()</slot>
|
||||||
|
<hints>
|
||||||
|
<hint type="sourcelabel" >
|
||||||
|
<x>-1</x>
|
||||||
|
<y>-1</y>
|
||||||
|
</hint>
|
||||||
|
<hint type="destinationlabel" >
|
||||||
|
<x>221</x>
|
||||||
|
<y>168</y>
|
||||||
|
</hint>
|
||||||
|
</hints>
|
||||||
|
</connection>
|
||||||
|
</connections>
|
||||||
</ui>
|
</ui>
|
||||||
|
|||||||
@@ -19,6 +19,8 @@
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
#include "startwindowimpl.h"
|
#include "startwindowimpl.h"
|
||||||
|
|
||||||
|
#include "playerinterface.h"
|
||||||
|
|
||||||
#include <gamedata.h>
|
#include <gamedata.h>
|
||||||
#include <generic/serverguiwrapper.h>
|
#include <generic/serverguiwrapper.h>
|
||||||
#include <net/socket_msg.h>
|
#include <net/socket_msg.h>
|
||||||
@@ -84,7 +86,6 @@ startWindowImpl::startWindowImpl(ConfigFile *c)
|
|||||||
|
|
||||||
myTimeoutDialog = new timeoutMsgBoxImpl(this);
|
myTimeoutDialog = new timeoutMsgBoxImpl(this);
|
||||||
|
|
||||||
|
|
||||||
connect( actionStart_Local_Game, SIGNAL( triggered() ), this, SLOT( callNewGameDialog() ) );
|
connect( actionStart_Local_Game, SIGNAL( triggered() ), this, SLOT( callNewGameDialog() ) );
|
||||||
connect( pushButtonStart_Local_Game, SIGNAL( clicked() ), this, SLOT( callNewGameDialog() ) );
|
connect( pushButtonStart_Local_Game, SIGNAL( clicked() ), this, SLOT( callNewGameDialog() ) );
|
||||||
connect( actionInternet_Game, SIGNAL( triggered() ), this, SLOT( callGameLobbyDialog() ) );
|
connect( actionInternet_Game, SIGNAL( triggered() ), this, SLOT( callGameLobbyDialog() ) );
|
||||||
@@ -129,6 +130,15 @@ startWindowImpl::startWindowImpl(ConfigFile *c)
|
|||||||
connect(this, SIGNAL(signalNetClientChatMsg(QString, QString)), myStartNetworkGameDialog, SLOT(receiveChatMsg(QString, QString)));
|
connect(this, SIGNAL(signalNetClientChatMsg(QString, QString)), myStartNetworkGameDialog, SLOT(receiveChatMsg(QString, QString)));
|
||||||
connect(this, SIGNAL(signalNetClientChatMsg(QString, QString)), myGuiInterface->getMyW()->getMyChat(), SLOT(receiveMessage(QString, QString)));
|
connect(this, SIGNAL(signalNetClientChatMsg(QString, QString)), myGuiInterface->getMyW()->getMyChat(), SLOT(receiveMessage(QString, QString)));
|
||||||
|
|
||||||
|
connect(this, SIGNAL(signalNetClientShowTimeoutDialog(int, unsigned)), this, SLOT(showTimeoutDialog(int, unsigned)));
|
||||||
|
|
||||||
|
// Errors are handled globally, not within one dialog.
|
||||||
|
connect(this, SIGNAL(signalNetClientError(int, int)), this, SLOT(networkError(int, int)));
|
||||||
|
connect(this, SIGNAL(signalNetClientNotification(int)), this, SLOT(networkNotification(int)));
|
||||||
|
connect(this, SIGNAL(signalNetServerError(int, int)), this, SLOT(networkError(int, int)));
|
||||||
|
connect(this, SIGNAL(signalNetClientRemovedFromGame(int)), this, SLOT(networkNotification(int)));
|
||||||
|
connect(this, SIGNAL(signalNetClientGameStart(boost::shared_ptr<Game>)), this, SLOT(networkStart(boost::shared_ptr<Game>)));
|
||||||
|
|
||||||
connect(this, SIGNAL(signalIrcConnect(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(connected(QString)));
|
connect(this, SIGNAL(signalIrcConnect(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(connected(QString)));
|
||||||
connect(this, SIGNAL(signalIrcSelfJoined(QString, QString)), myGameLobbyDialog->getLobbyChat(), SLOT(selfJoined(QString, QString)));
|
connect(this, SIGNAL(signalIrcSelfJoined(QString, QString)), myGameLobbyDialog->getLobbyChat(), SLOT(selfJoined(QString, QString)));
|
||||||
connect(this, SIGNAL(signalIrcPlayerJoined(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(playerJoined(QString)));
|
connect(this, SIGNAL(signalIrcPlayerJoined(QString)), myGameLobbyDialog->getLobbyChat(), SLOT(playerJoined(QString)));
|
||||||
@@ -520,3 +530,348 @@ void startWindowImpl::callSettingsDialog() {
|
|||||||
myGuiInterface->getMyW()->applySettings(mySettingsDialog);
|
myGuiInterface->getMyW()->applySettings(mySettingsDialog);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void startWindowImpl::showTimeoutDialog(int msgID, unsigned duration) {
|
||||||
|
|
||||||
|
if(myTimeoutDialog->isHidden()) {
|
||||||
|
myTimeoutDialog->setMySession(mySession);
|
||||||
|
myTimeoutDialog->setMsgID((NetTimeoutReason)msgID);
|
||||||
|
myTimeoutDialog->setTimeoutDuration(duration);
|
||||||
|
myTimeoutDialog->show();
|
||||||
|
myTimeoutDialog->raise();
|
||||||
|
myTimeoutDialog->activateWindow();
|
||||||
|
myTimeoutDialog->startTimeout();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void startWindowImpl::hideTimeoutDialog() { myTimeoutDialog->hide(); }
|
||||||
|
|
||||||
|
void startWindowImpl::networkError(int errorID, int /*osErrorID*/) {
|
||||||
|
|
||||||
|
hideTimeoutDialog();
|
||||||
|
switch (errorID) {
|
||||||
|
case ERR_SOCK_SERVERADDR_NOT_SET:
|
||||||
|
{QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Server address was not set."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_INVALID_PORT:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("An invalid port was set (ports 0-1023 are not allowed)."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_CREATION_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not create a socket for TCP communication."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_SET_ADDR_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not set the IP address."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_SET_PORT_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not set the port for this type of address."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_RESOLVE_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The server name could not be resolved."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_BIND_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Bind failed - please choose a different port."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_LISTEN_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal network error: \"listen\" failed."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_ACCEPT_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Server execution was terminated."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_CONNECT_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not connect to the server."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_CONNECT_TIMEOUT:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Connection timed out.\nPlease check the server address.\n\nIf the server is behind a NAT-Router, make sure port forwarding has been set up on server side."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_SELECT_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal network error: \"select\" failed."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_SEND_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal network error: \"send\" failed."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_RECV_FAILED: // Sometimes windows reports recv failed on close.
|
||||||
|
case ERR_SOCK_CONN_RESET:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Connection was closed by the server."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_CONN_EXISTS:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal network error: Duplicate TCP connection."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_INVALID_PACKET:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("An invalid network packet was received.\nPlease make sure that all players use the same version of PokerTH."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_INVALID_STATE:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal state error.\nPlease make sure that all players use the same version of PokerTH."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_INVALID_SERVERLIST_URL:
|
||||||
|
case ERR_SOCK_DOWNLOAD_INVALID_URL:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Invalid server list URL.\nPlease correct the address in the settings."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_OPEN_MD5_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not open the server list MD5 file.\nPlease make sure that the server list URL is correct."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_INVALID_SERVERLIST_MD5:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Synchronization of the PokerTH internet server list has failed.\nPlease make sure that the server list URL is correct."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_INVALID_SERVERLIST_XML:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The PokerTH internet server list contains invalid data.\nIf you use a custom server list, please make sure its format is correct."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_UNZIP_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not unzip the PokerTH internet server list."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_DOWNLOAD_INIT_FAILED:
|
||||||
|
case ERR_SOCK_DOWNLOAD_SELECT_FAILED:
|
||||||
|
case ERR_SOCK_DOWNLOAD_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not download the PokerTH internet server list.\nPlease make sure you are directly connected to the internet."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_SOCK_DOWNLOAD_OPEN_FAILED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not open the target file when downloading the server list."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_VERSION_NOT_SUPPORTED:
|
||||||
|
{ QMessageBox msgBox(QMessageBox::Warning, tr("Network Error"),
|
||||||
|
tr("The PokerTH server does not support this version of the game.<br>Please go to <a href=\"http://www.pokerth.net/\" target=\"_blank\">http://www.pokerth.net</a> and download the latest version."),
|
||||||
|
QMessageBox::Close, this);
|
||||||
|
msgBox.setTextFormat(Qt::RichText);
|
||||||
|
msgBox.exec();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case ERR_NET_SERVER_FULL:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Sorry, this server is already full."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_PASSWORD:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Invalid password when joining the game.\nPlease reenter the password and try again."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_PASSWORD_STR:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The password is too long. Please choose another one."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_PLAYER_NAME_IN_USE:
|
||||||
|
{ /*myChangeHumanPlayerNameDialog->label_Message->setText(tr("Your player name is already used by another player.\nPlease choose a different name."));
|
||||||
|
myChangeHumanPlayerNameDialog->exec();*/ }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_PLAYER_NAME:
|
||||||
|
{ /*myChangeHumanPlayerNameDialog->label_Message->setText(tr("The player name is too short, too long or invalid. Please choose another one."));
|
||||||
|
myChangeHumanPlayerNameDialog->exec();*/ }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_GAME_NAME:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The game name is either too short or too long. Please choose another one."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_UNKNOWN_GAME:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The game could not be found."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_CHAT_TEXT:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The chat text is invalid."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_UNKNOWN_PLAYER_ID:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The server referred to an unknown player. Aborting."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_NO_CURRENT_PLAYER:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal error: The current player could not be found."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_PLAYER_NOT_ACTIVE:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Internal error: The current player is not active."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_PLAYER_KICKED:
|
||||||
|
{ mySession->terminateNetworkClient();
|
||||||
|
QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("You were kicked from the server."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_PLAYER_BANNED:
|
||||||
|
{ mySession->terminateNetworkClient();
|
||||||
|
QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("You were temporarily banned from the server."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_SESSION_TIMED_OUT:
|
||||||
|
{ mySession->terminateNetworkClient();
|
||||||
|
QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Your server connection timed out due to inactivity. You are very welcome to reconnect!"),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_PLAYER_COUNT:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The client player count is invalid."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_TOO_MANY_MANUAL_BLINDS:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Too many manual blinds were set. Please reconfigure the manual blinds."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_AVATAR_FILE:
|
||||||
|
case ERR_NET_WRONG_AVATAR_SIZE:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("An invalid avatar file was configured. Please choose a different avatar."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_AVATAR_TOO_LARGE:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The selected avatar file is too large. Please choose a different avatar."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_AVATAR_UPLOAD_BLOCKED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("You cannot upload a new avatar file at this time. Please try again in a few seconds."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_INVALID_REQUEST_ID:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("An internal avatar error occured. Please report this to an admin in the lobby chat."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_START_TIMEOUT:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("Could not start game: Synchronization failed."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case ERR_NET_SERVER_MAINTENANCE:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("The server is down for maintenance. Please try again later."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
default: { QMessageBox::warning(this, tr("Network Error"),
|
||||||
|
tr("An internal error occured."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
}
|
||||||
|
// close dialogs
|
||||||
|
myGameLobbyDialog->reject();
|
||||||
|
myConnectToServerDialog->reject();
|
||||||
|
myStartNetworkGameDialog->reject();
|
||||||
|
}
|
||||||
|
|
||||||
|
void startWindowImpl::networkNotification(int notificationId)
|
||||||
|
{
|
||||||
|
hideTimeoutDialog();
|
||||||
|
switch (notificationId)
|
||||||
|
{
|
||||||
|
case NTF_NET_REMOVED_KICKED:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Notification"),
|
||||||
|
tr("You were kicked from the game."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case NTF_NET_REMOVED_GAME_FULL:
|
||||||
|
case NTF_NET_JOIN_GAME_FULL:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Notification"),
|
||||||
|
tr("Sorry, this game is already full."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case NTF_NET_REMOVED_ALREADY_RUNNING:
|
||||||
|
case NTF_NET_JOIN_ALREADY_RUNNING:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Notification"),
|
||||||
|
tr("Unable to join - the server has already started the game."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case NTF_NET_REMOVED_TIMEOUT:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Notification"),
|
||||||
|
tr("Your admin state timed out due to inactivity. Feel free to create a new game!"),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case NTF_NET_JOIN_INVALID_PASSWORD:
|
||||||
|
{ QMessageBox::warning(this, tr("Network Notification"),
|
||||||
|
tr("Invalid password when joining the game.\nPlease reenter the password and try again."),
|
||||||
|
QMessageBox::Close); }
|
||||||
|
break;
|
||||||
|
case NTF_NET_NEW_RELEASE_AVAILABLE:
|
||||||
|
{ QMessageBox msgBox(QMessageBox::Information, tr("Network Notification"),
|
||||||
|
tr("A new release of PokerTH is available.<br>Please go to <a href=\"http://www.pokerth.net/\" target=\"_blank\">http://www.pokerth.net</a> and download the latest version."),
|
||||||
|
QMessageBox::Close, this);
|
||||||
|
msgBox.setTextFormat(Qt::RichText);
|
||||||
|
msgBox.exec();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case NTF_NET_OUTDATED_BETA:
|
||||||
|
{ QMessageBox msgBox(QMessageBox::Information, tr("Network Notification"),
|
||||||
|
tr("This beta release of PokerTH is outdated.<br>Please go to <a href=\"http://www.pokerth.net/\" target=\"_blank\">http://www.pokerth.net</a> and download the latest version."),
|
||||||
|
QMessageBox::Close, this);
|
||||||
|
msgBox.setTextFormat(Qt::RichText);
|
||||||
|
msgBox.exec();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void startWindowImpl::networkStart(boost::shared_ptr<Game> game)
|
||||||
|
{
|
||||||
|
mySession->startClientGame(game);
|
||||||
|
|
||||||
|
//send playerNicksList to chat for nick-autocompletition
|
||||||
|
myGuiInterface->getMyW()->getMyChat()->setPlayerNicksList(getPlayerNicksList());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QStringList startWindowImpl::getPlayerNicksList() {
|
||||||
|
|
||||||
|
QStringList list;
|
||||||
|
PlayerListConstIterator it_c;
|
||||||
|
|
||||||
|
for (it_c=mySession->getCurrentGame()->getSeatsList()->begin(); it_c!=mySession->getCurrentGame()->getSeatsList()->end(); it_c++) {
|
||||||
|
list << QString::fromUtf8((*it_c)->getMyName().c_str());
|
||||||
|
}
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
@@ -103,6 +103,15 @@ public slots:
|
|||||||
|
|
||||||
void startNewLocalGame(newGameDialogImpl* =0);
|
void startNewLocalGame(newGameDialogImpl* =0);
|
||||||
|
|
||||||
|
void showTimeoutDialog(int msgID, unsigned duration);
|
||||||
|
void hideTimeoutDialog();
|
||||||
|
|
||||||
|
void networkError(int, int);
|
||||||
|
void networkNotification(int);
|
||||||
|
|
||||||
|
void networkStart(boost::shared_ptr<Game> game);
|
||||||
|
QStringList getPlayerNicksList();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
ConfigFile *myConfig;
|
ConfigFile *myConfig;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user