X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fmessagemodel.h;h=b65fbbfad2c13caaff21f76d98c022c6328b54ad;hb=9a77a6c1c6e274103803acce606f445d82456c7c;hp=f8ffaa5a9cebe5ce43e0e0b0b701ab9380359f30;hpb=fb011e52bc6613198a65e037f0752f6361339aeb;p=quassel.git diff --git a/src/client/messagemodel.h b/src/client/messagemodel.h index f8ffaa5a..b65fbbfa 100644 --- a/src/client/messagemodel.h +++ b/src/client/messagemodel.h @@ -44,6 +44,7 @@ public: TimestampRole, FormatRole, ColumnTypeRole, + RedirectedToRole, UserRole }; @@ -55,7 +56,7 @@ public: inline QModelIndex index(int row, int column, const QModelIndex &/*parent*/ = QModelIndex()) const { return createIndex(row, column); } inline QModelIndex parent(const QModelIndex &) const { return QModelIndex(); } - inline int rowCount(const QModelIndex &/*parent*/ = QModelIndex()) const { return _messageList.count(); } + inline int rowCount(const QModelIndex &parent = QModelIndex()) const { return parent.isValid() ? 0 : _messageList.count(); } inline int columnCount(const QModelIndex &/*parent*/ = QModelIndex()) const { return 3; } virtual QVariant data(const QModelIndex &index, int role) const; @@ -71,6 +72,7 @@ public: public slots: void requestBacklog(BufferId bufferId); void messagesReceived(BufferId bufferId, int count); + void buffersPermanentlyMerged(BufferId bufferId1, BufferId bufferId2); protected: virtual MessageModelItem *createMessageModelItem(const Message &) = 0; @@ -105,11 +107,12 @@ public: inline virtual ~MessageModelItem() {} virtual QVariant data(int column, int role) const; - virtual bool setData(int column, const QVariant &value, int role) = 0; + virtual bool setData(int column, const QVariant &value, int role); inline const QDateTime &timeStamp() const { return _timestamp; } inline MsgId msgId() const { return _msgId; } inline BufferId bufferId() const { return _bufferId; } + inline void setBufferId(BufferId bufferId) { _bufferId = bufferId; } inline Message::Type msgType() const { return _type; } inline Message::Flags msgFlags() const { return _flags; } @@ -123,6 +126,7 @@ private: QDateTime _timestamp; MsgId _msgId; BufferId _bufferId; + BufferId _redirectedTo; Message::Type _type; Message::Flags _flags; };