X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fclient.h;h=edda8c6bcd1562e2c9a64842afe5c22be5ce8ae1;hb=fa4d0a5606f0c9ed49e196278611fce6b017fb0b;hp=b7e079e6ce89863db7fd59018e2d882934d4acf6;hpb=2f600006c172342f253f1763620f5e635bc5b86f;p=quassel.git diff --git a/src/client/client.h b/src/client/client.h index b7e079e6..edda8c6b 100644 --- a/src/client/client.h +++ b/src/client/client.h @@ -30,39 +30,42 @@ class BufferInfo; class Message; +class MessageModel; +class AbstractMessageProcessor; class Identity; class Network; - class AbstractUi; class AbstractUiMsg; class NetworkModel; class BufferModel; class BufferSyncer; class ClientBacklogManager; +class ClientIrcListHelper; class BufferViewManager; class IrcUser; class IrcChannel; class SignalProxy; struct NetworkInfo; -class QTimer; - - class Client : public QObject { Q_OBJECT public: + enum ClientMode { + LocalCore, + RemoteCore + }; + static Client *instance(); static void destroy(); static void init(AbstractUi *); static QList allBufferInfos(); static QList buffers(); - static Buffer *buffer(BufferId bufferUid); + // static Buffer *buffer(BufferId bufferUid); static Buffer *buffer(BufferInfo); - static inline Buffer *monitorBuffer() { return instance()->_monitorBuffer; } static QList networkIds(); static const Network * network(NetworkId); @@ -94,23 +97,21 @@ public: static inline NetworkModel *networkModel() { return instance()->_networkModel; } static inline BufferModel *bufferModel() { return instance()->_bufferModel; } + static inline MessageModel *messageModel() { return instance()->_messageModel; } + static inline AbstractMessageProcessor *messageProcessor() { return instance()->_messageProcessor; } static inline SignalProxy *signalProxy() { return instance()->_signalProxy; } static inline ClientBacklogManager *backlogManager() { return instance()->_backlogManager; } + static inline ClientIrcListHelper *ircListHelper() { return instance()->_ircListHelper; } static inline BufferViewManager *bufferViewManager() { return instance()->_bufferViewManager; } - - static AccountId currentCoreAccount(); - static AbstractUiMsg *layoutMsg(const Message &); + static AccountId currentCoreAccount(); static bool isConnected(); static bool isSynced(); static void userInput(BufferInfo bufferInfo, QString message); - enum ClientMode { LocalCore, RemoteCore }; - - static void checkForHighlight(Message &msg); static void setBufferLastSeenMsg(BufferId id, const MsgId &msgId); // this is synced to core and other clients static void removeBuffer(BufferId id); @@ -121,7 +122,6 @@ signals: void backlogReceived(Buffer *, QList); void requestBacklog(BufferInfo, QVariant, QVariant); void requestNetworkStates(); - void messageReceived(const Message &msg); void showConfigWizard(const QVariantMap &coredata); @@ -177,9 +177,6 @@ private slots: void recvStatusMsg(QString network, QString message); void receiveBacklog(BufferId bufferId, const QVariantList &msgs); void updateBufferInfo(BufferInfo); - void updateLastSeenMsg(BufferId id, const MsgId &msgId); - - void layoutMsg(); void bufferDestroyed(); void networkDestroyed(); @@ -215,6 +212,10 @@ private: BufferSyncer * _bufferSyncer; ClientBacklogManager *_backlogManager; BufferViewManager *_bufferViewManager; + ClientIrcListHelper *_ircListHelper; + + MessageModel *_messageModel; + AbstractMessageProcessor *_messageProcessor; ClientMode clientMode; @@ -225,11 +226,6 @@ private: QHash _networks; QHash _identities; - Buffer *_monitorBuffer; - - QTimer *layoutTimer; - QList layoutQueue; - static AccountId _currentCoreAccount; friend class ClientSyncer;