qa: Avoid deprecation warnings for QList/QSet conversions
[quassel.git] / src / client / bufferviewoverlay.cpp
index 91cad71..455f273 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-2015 by the Quassel Project                        *
+ *   Copyright (C) 2005-2019 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
 #include "clientbacklogmanager.h"
 #include "clientbufferviewmanager.h"
 #include "networkmodel.h"
+#include "util.h"
 
 const int BufferViewOverlay::_updateEventId = QEvent::registerEventType();
 
-BufferViewOverlay::BufferViewOverlay(QObject *parent)
-    : QObject(parent),
-    _aboutToUpdate(false),
-    _uninitializedViewCount(0),
-    _allowedBufferTypes(0),
-    _minimumActivity(0)
-{
-}
-
+BufferViewOverlay::BufferViewOverlay(QObject* parent)
+    : QObject(parent)
+{}
 
 void BufferViewOverlay::reset()
 {
@@ -56,13 +51,11 @@ void BufferViewOverlay::reset()
     _tempRemovedBuffers.clear();
 }
 
-
 void BufferViewOverlay::save()
 {
     CoreAccountSettings().setBufferViewOverlay(_bufferViewIds);
 }
 
-
 void BufferViewOverlay::restore()
 {
     QSet<int> currentIds = _bufferViewIds;
@@ -75,13 +68,12 @@ void BufferViewOverlay::restore()
     }
 }
 
