X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fclient%2Fclient.h;h=cb031ac9f86dca8700406013401fc63fa29a3b78;hb=2039f5e28eeb431e394f1c2468a26218bd926538;hp=452bed07f7d91adf80fbb4b2c4caf160470ef409;hpb=0ac9ce4d7cf768d13993d6aa1d6b791c4149a843;p=quassel.git diff --git a/src/client/client.h b/src/client/client.h index 452bed07..cb031ac9 100644 --- a/src/client/client.h +++ b/src/client/client.h @@ -55,6 +55,13 @@ class Client : public QObject { static bool isConnected(); + static void storeSessionData(const QString &key, const QVariant &data); + static QVariant retrieveSessionData(const QString &key, const QVariant &def = QVariant()); + static QStringList sessionDataKeys(); + + enum ClientMode { LocalCore, RemoteCore }; + static ClientMode clientMode; + signals: void sendInput(BufferId, QString message); void showBuffer(Buffer *); @@ -68,10 +75,16 @@ class Client : public QObject { void recvPartialItem(quint32 avail, quint32 size); void coreConnectionError(QString errorMsg); + void coreConnectionMsg(const QString &msg); + void coreConnectionProgress(uint part, uint total); void connected(); void disconnected(); + void sessionDataChanged(const QString &key); + void sessionDataChanged(const QString &key, const QVariant &data); + void sendSessionData(const QString &key, const QVariant &data); + public slots: //void selectBuffer(Buffer *); //void connectToLocalCore(); @@ -79,14 +92,14 @@ class Client : public QObject { void disconnectFromCore(); private slots: - void updateCoreData(UserId, QString); - void updateLocalData(QString, QVariant); + void recvCoreState(const QVariant &state); + void recvSessionData(const QString &key, const QVariant &data); void recvProxySignal(ClientSignal sig, QVariant arg1, QVariant arg2, QVariant arg3); void serverError(QAbstractSocket::SocketError); void serverHasData(); - void coreConnected(); - void coreDisconnected(); + void coreSocketConnected(); + void coreSocketDisconnected(); void userInput(BufferId, QString); void networkConnected(QString); @@ -111,13 +124,10 @@ class Client : public QObject { void init(); static Client *instanceptr; - void syncToCore(); + void syncToCore(const QVariant &coreState); QVariant connectToLocalCore(QString user, QString passwd); // defined in main.cpp void disconnectFromLocalCore(); // defined in main.cpp - enum ClientMode { LocalCore, RemoteCore }; - static ClientMode clientMode; - AbstractUi *mainUi; ClientProxy *clientProxy; BufferTreeModel *_bufferModel; @@ -126,14 +136,18 @@ class Client : public QObject { quint32 blockSize; static bool connectedToCore; + static VarMap coreConnectionInfo; static QHash buffers; static QHash bufferIds; static QHash > nicks; static QHash netConnected; + static QStringList netsAwaitingInit; static QHash ownNick; QTimer *layoutTimer; QList layoutQueue; + + VarMap sessionData; }; #endif