_activity(NoActivity)
{
// determine BufferType
- if(bufferInfo.buffer().isEmpty())
+ if(bufferInfo.bufferName().isEmpty())
_type = StatusType;
- else if(isChannelName(bufferInfo.buffer()))
+ else if(isChannelName(bufferInfo.bufferName()))
_type = ChannelType;
else
_type = QueryType;
}
quint64 BufferItem::id() const {
- return bufferInfo().uid().toInt();
+ return bufferInfo().bufferId().toInt();
}
bool BufferItem::isStatusBuffer() const {
case NetworkModel::ItemTypeRole:
return NetworkModel::BufferItemType;
case NetworkModel::BufferIdRole:
- return qVariantFromValue(bufferInfo().uid());
+ return qVariantFromValue(bufferInfo().bufferId());
case NetworkModel::NetworkIdRole:
return qVariantFromValue(bufferInfo().networkId());
case NetworkModel::BufferInfoRole:
if(bufferType() == StatusType)
return tr("Status Buffer");
else
- return bufferInfo().buffer();
+ return bufferInfo().bufferName();
}
QString BufferItem::topic() const {
}
BufferItem *NetworkModel::existsBufferItem(const BufferInfo &bufferInfo) {
- QModelIndex bufferIdx = bufferIndex(bufferInfo.uid());
+ QModelIndex bufferIdx = bufferIndex(bufferInfo.bufferId());
if(bufferIdx.isValid())
return static_cast<BufferItem *>(bufferIdx.internalPointer());
else
if(msg.type() == Message::Plain || msg.type() == Message::Notice)
level |= BufferItem::NewMessage;
- if(msg.flags() & Message::Highlight)
+ const Network *net = Client::network(msg.bufferInfo().networkId());
+ if(net && msg.text().contains(net->myNick()))
level |= BufferItem::Highlight;
- bufferItem(msg.buffer())->updateActivity(level);
+ bufferItem(msg.bufferInfo())->updateActivity(level);
}
+const Network *NetworkModel::networkByIndex(const QModelIndex &index) const {
+ QVariant netVariant = index.data(NetworkIdRole);
+ if(!netVariant.isValid())
+ return 0;
+
+ NetworkId networkId = netVariant.value<NetworkId>();
+ return Client::network(networkId);
+}