Major design change in network protocol: Player information is now requested by clients whenever it is needed. The server only sends player ids. The client has a cache with player information.

This commit is contained in:
lotodore
2007-08-26 22:41:37 +00:00
parent ba17f1d08e
commit 56b24e09eb
19 changed files with 755 additions and 104 deletions
@@ -74,6 +74,14 @@ void startNetworkGameDialogImpl::addConnectedPlayer(QString playerName, int righ
checkPlayerQuantity();
}
void startNetworkGameDialogImpl::updatePlayer(QString oldPlayerName, QString newPlayerName)
{
QList<QTreeWidgetItem *> list = treeWidget->findItems(oldPlayerName, Qt::MatchExactly, 0);
if(!list.empty()) {
list[0]->setText(0, newPlayerName);
}
}
void startNetworkGameDialogImpl::removePlayer(QString playerName) {
QList<QTreeWidgetItem *> list = treeWidget->findItems(playerName, Qt::MatchExactly, 0);
@@ -47,6 +47,7 @@ public slots:
void refresh(int actionID);
void joinedNetworkGame(QString playerName, int rights);
void addConnectedPlayer(QString playerName, int rights);
void updatePlayer(QString oldPlayerName, QString newPlayerName);
void removePlayer(QString playerName);
void playerSelected(QTreeWidgetItem*, int);
void kickPlayer();