X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fbufferviewmanager.cpp;h=0412a6ec67fe68c2ab7a8fa3a3f42eadb6065faa;hp=56a10c8881cf0628af6b6a5f682c529ed8796e19;hb=HEAD;hpb=0a43227b8cd44625f4881cc1545d42c8c8a4876c diff --git a/src/common/bufferviewmanager.cpp b/src/common/bufferviewmanager.cpp index 56a10c88..0412a6ec 100644 --- a/src/common/bufferviewmanager.cpp +++ b/src/common/bufferviewmanager.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2016 by the Quassel Project * + * Copyright (C) 2005-2022 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()); } }