X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fclient%2Fclient.h;h=452bed07f7d91adf80fbb4b2c4caf160470ef409;hb=0ac9ce4d7cf768d13993d6aa1d6b791c4149a843;hp=eee57fd5c11ea8288d70d40be05f50fc0b87f971;hpb=73edffb5f0f6ecae4118c36a7ca2c0d479b7f8c6;p=quassel.git diff --git a/src/client/client.h b/src/client/client.h index eee57fd5..452bed07 100644 --- a/src/client/client.h +++ b/src/client/client.h @@ -21,16 +21,20 @@ #ifndef _CLIENT_H_ #define _CLIENT_H_ -#include -#include +#include +#include +#include -#include "quasselui.h" #include "buffer.h" #include "message.h" #include "proxy_common.h" +class AbstractUi; class ClientProxy; class BufferTreeModel; +class QtGui; + +class QTimer; class Client : public QObject { Q_OBJECT @@ -40,6 +44,7 @@ class Client : public QObject { static void init(AbstractUi *); static void destroy(); + static QList allBufferIds(); static Buffer *buffer(BufferId); static BufferId statusBufferId(QString net); static BufferId bufferId(QString net, QString buf); @@ -48,6 +53,8 @@ class Client : public QObject { static AbstractUiMsg *layoutMsg(const Message &); + static bool isConnected(); + signals: void sendInput(BufferId, QString message); void showBuffer(Buffer *); @@ -57,13 +64,18 @@ class Client : public QObject { void bufferDestroyed(Buffer *); void backlogReceived(Buffer *, QList); void requestBacklog(BufferId, QVariant, QVariant); + void requestNetworkStates(); void recvPartialItem(quint32 avail, quint32 size); void coreConnectionError(QString errorMsg); + void connected(); + void disconnected(); + public slots: //void selectBuffer(Buffer *); - void connectToCore(QString host, quint16 port); + //void connectToLocalCore(); + void connectToCore(const VarMap &); void disconnectFromCore(); private slots: @@ -100,6 +112,8 @@ class Client : public QObject { static Client *instanceptr; void syncToCore(); + QVariant connectToLocalCore(QString user, QString passwd); // defined in main.cpp + void disconnectFromLocalCore(); // defined in main.cpp enum ClientMode { LocalCore, RemoteCore }; static ClientMode clientMode; @@ -111,12 +125,12 @@ class Client : public QObject { QTcpSocket socket; quint32 blockSize; + static bool connectedToCore; static QHash buffers; static QHash bufferIds; static QHash > nicks; - static QHash connected; + static QHash netConnected; static QHash ownNick; - static QList coreBuffers; QTimer *layoutTimer; QList layoutQueue;