/***************************************************************************
- * Copyright (C) 2005-2019 by the Quassel Project *
+ * Copyright (C) 2005-2020 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include "clientignorelistmanager.h"
#include "messagemodel.h"
#include "networkmodel.h"
+#include "util.h"
MessageFilter::MessageFilter(QAbstractItemModel* source, QObject* parent)
: QSortFilterProxyModel(parent)
MessageFilter::MessageFilter(MessageModel* source, const QList<BufferId>& buffers, QObject* parent)
: QSortFilterProxyModel(parent)
- , _validBuffers(buffers.toSet())
+ , _validBuffers(toQSet(buffers))
, _messageTypeFilter(0)
{
init();
if (_validBuffers.isEmpty())
return "*";
- QList<BufferId> bufferIds = _validBuffers.toList();
- qSort(bufferIds);
+ QList<BufferId> bufferIds = _validBuffers.values();
+ std::sort(bufferIds.begin(), bufferIds.end());
QStringList bufferIdStrings;
foreach (BufferId id, bufferIds)
if (redirectionTarget & BufferSettings::CurrentBuffer && !(flags & Message::Backlog)) {
BufferId redirectedTo = sourceModel()->data(sourceIdx, MessageModel::RedirectedToRole).value<BufferId>();
if (!redirectedTo.isValid()) {
- BufferId redirectedTo = Client::bufferModel()->currentIndex().data(NetworkModel::BufferIdRole).value<BufferId>();
+ redirectedTo = Client::bufferModel()->currentIndex().data(NetworkModel::BufferIdRole).value<BufferId>();
if (redirectedTo.isValid())
- sourceModel()->setData(sourceIdx, QVariant::fromValue<BufferId>(redirectedTo), MessageModel::RedirectedToRole);
+ sourceModel()->setData(sourceIdx, QVariant::fromValue(redirectedTo), MessageModel::RedirectedToRole);
}
if (_validBuffers.contains(redirectedTo))