From df0846fca1b6a8427498a125b32f4da6d236a7fc Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Sun, 3 Aug 2008 00:56:02 +0200 Subject: [PATCH] Bring back activity levels. I think Buffer has to go soon, since this is all that it does now. --- src/client/buffer.cpp | 4 ++-- src/client/buffer.h | 2 +- src/client/client.cpp | 4 +++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/client/buffer.cpp b/src/client/buffer.cpp index 0cb9face..de3bfcf6 100644 --- a/src/client/buffer.cpp +++ b/src/client/buffer.cpp @@ -65,7 +65,7 @@ void Buffer::prependMsg(const Message &msg) { bool Buffer::layoutMsg() { if(layoutQueue.isEmpty()) return false; - + AbstractUiMsg *m = Client::layoutMsg(layoutQueue.takeFirst()); layoutedMsgs.prepend(m); emit msgPrepended(m); @@ -114,7 +114,7 @@ void Buffer::updateActivityLevel(const Message &msg) { ActivityLevel level = activityLevel() | OtherActivity; if(msg.type() & (Message::Plain | Message::Notice | Message::Action)) level |= NewMessage; - + if(msg.flags() & Message::Highlight) level |= Highlight; diff --git a/src/client/buffer.h b/src/client/buffer.h index 44e6efd1..8a20f529 100644 --- a/src/client/buffer.h +++ b/src/client/buffer.h @@ -67,6 +67,7 @@ public slots: void setVisible(bool visible); void setLastSeenMsg(const MsgId &msgId); void setActivityLevel(ActivityLevel level); + void updateActivityLevel(const Message &msg); private: BufferInfo _bufferInfo; @@ -77,7 +78,6 @@ private: QLinkedList layoutQueue; QList layoutedMsgs; - void updateActivityLevel(const Message &msg); }; Q_DECLARE_OPERATORS_FOR_FLAGS(Buffer::ActivityLevel) diff --git a/src/client/client.cpp b/src/client/client.cpp index 110c8ff4..e39435e6 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -77,7 +77,7 @@ Client::Client(QObject *parent) { _monitorBuffer = new Buffer(BufferInfo(), this); _signalProxy->synchronize(_ircListHelper); - + connect(_backlogManager, SIGNAL(backlog(BufferId, const QVariantList &)), this, SLOT(receiveBacklog(BufferId, const QVariantList &))); } @@ -441,6 +441,7 @@ void Client::recvMessage(const Message &msg_) { Message msg = msg_; checkForHighlight(msg); _messageModel->insertMessage(msg); + buffer(msg.bufferInfo())->updateActivityLevel(msg); } void Client::recvStatusMsg(QString /*net*/, QString /*msg*/) { @@ -453,6 +454,7 @@ void Client::receiveBacklog(BufferId bufferId, const QVariantList &msgs) { Message msg = v.value(); checkForHighlight(msg); _messageModel->insertMessage(msg); + buffer(msg.bufferInfo())->updateActivityLevel(msg); } //qDebug() << "processed" << msgs.count() << "backlog lines in" << start.msecsTo(QTime::currentTime()); } -- 2.20.1