Testing the new SyncObjects concept - looking good so far
[quassel.git] / src / common / backlogmanager.h
index c060f9c..95c87a0 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-08 by the Quassel IRC Team                         *
+ *   Copyright (C) 2005-09 by the Quassel Project                          *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
 #include "types.h"
 
 class BacklogManager : public SyncableObject {
+  SYNCABLE_OBJECT
   Q_OBJECT
 
 public:
-  BacklogManager(QObject *parent = 0);
+  BacklogManager(QObject *parent = 0) : SyncableObject(parent) {}
+  inline virtual const QMetaObject *syncMetaObject() const { return &staticMetaObject; }
 
 public slots:
-  virtual QVariantList requestBacklog(BufferId bufferId, int lastMsgs = -1, int offset = -1);
-  inline virtual void receiveBacklog(BufferId, int, int, QVariantList) {};
+  virtual QVariantList requestBacklog(BufferId bufferId, MsgId first = -1, MsgId last = -1, int limit = -1, int additional = 0);
+  inline virtual void receiveBacklog(BufferId, MsgId, MsgId, int, int, QVariantList) {};
 
-signals:
-  void backlogRequested(BufferId, int, int);
+  virtual QVariantList requestBacklogAll(MsgId first = -1, MsgId last = -1, int limit = -1, int additional = 0);
+  inline virtual void receiveBacklogAll(MsgId, MsgId, int, int, QVariantList) {};
 
+signals:
+  void backlogRequested(BufferId, MsgId, MsgId, int, int);
+  void backlogAllRequested(MsgId, MsgId, int, int);
 };
 
 #endif // BACKLOGMANAGER_H