diff --git a/src/gui/qt/gamelobbydialog.ui b/src/gui/qt/gamelobbydialog.ui
index 96f2067a..3b43406d 100644
--- a/src/gui/qt/gamelobbydialog.ui
+++ b/src/gui/qt/gamelobbydialog.ui
@@ -6,7 +6,7 @@
0
0
875
- 610
+ 618
@@ -120,9 +120,21 @@
221
- 0
+ 221
+
+ 1
+
+
+
+ 25
+ 25
+
+
+
+ 15
+
Connected Players
diff --git a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp
index ea1fc021..d56c14d5 100644
--- a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp
+++ b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.cpp
@@ -36,6 +36,7 @@ gameLobbyDialogImpl::gameLobbyDialogImpl(QWidget *parent, ConfigFile *c)
waitStartGameMsgBoxTimer->setSingleShot(TRUE);
treeWidget_GameList->setGameListBackgroundImage(myAppDataPath +"gfx/gui/misc/background_gamelist.png");
+// treeWidget_connectedPlayers->setSpacing(1);
connect( pushButton_CreateGame, SIGNAL( clicked() ), this, SLOT( createGame() ) );
connect( pushButton_JoinGame, SIGNAL( clicked() ), this, SLOT( joinGame() ) );
@@ -459,6 +460,7 @@ void gameLobbyDialogImpl::addConnectedPlayer(unsigned playerId, QString playerNa
}
checkPlayerQuantity();
+ refreshConnectedPlayerAvatars();
}
void gameLobbyDialogImpl::updatePlayer(unsigned playerId, QString newPlayerName) {
@@ -472,6 +474,7 @@ void gameLobbyDialogImpl::updatePlayer(unsigned playerId, QString newPlayerName)
}
++it;
}
+ refreshConnectedPlayerAvatars();
}
void gameLobbyDialogImpl::removePlayer(unsigned playerId, QString) {
@@ -506,6 +509,24 @@ void gameLobbyDialogImpl::newGameAdmin(unsigned playerId, QString)
}
}
+void gameLobbyDialogImpl::refreshConnectedPlayerAvatars() {
+
+ QTreeWidgetItemIterator it(treeWidget_connectedPlayers);
+ while (*it) {
+
+ std::string myAvatarFileName;
+ PlayerInfo playerInfo(mySession->getClientPlayerInfo((*it)->data(0, Qt::UserRole).toInt()));
+ mySession->getAvatarFile(playerInfo.avatar, myAvatarFileName);
+ QString myAvatarString(QString::fromUtf8(myAvatarFileName.c_str()));
+
+ if(QFile::QFile(myAvatarString).exists()) {
+ (*it)->setIcon(0, QIcon(myAvatarString));
+ }
+
+ ++it;
+ }
+}
+
void gameLobbyDialogImpl::joinedGameDialogUpdate() {
groupBox_GameInfo->setEnabled(true);
groupBox_GameInfo->setTitle(currentGameName);
diff --git a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.h b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.h
index b1abfbe2..6dc0cb6e 100644
--- a/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.h
+++ b/src/gui/qt/gamelobbydialog/gamelobbydialogimpl.h
@@ -79,6 +79,8 @@ public slots:
void removePlayer(unsigned, QString);
void newGameAdmin(unsigned, QString);
+ void refreshConnectedPlayerAvatars();
+
void playerSelected(QTreeWidgetItem*, QTreeWidgetItem*);
void refresh(int actionID);
void removedFromGame(int reason);