X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fabstractmessageprocessor.h;h=b38138e2235137b62f0127c819e1836bff5f2190;hp=ecbca3803084512e7ea451c422b5ce44e077d0bc;hb=7e20c659f88e26ccdfdc65f4894ed6ecf61ca8a9;hpb=31253a98ef87edb8f87ff53270529ed4f7659612 diff --git a/src/client/abstractmessageprocessor.h b/src/client/abstractmessageprocessor.h index ecbca380..b38138e2 100644 --- a/src/client/abstractmessageprocessor.h +++ b/src/client/abstractmessageprocessor.h @@ -1,5 +1,5 @@ /*************************************************************************** -* Copyright (C) 2005-08 by the Quassel Project * +* Copyright (C) 2005-09 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -21,25 +21,26 @@ #ifndef ABSTRACTMESSAGEPROCESSOR_H_ #define ABSTRACTMESSAGEPROCESSOR_H_ +#include "client.h" #include "message.h" +#include "networkmodel.h" class AbstractMessageProcessor : public QObject { Q_OBJECT - public: - AbstractMessageProcessor(QObject *parent); - virtual void reset() = 0; +public: + AbstractMessageProcessor(QObject *parent); + virtual void reset() = 0; - public slots: - virtual void process(Message &msg) = 0; - virtual void process(QList &msgs) = 0; - - signals: - void progressUpdated(int value, int maximum); - - protected: - void postProcess(Message &msg); +public slots: + virtual void process(Message &msg) = 0; + virtual void process(QList &msgs) = 0; +protected: + // updateBufferActivity also sets the Message::Redirected flag which is later used + // to determine where a message should be displayed. therefore it's crucial that it + // is called before inserting the message into the model + inline void preProcess(Message &msg) { Client::networkModel()->updateBufferActivity(msg); } }; #endif