[atlantik-cvs] CVS: kdegames/atlantik/client atlantik.cpp,1.128,1.129 selectconfiguration_widget.cpp,1.28,1.29 selectconfiguration_widget.h,1.13,1.14
[email protected] Thu, 19 Dec 2002 22:34:43 +0100 (CET)
Newsgroups
gmane.comp.kde.devel.atlantik
Message-ID
<[email protected] >
Update of /home/kde/kdegames/atlantik/client
In directory office:/tmp/cvs-serv6514/client
Modified Files:
atlantik.cpp selectconfiguration_widget.cpp
selectconfiguration_widget.h
Log Message:
deprecate updateplayerlist
Index: atlantik.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/client/atlantik.cpp,v
retrieving revision 1.128
retrieving revision 1.129
diff -u -d -r1.128 -r1.129
--- atlantik.cpp 19 Dec 2002 03:11:07 -0000 1.128
+++ atlantik.cpp 19 Dec 2002 21:34:41 -0000 1.129
@@ -169,6 +169,9 @@
initBoard();
m_board->addToken(player);
+ if (m_selectConfiguration)
+ m_selectConfiguration->addPlayer(player);
+
PortfolioView *portfolioView = new PortfolioView(m_atlanticCore, player, m_config.activeColor, m_config.inactiveColor, m_portfolioWidget);
m_portfolioViews.append(portfolioView);
@@ -259,7 +262,6 @@
}
connect(m_atlantikNetwork, SIGNAL(gameListClear()), m_selectGame, SLOT(slotGameListClear()));
-
connect(m_atlantikNetwork, SIGNAL(gameListAdd(QString, QString, QString, QString, QString, bool)), m_selectGame, SLOT(slotGameListAdd(QString, QString, QString, QString, QString, bool)));
connect(m_atlantikNetwork, SIGNAL(gameListEdit(QString, QString, QString, QString, QString, bool)), m_selectGame, SLOT(slotGameListEdit(QString, QString, QString, QString, QString, bool)));
connect(m_atlantikNetwork, SIGNAL(gameListDel(QString)), m_selectGame, SLOT(slotGameListDel(QString)));
@@ -285,10 +287,6 @@
m_mainLayout->addMultiCellWidget(m_selectConfiguration, 0, 2, 1, 1);
m_selectConfiguration->show();
- connect(m_atlantikNetwork, SIGNAL(playerListClear()), m_selectConfiguration, SLOT(slotPlayerListClear()));
- connect(m_atlantikNetwork, SIGNAL(playerListAdd(QString, QString, QString)), m_selectConfiguration, SLOT(slotPlayerListAdd(QString, QString, QString)));
- connect(m_atlantikNetwork, SIGNAL(playerListEdit(QString, QString, QString)), m_selectConfiguration, SLOT(slotPlayerListEdit(QString, QString, QString)));
- connect(m_atlantikNetwork, SIGNAL(playerListDel(QString)), m_selectConfiguration, SLOT(slotPlayerListDel(QString)));
connect(m_atlantikNetwork, SIGNAL(gameListClear()), this, SLOT(showSelectGame()));
connect(m_atlantikNetwork, SIGNAL(gameOption(QString, QString, QString, QString, QString)), m_selectConfiguration, SLOT(gameOption(QString, QString, QString, QString, QString)));
connect(m_selectConfiguration, SIGNAL(startGame()), m_atlantikNetwork, SLOT(startGame()));
Index: selectconfiguration_widget.cpp
===================================================================
RCS file: /home/kde/kdegames/atlantik/client/selectconfiguration_widget.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- selectconfiguration_widget.cpp 19 Dec 2002 03:40:02 -0000 1.28
+++ selectconfiguration_widget.cpp 19 Dec 2002 21:34:41 -0000 1.29
@@ -20,11 +20,13 @@
#include <qradiobutton.h>
#include <kdebug.h>
-
#include <kdialog.h>
#include <klocale.h>
#include <kiconloader.h>
#include <kmessagebox.h>
+#include <kstandarddirs.h>
+
+#include <player.h>
#include "tokenwidget.h"
#include "selectconfiguration_widget.moc"
@@ -41,7 +43,6 @@
m_mainLayout->addWidget(m_playerBox);
m_playerList = new KListView(m_playerBox, "m_playerList");
- m_playerList->addColumn(QString(i18n("Id")));
m_playerList->addColumn(QString(i18n("Name")));
m_playerList->addColumn(QString(i18n("Host")));
m_playerList->setAllColumnsShowFocus(true);
@@ -87,51 +88,43 @@
m_mainLayout->addWidget(status_label);
}
-void SelectConfiguration::slotPlayerListClear()
+void SelectConfiguration::addPlayer(Player *player)
{
- m_playerList->clear();
-// emit statusChanged();
-}
+ QListViewItem *item = new QListViewItem(m_playerList, player->name(), player->host());
+ if (player->image() != "")
+ item->setPixmap(0, QPixmap(locate("appdata", "themes/default/tokens/" + player->image())));
+ else
+ item->setPixmap(0, QPixmap(SmallIcon("personal")));
-void SelectConfiguration::slotPlayerListAdd(QString playerId, QString name, QString host)
-{
- kdDebug() << "SelectConfiguration::slotPlayerListAdd" << endl;
- QListViewItem *item = new QListViewItem(m_playerList, playerId, name, host);
- item->setPixmap(0, QPixmap(SmallIcon("personal")));
+ m_items[player] = item;
+
+ connect(player, SIGNAL(changed(Player *)), this, SLOT(slotPlayerChanged(Player *)));
}
-void SelectConfiguration::slotPlayerListEdit(QString playerId, QString name, QString host)
+void SelectConfiguration::slotDelPlayer(Player *player)
{
- QListViewItem *item = m_playerList->firstChild();
- while (item)
+ QListViewItem *item = m_items[player];
+ if (item)
{
- if (item->text(0) == playerId)
- {
- if (!name.isEmpty())
- item->setText(1, name);
- if (!host.isEmpty())
- item->setText(2, host);
- m_playerList->triggerUpdate();
- return;
- }
- item = item->nextSibling();
+ delete item;
+ m_items[player] = 0;
}
-// emit statusChanged();
}
-void SelectConfiguration::slotPlayerListDel(QString playerId)
+void SelectConfiguration::slotPlayerChanged(Player *player)
{
- QListViewItem *item = m_playerList->firstChild();
- while (item)
+ QListViewItem *item = m_items[player];
+ if (item)
{
- if (item->text(0) == playerId)
- {
- delete item;
- return;
- }
- item = item->nextSibling();
+ item->setText(0, player->name());
+ item->setText(1, player->host());
+ if (player->image() != "")
+ item->setPixmap(0, QPixmap(locate("appdata", "themes/default/tokens/" + player->image())));
+ else
+ item->setPixmap(0, QPixmap(SmallIcon("personal")));
+
+ m_playerList->triggerUpdate();
}
-// emit statusChanged();
}
void SelectConfiguration::connectClicked()
Index: selectconfiguration_widget.h
===================================================================
RCS file: /home/kde/kdegames/atlantik/client/selectconfiguration_widget.h,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- selectconfiguration_widget.h 19 Dec 2002 03:11:07 -0000 1.13
+++ selectconfiguration_widget.h 19 Dec 2002 21:34:41 -0000 1.14
@@ -26,7 +26,9 @@
#include <kpushbutton.h>
class QCheckBox;
+class QListViewItem;
+class Player;
class TokenWidget;
class SelectConfiguration : public QWidget
@@ -35,17 +37,16 @@
public:
SelectConfiguration(QWidget *parent, const char *name=0);
+ void addPlayer(Player *player);
void initPage();
- bool validateNext();
- QString hostToConnect() const;
- int portToConnect();
+ bool validateNext();
+ QString hostToConnect() const;
+ int portToConnect();
- public slots:
- void slotPlayerListClear();
- void slotPlayerListAdd(QString playerId, QString name, QString host);
- void slotPlayerListEdit(QString playerId, QString name, QString host);
- void slotPlayerListDel(QString playerId);
+public slots:
+ void slotDelPlayer(Player *player);
+ void slotPlayerChanged(Player *player);
private slots:
void connectClicked();
@@ -72,6 +73,7 @@
KPushButton *m_backButton, *m_connectButton, *m_tokenButton;
QMap <QObject *, QString> m_optionCommandMap;
QMap <QString, QCheckBox *> m_checkBoxMap;
+ QMap <Player *, QListViewItem *> m_items;
TokenWidget *m_tokenWidget;
};