GUI: lobby game infos changes (not ready)

This commit is contained in:
doitux
2010-03-27 09:52:49 +00:00
parent 839f7f2679
commit b7186158cc
2 changed files with 369 additions and 316 deletions
+349 -306
View File
@@ -80,312 +80,6 @@
</column>
</widget>
</item>
<item row="0" column="2" rowspan="4">
<widget class="QGroupBox" name="groupBox_GameInfo">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>270</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>270</width>
<height>16777215</height>
</size>
</property>
<property name="title">
<string>Game Info</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>1</number>
</property>
<item>
<widget class="QTreeWidget" name="treeWidget_connectedPlayers">
<property name="minimumSize">
<size>
<width>221</width>
<height>221</height>
</size>
</property>
<property name="midLineWidth">
<number>1</number>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>26</height>
</size>
</property>
<property name="indentation">
<number>15</number>
</property>
<column>
<property name="text">
<string>Connected Players</string>
</property>
</column>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkBox_fillUpWithComputerOpponents">
<property name="text">
<string>Fill up with computer opponents</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="topMargin">
<number>3</number>
</property>
<property name="bottomMargin">
<number>4</number>
</property>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton_StartGame">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>&amp;Start Game</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_Kick">
<property name="text">
<string>&amp;Kick Player</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc1">
<property name="text">
<string>Maximum number of players: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_MaximumNumberOfPlayers">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc2">
<property name="text">
<string>Start Cash: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_StartCash">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc3">
<property name="text">
<string>First small blind: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_SmallBlind">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc4">
<property name="text">
<string>Blinds raise interval: </string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_blindsRaiseIntervall">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc5">
<property name="text">
<string>Blinds raise mode: </string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_blindsRaiseMode">
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc6">
<property name="text">
<string>Manual blinds list:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_blindsList">
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc7">
<property name="text">
<string>Timeout for player action (sec): </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_TimeoutForPlayerAction">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>248</width>
<height>91</height>
</size>
</property>
</spacer>
</item>
<item>
<layout class="QHBoxLayout">
<property name="spacing">
<number>0</number>
</property>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>27</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton_Leave">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>&amp;Leave Game</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item row="2" column="1">
<layout class="QHBoxLayout">
<property name="spacing">
@@ -584,6 +278,355 @@ p, li { white-space: pre-wrap; }
</item>
</widget>
</item>
<item row="0" column="2" rowspan="4">
<widget class="QGroupBox" name="groupBox_GameInfo">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>270</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>270</width>
<height>16777215</height>
</size>
</property>
<property name="title">
<string>Game Info</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<property name="topMargin">
<number>4</number>
</property>
<property name="bottomMargin">
<number>5</number>
</property>
<property name="verticalSpacing">
<number>5</number>
</property>
<item row="0" column="0">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Game type:</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_typeIcon"/>
</item>
<item>
<widget class="QLabel" name="label_typeText">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QTreeWidget" name="treeWidget_connectedPlayers">
<property name="minimumSize">
<size>
<width>221</width>
<height>221</height>
</size>
</property>
<property name="midLineWidth">
<number>1</number>
</property>
<property name="iconSize">
<size>
<width>25</width>
<height>26</height>
</size>
</property>
<property name="indentation">
<number>15</number>
</property>
<column>
<property name="text">
<string>Connected Players</string>
</property>
</column>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="checkBox_fillUpWithComputerOpponents">
<property name="text">
<string>Fill up with computer opponents</string>
</property>
</widget>
</item>
<item row="3" column="0">
<layout class="QHBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="topMargin">
<number>3</number>
</property>
<property name="bottomMargin">
<number>4</number>
</property>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton_StartGame">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>&amp;Start Game</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButton_Kick">
<property name="text">
<string>&amp;Kick Player</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="4" column="0">
<widget class="QScrollArea" name="scrollArea">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>244</width>
<height>159</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="horizontalSpacing">
<number>1</number>
</property>
<property name="verticalSpacing">
<number>2</number>
</property>
<property name="margin">
<number>3</number>
</property>
<item row="0" column="0">
<layout class="QHBoxLayout" name="_3">
<item>
<widget class="QLabel" name="label_gameDesc2">
<property name="text">
<string>Start Cash: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_StartCash">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="0">
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc3">
<property name="text">
<string>First small blind: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_SmallBlind">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc4">
<property name="text">
<string>Blinds raise interval: </string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_blindsRaiseIntervall">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="3" column="0">
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc5">
<property name="text">
<string>Blinds raise mode: </string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_blindsRaiseMode">
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="4" column="0">
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc6">
<property name="text">
<string>Manual blinds list:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_blindsList">
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTop|Qt::AlignTrailing</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="5" column="0">
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="label_gameDesc7">
<property name="text">
<string>Timeout for player action (sec): </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_TimeoutForPlayerAction">
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="6" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
<item row="5" column="0">
<layout class="QHBoxLayout">
<property name="spacing">
<number>0</number>
</property>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>27</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton_Leave">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>&amp;Leave Game</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<tabstops>
@@ -198,8 +198,11 @@ void gameLobbyDialogImpl::createGame()
hideShowGameDescription(TRUE);
label_SmallBlind->setText(QString("%L1").arg(gameData.firstSmallBlind));
label_StartCash->setText(QString("%L1").arg(gameData.startMoney));
label_MaximumNumberOfPlayers->setText(QString::number(gameData.maxNumberOfPlayers));
label_StartCash->setText(QString("%L1").arg(gameData.startMoney));
QTreeWidgetItem *header = treeWidget_connectedPlayers->headerItem();
header->setText(0, tr("Connected players - Max. %1").arg(gameData.maxNumberOfPlayers));
header->setData(0, Qt::UserRole, gameData.maxNumberOfPlayers);
updateDialogBlinds(gameData);
@@ -313,8 +316,7 @@ void gameLobbyDialogImpl::gameSelected(const QModelIndex &index, const QModelInd
hideShowGameDescription(TRUE);
label_SmallBlind->setText(QString("%L1").arg(info.data.firstSmallBlind));
label_StartCash->setText(QString("%L1").arg(info.data.startMoney));
label_MaximumNumberOfPlayers->setText(QString::number(info.data.maxNumberOfPlayers));
// label_MaximumNumberOfPlayers->setText(QString::number(info.data.maxNumberOfPlayers));s
updateDialogBlinds(info.data);
label_TimeoutForPlayerAction->setText(QString::number(info.data.playerActionTimeoutSec));
@@ -329,6 +331,10 @@ void gameLobbyDialogImpl::gameSelected(const QModelIndex &index, const QModelInd
addConnectedPlayer(*i, QString::fromUtf8(playerInfo.playerName.c_str()), tmpRights);
++i;
}
QTreeWidgetItem *header = treeWidget_connectedPlayers->headerItem();
header->setText(0, tr("Connected players - Max. %1").arg(info.data.maxNumberOfPlayers));
header->setData(0, Qt::UserRole, info.data.maxNumberOfPlayers);
#ifdef __APPLE__
// Dirty workaround for a Qt redraw bug on Mac OS.
treeWidget_connectedPlayers->setFocus();
@@ -572,10 +578,13 @@ void gameLobbyDialogImpl::clearDialog()
groupBox_GameInfo->setEnabled(false);
currentGameName = "";
QTreeWidgetItem *header = treeWidget_connectedPlayers->headerItem();
header->setText(0, tr("Connected players"));
header->setData(0, Qt::UserRole, 0);
hideShowGameDescription(FALSE);
label_SmallBlind->setText("");
label_StartCash->setText("");
label_MaximumNumberOfPlayers->setText("");
label_blindsRaiseIntervall->setText("");
label_blindsRaiseMode->setText("");
label_blindsList->setText("");
@@ -636,7 +645,7 @@ void gameLobbyDialogImpl::checkPlayerQuantity() {
if (treeWidget_connectedPlayers->topLevelItemCount() >= 2) {
pushButton_StartGame->setEnabled(true);
if(treeWidget_connectedPlayers->topLevelItemCount() == label_MaximumNumberOfPlayers->text().toInt()) {
if(treeWidget_connectedPlayers->topLevelItemCount() == treeWidget_connectedPlayers->headerItem()->data(0, Qt::UserRole).toInt()) {
blinkingButtonAnimationTimer->start();
}
else {
@@ -702,7 +711,7 @@ void gameLobbyDialogImpl::addConnectedPlayer(unsigned playerId, QString playerNa
if(rights == PLAYER_RIGHTS_ADMIN) item->setBackground(0, QBrush(QColor(0, 255, 0, 127)));
if(this->isVisible() && inGame && myConfig->readConfigInt("PlayNetworkGameNotification")) {
if(treeWidget_connectedPlayers->topLevelItemCount() < label_MaximumNumberOfPlayers->text().toInt()) {
if(treeWidget_connectedPlayers->topLevelItemCount() < treeWidget_connectedPlayers->headerItem()->data(0, Qt::UserRole).toInt()) {
myW->getMySDLPlayer()->playSound("playerconnected", 0);
}
else {
@@ -862,10 +871,13 @@ void gameLobbyDialogImpl::leftGameDialogUpdate() {
groupBox_GameInfo->setEnabled(false);
currentGameName = "";
QTreeWidgetItem *header = treeWidget_connectedPlayers->headerItem();
header->setText(0, tr("Connected players"));
header->setData(0, Qt::UserRole, 0);
hideShowGameDescription(FALSE);
label_SmallBlind->setText("");
label_StartCash->setText("");
label_MaximumNumberOfPlayers->setText("");
label_blindsRaiseIntervall->setText("");
label_blindsRaiseMode->setText("");
label_blindsList->setText("");
@@ -995,7 +1007,6 @@ bool gameLobbyDialogImpl::event ( QEvent * event ) {
void gameLobbyDialogImpl::hideShowGameDescription(bool show) {
if(show) {
label_gameDesc1->show();
label_gameDesc2->show();
label_gameDesc3->show();
label_gameDesc4->show();
@@ -1004,7 +1015,6 @@ void gameLobbyDialogImpl::hideShowGameDescription(bool show) {
label_gameDesc7->show();
}
else {
label_gameDesc1->hide();
label_gameDesc2->hide();
label_gameDesc3->hide();
label_gameDesc4->hide();