bool BufferViewFilter::filterAcceptBuffer(const QModelIndex &source_bufferIndex) const {
+ BufferId bufferId = sourceModel()->data(source_bufferIndex, NetworkModel::BufferIdRole).value<BufferId>();
+ Q_ASSERT(bufferId.isValid());
if(!_config)
return true;
-
+
if(config()->networkId().isValid() && config()->networkId() != sourceModel()->data(source_bufferIndex, NetworkModel::NetworkIdRole).value<NetworkId>())
return false;
return false;
if(_config->minimumActivity() > source_bufferIndex.data(NetworkModel::BufferActivityRole).toInt()) {
- if(!Client::bufferModel()->standardSelectionModel()->isSelected(source_bufferIndex))
+ if(bufferId != Client::bufferModel()->standardSelectionModel()->currentIndex().data(NetworkModel::BufferIdRole).value<BufferId>())
return false;
}
- BufferId bufferId = sourceModel()->data(source_bufferIndex, NetworkModel::BufferIdRole).value<BufferId>();
return _config->bufferList().contains(bufferId);
}
return false;
}
- if(source_parent == QModelIndex())
+ if(!source_parent.isValid())
return filterAcceptNetwork(child);
else
return filterAcceptBuffer(child);
if(!config() || !config()->addNewBuffersAutomatically())
return;
+ QModelIndex child;
for(int row = start; row <= end; row++) {
- addBuffer(parent.child(row, 0).data(NetworkModel::BufferIdRole).value<BufferId>());
+ child = sourceModel()->index(row, 0, parent);
+ addBuffer(sourceModel()->data(child, NetworkModel::BufferIdRole).value<BufferId>());
}
}