#ifndef BUFFERSYNCER_H_
#define BUFFERSYNCER_H_
-#include <QDateTime>
-
#include "syncableobject.h"
#include "types.h"
class BufferSyncer : public SyncableObject {
Q_OBJECT
- public:
- explicit BufferSyncer(QObject *parent);
+public:
+ explicit BufferSyncer(QObject *parent);
+
+ MsgId lastSeenMsg(BufferId buffer) const;
- QDateTime lastSeen(BufferId buffer) const;
+public slots:
+ QVariantList initLastSeenMsg() const;
+ void initSetLastSeenMsg(const QVariantList &);
- public slots:
- QVariantList initLastSeen() const;
- void initSetLastSeen(const QVariantList &);
+ void requestSetLastSeenMsg(BufferId buffer, const MsgId &msgId);
+ void requestRemoveBuffer(BufferId buffer);
+ void removeBuffer(BufferId buffer);
+ void renameBuffer(BufferId buffer, QString newName);
- void requestSetLastSeen(BufferId buffer, const QDateTime &time);
- void requestRemoveBuffer(BufferId buffer);
- void removeBuffer(BufferId buffer);
- void renameBuffer(BufferId buffer, QString newName);
+signals:
+ void lastSeenMsgSet(BufferId buffer, const MsgId &msgId);
+ void setLastSeenMsgRequested(BufferId buffer, const MsgId &msgId);
+ void removeBufferRequested(BufferId buffer);
+ void bufferRemoved(BufferId buffer);
+ void bufferRenamed(BufferId buffer, QString newName);
- signals:
- void lastSeenSet(BufferId buffer, const QDateTime &time);
- void setLastSeenRequested(BufferId buffer, const QDateTime &time);
- void removeBufferRequested(BufferId buffer);
- void bufferRemoved(BufferId buffer);
- void bufferRenamed(BufferId buffer, QString newName);
+private slots:
+ bool setLastSeenMsg(BufferId buffer, const MsgId &msgId);
- private slots:
- bool setLastSeen(BufferId buffer, const QDateTime &time);
+private:
+ QHash<BufferId, MsgId> _lastSeenMsg;
- private:
- QMap<BufferId, QDateTime> _lastSeen;
};
#endif