class AbstractMessageProcessor : public QObject {
Q_OBJECT
- public:
- AbstractMessageProcessor(QObject *parent);
- virtual void reset() = 0;
-
- public slots:
- virtual void process(Message &msg) = 0;
- virtual void process(QList<Message> &msgs) = 0;
-
- signals:
- void progressUpdated(int value, int maximum);
-
- protected:
- inline void postProcess(Message &msg) { Client::networkModel()->updateBufferActivity(msg); }
-
+public:
+ AbstractMessageProcessor(QObject *parent);
+ virtual void reset() = 0;
+
+public slots:
+ virtual void process(Message &msg) = 0;
+ virtual void process(QList<Message> &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