-
 void BufferViewOverlay::addView(int viewId)
 {
     if (_bufferViewIds.contains(viewId))
         return;
 
-    BufferViewConfig *config = Client::bufferViewManager()->bufferViewConfig(viewId);
+    BufferViewConfigconfig = Client::bufferViewManager()->bufferViewConfig(viewId);
     if (!config) {
         qDebug() << "BufferViewOverlay::addView(): no such buffer view:" << viewId;
         return;
@@ -97,40 +89,38 @@ void BufferViewOverlay::addView(int viewId)
         if (wasInitialized) {
             BufferIdList buffers;
             if (config->networkId().isValid()) {
-                foreach(BufferId bufferId, config->bufferList()) {
+                foreach (BufferId bufferId, config->bufferList()) {
                     if (Client::networkModel()->networkId(bufferId) == config->networkId())
                         buffers << bufferId;
                 }
-                foreach(BufferId bufferId, config->temporarilyRemovedBuffers().toList()) {
+                for (BufferId bufferId : config->temporarilyRemovedBuffers()) {
                     if (Client::networkModel()->networkId(bufferId) == config->networkId())
                         buffers << bufferId;
                 }
             }
             else {
-                buffers = BufferIdList::fromSet(config->bufferList().toSet() + config->temporarilyRemovedBuffers());
+                buffers = (toQSet(config->bufferList()) + config->temporarilyRemovedBuffers()).values();
             }
             Client::backlogManager()->checkForBacklog(buffers);
         }
     }
     else {
-        disconnect(config, SIGNAL(initDone()), this, SLOT(viewInitialized()));
         // we use a queued connection here since manipulating the connection list of a sending object
         // doesn't seem to be such a good idea while executing a connected slots.
-        connect(config, SIGNAL(initDone()), this, SLOT(viewInitialized()), Qt::QueuedConnection);
+        connect(config, &BufferViewConfig::initDone, this, selectOverload<>(&BufferViewOverlay::viewInitialized), Qt::QueuedConnection);
     }
     save();
 }
 
-
 void BufferViewOverlay::removeView(int viewId)
 {
     if (!_bufferViewIds.contains(viewId))
         return;
 
     _bufferViewIds.remove(viewId);
-    BufferViewConfig *config = Client::bufferViewManager()->bufferViewConfig(viewId);
+    BufferViewConfigconfig = Client::bufferViewManager()->bufferViewConfig(viewId);
     if (config)
-        disconnect(config, 0, this, 0);
+        disconnect(config, nullptr, this, nullptr);
 
     // update initialized State:
     bool wasInitialized = isInitialized();
@@ -154,16 +144,13 @@ void BufferViewOverlay::removeView(int viewId)
     save();
 }
 
-
-void BufferViewOverlay::viewInitialized(BufferViewConfig *config)
+void BufferViewOverlay::viewInitialized(BufferViewConfig* config)
 {
     if (!config) {
         qWarning() << "BufferViewOverlay::viewInitialized() received invalid view!";
         return;
     }
-    disconnect(config, SIGNAL(initDone()), this, SLOT(viewInitialized()));
-
-    connect(config, SIGNAL(configChanged()), this, SLOT(update()));
+    connect(config, &BufferViewConfig::configChanged, this, &BufferViewOverlay::update);
 
     // check if the view was removed in the meantime...
     if (_bufferViewIds.contains(config->bufferViewId()))
@@ -174,16 +161,14 @@ void BufferViewOverlay::viewInitialized(BufferViewConfig *config)
         emit initDone();
 }
 
-
 void BufferViewOverlay::viewInitialized()
 {
-    BufferViewConfig *config = qobject_cast<BufferViewConfig *>(sender());
+    auto* config = qobject_cast<BufferViewConfig*>(sender());
     Q_ASSERT(config);
 
     viewInitialized(config);
 }
 
-
 void BufferViewOverlay::update()
 {
     if (_aboutToUpdate) {
@@ -193,7 +178,6 @@ void BufferViewOverlay::update()
     QCoreApplication::postEvent(this, new QEvent((QEvent::Type)_updateEventId));
 }
 
-
 void BufferViewOverlay::updateHelper()
 {
     if (!_aboutToUpdate)
@@ -209,7 +193,7 @@ void BufferViewOverlay::updateHelper()
     QSet<BufferId> tempRemovedBuffers;
 
     if (Client::bufferViewManager()) {
-        BufferViewConfig *config = 0;
+        BufferViewConfig* config = nullptr;
         QSet<int>::const_iterator viewIter;
         for (viewIter = _bufferViewIds.constBegin(); viewIter != _bufferViewIds.constEnd(); ++viewIter) {
             config = Client::bufferViewManager()->bufferViewConfig(*viewIter);
@@ -224,12 +208,12 @@ void BufferViewOverlay::updateHelper()
 
             // we have to apply several filters before we can add a buffer to a category (visible, removed, ...)
             buffers += filterBuffersByConfig(config->bufferList(), config);
-            tempRemovedBuffers += filterBuffersByConfig(config->temporarilyRemovedBuffers().toList(), config);
+            tempRemovedBuffers += filterBuffersByConfig(config->temporarilyRemovedBuffers().values(), config);
             removedBuffers += config->removedBuffers();
         }
 
         // prune the sets from overlap
-        QSet<BufferId> availableBuffers = Client::networkModel()->allBufferIds().toSet();
+        QSet<BufferId> availableBuffers = toQSet(Client::networkModel()->allBufferIds());
 
         buffers.intersect(availableBuffers);
 
@@ -261,14 +245,13 @@ void BufferViewOverlay::updateHelper()
         emit hasChanged();
 }
 
-
-QSet<BufferId> BufferViewOverlay::filterBuffersByConfig(const QList<BufferId> &buffers, const BufferViewConfig *config)
+QSet<BufferId> BufferViewOverlay::filterBuffersByConfig(const QList<BufferId>& buffers, const BufferViewConfig* config)
 {
     Q_ASSERT(config);
 
     QSet<BufferId> bufferIds;
     BufferInfo bufferInfo;
-    foreach(BufferId bufferId, buffers) {
+    foreach (BufferId bufferId, buffers) {
         bufferInfo = Client::networkModel()->bufferInfo(bufferId);
         if (!(bufferInfo.type() & config->allowedBufferTypes()))
             continue;
@@ -280,57 +263,49 @@ QSet<BufferId> BufferViewOverlay::filterBuffersByConfig(const QList<BufferId> &b
     return bufferIds;
 }
 
-
-void BufferViewOverlay::customEvent(QEvent *event)
+void BufferViewOverlay::customEvent(QEvent* event)
 {
     if (event->type() == _updateEventId) {
         updateHelper();
     }
 }
 
-
 bool BufferViewOverlay::allNetworks()
 {
     updateHelper();
     return _networkIds.contains(NetworkId());
 }
 
-
-const QSet<NetworkId> &BufferViewOverlay::networkIds()
+const QSet<NetworkId>& BufferViewOverlay::networkIds()
 {
     updateHelper();
     return _networkIds;
 }
 
-
-const QSet<BufferId> &BufferViewOverlay::bufferIds()
+const QSet<BufferId>& BufferViewOverlay::bufferIds()
 {
     updateHelper();
     return _buffers;
 }
 
-
-const QSet<BufferId> &BufferViewOverlay::removedBufferIds()
+const QSet<BufferId>& BufferViewOverlay::removedBufferIds()
 {
     updateHelper();
     return _removedBuffers;
 }
 
-
-const QSet<BufferId> &BufferViewOverlay::tempRemovedBufferIds()
+const QSet<BufferId>& BufferViewOverlay::tempRemovedBufferIds()
 {
     updateHelper();
     return _tempRemovedBuffers;
 }
 
-
 int BufferViewOverlay::allowedBufferTypes()
 {
     updateHelper();
     return _allowedBufferTypes;
 }
 
-
 int BufferViewOverlay::minimumActivity()
 {
     updateHelper();