X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fbufferviewmanager.cpp;h=f5ccf69d237352881f7771d349117f5505604166;hp=64af01e23219792f9cf8a8d01eccd1085e36ae71;hb=52209badc8e769e50aa3019b63689dda0e79e9d0;hpb=68878dc8366f2f4a0afe132847aad9a51a80cdbf diff --git a/src/common/bufferviewmanager.cpp b/src/common/bufferviewmanager.cpp index 64af01e2..f5ccf69d 100644 --- a/src/common/bufferviewmanager.cpp +++ b/src/common/bufferviewmanager.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2018 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 * @@ -23,34 +23,41 @@ #include "bufferviewconfig.h" #include "signalproxy.h" -INIT_SYNCABLE_OBJECT(BufferViewManager) -BufferViewManager::BufferViewManager(SignalProxy *proxy, QObject *parent) - : SyncableObject(parent), - _proxy(proxy) +BufferViewManager::BufferViewManager(SignalProxy* proxy, QObject* parent) + : SyncableObject(parent) + , _proxy(proxy) { _proxy->synchronize(this); } - -BufferViewConfig *BufferViewManager::bufferViewConfig(int bufferViewId) const +BufferViewConfig* BufferViewManager::bufferViewConfig(int bufferViewId) const { if (_bufferViewConfigs.contains(bufferViewId)) return _bufferViewConfigs[bufferViewId]; else - return 0; + return nullptr; } - -BufferViewConfig *BufferViewManager::bufferViewConfigFactory(int bufferViewConfigId) +BufferViewConfig* BufferViewManager::bufferViewConfigFactory(int bufferViewConfigId) { return new BufferViewConfig(bufferViewConfigId, this); } +void BufferViewManager::addBufferViewConfig(int bufferViewConfigId) +{ + if (_bufferViewConfigs.contains(bufferViewConfigId)) { + return; + } + + addBufferViewConfig(bufferViewConfigFactory(bufferViewConfigId)); +} -void BufferViewManager::addBufferViewConfig(BufferViewConfig *config) +void BufferViewManager::addBufferViewConfig(BufferViewConfig* config) { - if (_bufferViewConfigs.contains(config->bufferViewId())) + if (_bufferViewConfigs.contains(config->bufferViewId())) { + delete config; return; + } _proxy->synchronize(config); _bufferViewConfigs[config->bufferViewId()] = config; @@ -59,16 +66,6 @@ void BufferViewManager::addBufferViewConfig(BufferViewConfig *config) emit bufferViewConfigAdded(bufferViewId); } - -void BufferViewManager::addBufferViewConfig(int bufferViewConfigId) -{ - if (_bufferViewConfigs.contains(bufferViewConfigId)) - return; - - addBufferViewConfig(bufferViewConfigFactory(bufferViewConfigId)); -} - - void BufferViewManager::deleteBufferViewConfig(int bufferViewConfigId) { if (!_bufferViewConfigs.contains(bufferViewConfigId)) @@ -80,7 +77,6 @@ void BufferViewManager::deleteBufferViewConfig(int bufferViewConfigId) emit bufferViewConfigDeleted(bufferViewConfigId); } - QVariantList BufferViewManager::initBufferViewIds() const { QVariantList bufferViewIds; @@ -93,13 +89,9 @@ QVariantList BufferViewManager::initBufferViewIds() const return bufferViewIds; } - void BufferViewManager::initSetBufferViewIds(const QVariantList bufferViewIds) { - QVariantList::const_iterator iter = bufferViewIds.constBegin(); - QVariantList::const_iterator iterEnd = bufferViewIds.constEnd(); - while (iter != iterEnd) { - newBufferViewConfig((*iter).value()); - ++iter; + for (auto&& id : bufferViewIds) { + addBufferViewConfig(id.value()); } }