X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fbacklogrequester.h;fp=src%2Fclient%2Fbuffer.h;h=5ef71b28784b7b7bdae562fbbf3b0ff02c5c8e8d;hp=84f34a3994e9ab2ffcfde87010e108c484620ac7;hb=332069a1830ed3a055ac6f2d7661bae1cc83e40c;hpb=dbe74e993bcad57c15feb30d9bed30b6d43a3332 diff --git a/src/client/buffer.h b/src/client/backlogrequester.h similarity index 69% rename from src/client/buffer.h rename to src/client/backlogrequester.h index 84f34a39..5ef71b28 100644 --- a/src/client/buffer.h +++ b/src/client/backlogrequester.h @@ -18,42 +18,39 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ -#ifndef _BUFFER_H_ -#define _BUFFER_H_ +#ifndef BACKLOGREQUESTER_H +#define BACKLOGREQUESTER_H -#include +#include -class AbstractUiMsg; -class IrcChannel; -class NickModel; +#include "client.h" +#include "networkmodel.h" +#include "types.h" -struct BufferState; +class BacklogManager; -#include "message.h" -#include "bufferinfo.h" +class BacklogRequester { +public: + BacklogRequester(BacklogManager *backlogManger); + virtual inline ~BacklogRequester() {} -/** - */ -class Buffer : public QObject { - Q_OBJECT + virtual void requestBacklog() = 0; -public: - enum Activity { - NoActivity = 0x00, - OtherActivity = 0x01, - NewMessage = 0x02, - Highlight = 0x40 - }; - Q_DECLARE_FLAGS(ActivityLevel, Activity) +protected: + inline QList allBufferIds() const { return Client::networkModel()->allBufferIds(); } + BacklogManager *backlogManager; +}; - Buffer(BufferInfo, QObject *parent = 0); - BufferInfo bufferInfo() const; +class FixedBacklogRequester : public BacklogRequester { +public: + FixedBacklogRequester(BacklogManager *backlogManager); + + virtual void requestBacklog(); private: - BufferInfo _bufferInfo; + static const int backlogCount; }; -Q_DECLARE_OPERATORS_FOR_FLAGS(Buffer::ActivityLevel) -#endif +#endif //BACKLOGREQUESTER_H