[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Camino-devel] camino/src/client ClientEngine.cpp ClientEngine...
From: |
Pascal Audoux |
Subject: |
[Camino-devel] camino/src/client ClientEngine.cpp ClientEngine... |
Date: |
Mon, 27 Jan 2003 17:52:54 -0500 |
CVSROOT: /cvsroot/camino
Module name: camino
Changes by: Pascal Audoux <address@hidden> 03/01/27 17:52:54
Modified files:
src/client : ClientEngine.cpp ClientEngine.h
ClientInterface.cpp ClientInterface.h Game.cpp
Game.h
Log message:
use of the ChatWidget
Patches:
Index: camino/src/client/ClientEngine.cpp
diff -u camino/src/client/ClientEngine.cpp:1.3
camino/src/client/ClientEngine.cpp:1.4
--- camino/src/client/ClientEngine.cpp:1.3 Sun Jan 26 17:15:20 2003
+++ camino/src/client/ClientEngine.cpp Mon Jan 27 17:52:53 2003
@@ -2,7 +2,7 @@
**
** Camino
**
-** Version : $Id: ClientEngine.cpp,v 1.3 2003/01/26 22:15:20 pfremy Exp $
+** Version : $Id: ClientEngine.cpp,v 1.4 2003/01/27 22:52:53 Audoux Exp $
**
** Author(s) : Philippe Fremy, Pascal Audoux
** Creation : 14/01/2003
@@ -34,6 +34,7 @@
ClientEngine::ClientEngine()
{
_socket = new QSocket( this );
+ _connected = false;
setDevice( _socket );
connect( _socket, SIGNAL( connected() ), SLOT( slotServerConnected() )
);
connect( _socket, SIGNAL( connectionClosed() ), SLOT(
slotConnectionClosed() ) );
@@ -52,6 +53,7 @@
_playerName = playerName;
_socket->connectToHost( serverName, port );
+ _connected = true;
}
void ClientEngine::slotServerConnected()
@@ -71,13 +73,13 @@
{
QString typeString;
switch( _subtype ) {
- case DebugMsg:
+ case DebugMsg:
typeString = "Debug";
break;
- case InfoMsg:
+ case InfoMsg:
typeString = "Info";
break;
- case ChatMsg:
+ case ChatMsg:
typeString = "Chat";
break;
default:
@@ -87,5 +89,15 @@
typeString += source + " : " + msg;
qDebug( "Client - %s from %s : %s", typeString.latin1(),
source.latin1(), msg.latin1() );
+ QString text = source + " : " + msg;
+ emit sig_message( text );
}
+
+void ClientEngine::sendMessage( const QString & msg )
+{
+ _send->sendMsg( InfoMsg, _playerName, msg );
+}
+
+
+
Index: camino/src/client/ClientEngine.h
diff -u camino/src/client/ClientEngine.h:1.3
camino/src/client/ClientEngine.h:1.4
--- camino/src/client/ClientEngine.h:1.3 Sun Jan 26 17:15:20 2003
+++ camino/src/client/ClientEngine.h Mon Jan 27 17:52:53 2003
@@ -5,7 +5,7 @@
** ClientEngine.h
** The intelligence of the client is here
**
-** Version : $Id: ClientEngine.h,v 1.3 2003/01/26 22:15:20 pfremy Exp $
+** Version : $Id: ClientEngine.h,v 1.4 2003/01/27 22:52:53 Audoux Exp $
** Author(s) : Philippe Fremy, Pascal Audoux
** Creation : 14/01/2003
** Copyright: Pascal Audoux, Philippe Fremy 2003
@@ -54,8 +54,15 @@
void connectToServer( const QString & serverName, int port, const
QString & playerName );
+ bool isConnected() { return _connected; }
+
void recvMsg( QString source, QString msg );
+ void sendMessage( const QString & msg );
+
+signals:
+ void sig_message( const QString & msg );
+
protected slots:
void slotServerConnected();
void slotConnectionClosed();
@@ -64,7 +71,7 @@
QSocket * _socket;
MsgCoder * _send;
QString _playerName;
-
+ bool _connected;
};
#endif // CLIENT_ENGINE_H
Index: camino/src/client/ClientInterface.cpp
diff -u camino/src/client/ClientInterface.cpp:1.10
camino/src/client/ClientInterface.cpp:1.11
--- camino/src/client/ClientInterface.cpp:1.10 Sun Jan 26 13:10:57 2003
+++ camino/src/client/ClientInterface.cpp Mon Jan 27 17:52:53 2003
@@ -2,7 +2,7 @@
**
** Camino
**
-** Version : $Id: ClientInterface.cpp,v 1.10 2003/01/26 18:10:57 pfremy Exp $
+** Version : $Id: ClientInterface.cpp,v 1.11 2003/01/27 22:52:53 Audoux Exp $
**
** Author(s) : Philippe Fremy, Pascal Audoux
** Creation : 15/01/2003
@@ -33,19 +33,17 @@
#include <qstatusbar.h>
#include <qlineedit.h>
// application specific include files
-#include "server/ServerDialog.h"
-#include "client/ClientInterface.h"
#include "client/DialogConnection.h"
-#include "client/Theme.h"
-#include "client/ClientEngine.h"
#include "client/Game.h"
+#include "server/ServerDialog.h"
+#include "client/Theme.h"
+
+#include "client/ClientInterface.h"
extern Theme theme;
ClientInterface::ClientInterface()
{
- _clientEngine = new ClientEngine();
-
_server = 0;
setCaption( "Camino" );
initActions();
@@ -53,7 +51,7 @@
initStatusBar();
theme.init();
- _game = new Game( _clientEngine, this );
+ _game = new Game( this );
setCentralWidget( _game );
zoom( 2 );
@@ -179,9 +177,9 @@
{
DialogConnection dialog;
if( dialog.exec() ) {
- _clientEngine->connectToServer( dialog._serverHost->text(),
- dialog._serverPort->text().toInt(),
- dialog._playerName->text() );
+ _game->connectToServer( dialog.getHost(),
+ dialog.getPort(),
+ dialog.getPlayer() );
}
}
Index: camino/src/client/ClientInterface.h
diff -u camino/src/client/ClientInterface.h:1.8
camino/src/client/ClientInterface.h:1.9
--- camino/src/client/ClientInterface.h:1.8 Sun Jan 26 13:10:57 2003
+++ camino/src/client/ClientInterface.h Mon Jan 27 17:52:53 2003
@@ -5,7 +5,7 @@
** ClientInterface.h
** Interface of the client
**
-** Version : $Id: ClientInterface.h,v 1.8 2003/01/26 18:10:57 pfremy Exp $
+** Version : $Id: ClientInterface.h,v 1.9 2003/01/27 22:52:53 Audoux Exp $
** Author(s) : Philippe Fremy, Pascal Audoux
** Creation : 14/01/2003
** Copyright: Pascal Audoux, Philippe Fremy 2003
@@ -38,7 +38,6 @@
class QAction;
class Game;
-class ClientEngine;
class ServerDialog;
/* ------------------------------
@@ -103,7 +102,6 @@
void zoom( int level );
Game * _game;
- ClientEngine * _clientEngine;
ServerDialog * _server;
QAction * _actions[NUMBER_OF_ACTION];
};
Index: camino/src/client/Game.cpp
diff -u camino/src/client/Game.cpp:1.6 camino/src/client/Game.cpp:1.7
--- camino/src/client/Game.cpp:1.6 Sun Jan 26 13:10:57 2003
+++ camino/src/client/Game.cpp Mon Jan 27 17:52:53 2003
@@ -2,7 +2,7 @@
**
** Camino
**
-** Version : $Id: Game.cpp,v 1.6 2003/01/26 18:10:57 pfremy Exp $
+** Version : $Id: Game.cpp,v 1.7 2003/01/27 22:52:53 Audoux Exp $
**
** Author(s) : Philippe Fremy, Pascal Audoux
** Creation : 15/01/2003
@@ -30,27 +30,52 @@
#include "Game.h"
#include "client/BoardCanvas.h"
#include "client/BoardView.h"
+#include "client/ChatWidget.h"
#include "client/ClientEngine.h"
-Game::Game( ClientEngine * engine, QWidget * parent , const char * name )
+Game::Game( QWidget * parent , const char * name )
: QWidget( parent, name, QWidget::WStyle_Customize |
QWidget::WStyle_DialogBorder )
{
- _clientEngine = engine;
+ _engine = new ClientEngine();
_board = new BoardCanvas( this );
BoardView * boardView = new BoardView( _board, this );
+ _chat = new ChatWidget( this );
+
QVBoxLayout * layout = new QVBoxLayout( this );
layout->addWidget( boardView, 1 );
- //layout->addWidget( _chat );
+ layout->addWidget( _chat, 1 );
layout->activate();
_board->addTile( 1, 1 );
+
+ connect( _chat, SIGNAL( sig_message( const QString & ) ), SLOT(
slot_message( const QString & ) ) );
+ connect( _engine, SIGNAL( sig_message( const QString & ) ), SLOT(
slot_serverMessage( const QString & ) ) );
}
Game::~Game()
{
}
+void Game::connectToServer( QString host, int port, QString player )
+{
+ _engine->connectToServer( host, port, player );
+}
+
+void Game::slot_message( const QString & msg )
+{
+ if( _engine->isConnected() ) {
+ _engine->sendMessage( msg );
+ _chat->newMessage( msg );
+ } else {
+ _chat->newMessage( "(Not connected) : " + msg );
+ }
+}
+
+void Game::slot_serverMessage( const QString & msg )
+{
+ _chat->newMessage( msg );
+}
Index: camino/src/client/Game.h
diff -u camino/src/client/Game.h:1.4 camino/src/client/Game.h:1.5
--- camino/src/client/Game.h:1.4 Sun Jan 26 13:10:57 2003
+++ camino/src/client/Game.h Mon Jan 27 17:52:53 2003
@@ -5,7 +5,7 @@
** Game.h
** Main widget of the game
**
-** Version : $Id: Game.h,v 1.4 2003/01/26 18:10:57 pfremy Exp $
+** Version : $Id: Game.h,v 1.5 2003/01/27 22:52:53 Audoux Exp $
** Author(s) : Philippe Fremy, Pascal Audoux
** Creation : 15/01/2003
** Copyright: Pascal Audoux, Philippe Fremy 2003
@@ -30,11 +30,13 @@
// generic include files
// include files for QT
+#include <qstring.h>
#include <qwidget.h>
// application specific include files
#include "common/MsgDecoder.h"
class BoardCanvas;
+class ChatWidget;
class ClientEngine;
/* ------------------------------
@@ -46,14 +48,22 @@
public:
/** Constructor */
- Game( ClientEngine *, QWidget * parent = 0, const char * name = 0 );
+ Game( QWidget * parent = 0, const char * name = 0 );
/** Destructor */
virtual ~Game();
+ void connectToServer( QString host, int port, QString player );
+
+public slots:
+ void slot_message( const QString & msg );
+
+ void slot_serverMessage( const QString & msg );
+
protected:
BoardCanvas * _board;
- ClientEngine * _clientEngine;
+ ChatWidget * _chat;
+ ClientEngine * _engine;
};
#endif // GAME_H
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Camino-devel] camino/src/client ClientEngine.cpp ClientEngine...,
Pascal Audoux <=