From 03e65c78d1bc08bdaee86cf09a4dd8735b6a9fdd Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Sun, 12 Oct 2008 16:51:32 +0000 Subject: [FIX] Fleshing out Signet more [DEL] Unused top-level directories git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@275 6ecfd1a5-f3ed-3746-8530-beee90d26b22 --- signet/Client.cpp | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'signet/Client.cpp') diff --git a/signet/Client.cpp b/signet/Client.cpp index 9a032407..a6d39011 100644 --- a/signet/Client.cpp +++ b/signet/Client.cpp @@ -21,6 +21,7 @@ // Signet includes #include "Room.h" #include "Server.h" +#include "Table.h" // Qt includes #include @@ -42,17 +43,25 @@ void Signet::Client::setServer(Server* server) void Signet::Client::joinRoom(Room* room) { + if (!m_rooms.contains(room)) + { + room->addClient(this); + m_rooms[room]; + } } void Signet::Client::leaveRoom(Room* room) { + QList tables = QList::fromSet(m_rooms[room]); + foreach (Table* table, tables) + table->removeClient(this); + room->removeClient(this); } void Signet::Client::joinTable(Room* room, Table* table) { if (!m_rooms.contains(room)) joinRoom(room); -// table-> } void Signet::Client::leaveTable(Room* room, Table* table) @@ -66,6 +75,8 @@ void Signet::Client::leaveTable(Room* room, Table* table) void Signet::Client::sendData(const QByteArray& data) { + m_socket->write(data); +// m_socket->waitForBytesWritten(); } void Signet::Client::disconnectFromServer() @@ -78,10 +89,5 @@ void Signet::Client::disconnectFromAllRooms() { QList rooms = m_rooms.keys(); foreach (Room* room, rooms) - { - QList tables = QList::fromSet(m_rooms[room]); - foreach (Table* table, tables) - table->removeClient(this); - room->removeClient(this); - } + leaveRoom(room); } -- cgit