[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]
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;
 };
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.