X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fbuffer.h;h=84f34a3994e9ab2ffcfde87010e108c484620ac7;hb=aa49f1a8d52fb95920c7b686ea2c7ae5c1532d87;hp=f7439137b8e59f6857dcb266784021b28c448cb9;hpb=50706d89d4d60e258ebb6873d3778383621898e4;p=quassel.git diff --git a/src/client/buffer.h b/src/client/buffer.h index f7439137..84f34a39 100644 --- a/src/client/buffer.h +++ b/src/client/buffer.h @@ -21,6 +21,8 @@ #ifndef _BUFFER_H_ #define _BUFFER_H_ +#include + class AbstractUiMsg; class IrcChannel; class NickModel; @@ -30,39 +32,28 @@ struct BufferState; #include "message.h" #include "bufferinfo.h" -//!\brief Encapsulates the contents of a single channel, query or server status context. -/** A Buffer maintains a list of existing nicks and their status. +/** */ class Buffer : public QObject { Q_OBJECT public: + enum Activity { + NoActivity = 0x00, + OtherActivity = 0x01, + NewMessage = 0x02, + Highlight = 0x40 + }; + Q_DECLARE_FLAGS(ActivityLevel, Activity) + Buffer(BufferInfo, QObject *parent = 0); BufferInfo bufferInfo() const; - QList contents() const; - -signals: - void userInput(const BufferInfo &, QString); - - void msgAppended(AbstractUiMsg *); - void msgPrepended(AbstractUiMsg *); - void layoutQueueEmpty(); - -public slots: - void appendMsg(const Message &); - void prependMsg(const Message &); - bool layoutMsg(); - - void processUserInput(QString); - private: BufferInfo _bufferInfo; - - QList layoutQueue; - QList layoutedMsgs; - }; +Q_DECLARE_OPERATORS_FOR_FLAGS(Buffer::ActivityLevel) + #endif