X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fbufferviewmanager.cpp;h=f5ccf69d237352881f7771d349117f5505604166;hp=580b4ad2c627215cc0fd9f648bf7289b25847ffa;hb=cc6e7c08709c4e761e2fd9c2e322751015497003;hpb=83662b607de9eb742fe9de4dd9445914a6bd9456 diff --git a/src/common/bufferviewmanager.cpp b/src/common/bufferviewmanager.cpp index 580b4ad2..f5ccf69d 100644 --- a/src/common/bufferviewmanager.cpp +++ b/src/common/bufferviewmanager.cpp @@ -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 * @@ -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()); } }