+BufferViewConfig::BufferViewConfig(int bufferViewId, const QVariantMap& properties, QObject* parent)
+ : SyncableObject(parent)
+ , _bufferViewId(bufferViewId)
+{
+ fromVariantMap(properties);
+ setObjectName(QString::number(bufferViewId));
+}
+
+int BufferViewConfig::bufferViewId() const
+{
+ return _bufferViewId;
+}
+
+QString BufferViewConfig::bufferViewName() const
+{
+ return _bufferViewName;
+}
+
+NetworkId BufferViewConfig::networkId() const
+{
+ return _networkId;
+}
+
+bool BufferViewConfig::addNewBuffersAutomatically() const
+{
+ return _addNewBuffersAutomatically;
+}
+
+bool BufferViewConfig::sortAlphabetically() const
+{
+ return _sortAlphabetically;
+}
+
+bool BufferViewConfig::disableDecoration() const
+{
+ return _disableDecoration;
+}
+
+int BufferViewConfig::allowedBufferTypes() const
+{
+ return _allowedBufferTypes;
+}
+
+int BufferViewConfig::minimumActivity() const
+{
+ return _minimumActivity;
+}
+
+bool BufferViewConfig::hideInactiveBuffers() const
+{
+ return _hideInactiveBuffers;
+}
+
+bool BufferViewConfig::hideInactiveNetworks() const
+{
+ return _hideInactiveNetworks;
+}
+
+bool BufferViewConfig::showSearch() const
+{
+ return _showSearch;
+}
+
+QList<BufferId> BufferViewConfig::bufferList() const
+{
+ return _buffers;
+}
+
+QSet<BufferId> BufferViewConfig::removedBuffers() const
+{
+ return _removedBuffers;
+}
+
+QSet<BufferId> BufferViewConfig::temporarilyRemovedBuffers() const
+{
+ return _temporarilyRemovedBuffers;
+}
+
+QVariantList BufferViewConfig::initBufferList() const
+{
+ QVariantList buffers;
+
+ foreach (BufferId bufferId, _buffers) {
+ buffers << qVariantFromValue(bufferId);
+ }
+
+ return buffers;
+}
+
+void BufferViewConfig::initSetBufferList(const QVariantList& buffers)
+{
+ _buffers.clear();
+
+ foreach (QVariant buffer, buffers) {
+ _buffers << buffer.value<BufferId>();
+ }
+
+ emit configChanged(); // used to track changes in the settingspage
+}
+
+QVariantList BufferViewConfig::initRemovedBuffers() const
+{
+ QVariantList removedBuffers;
+
+ foreach (BufferId bufferId, _removedBuffers) {
+ removedBuffers << qVariantFromValue(bufferId);
+ }
+
+ return removedBuffers;
+}
+
+void BufferViewConfig::initSetRemovedBuffers(const QVariantList& buffers)
+{
+ _removedBuffers.clear();
+
+ foreach (QVariant buffer, buffers) {
+ _removedBuffers << buffer.value<BufferId>();
+ }
+}
+
+QVariantList BufferViewConfig::initTemporarilyRemovedBuffers() const
+{
+ QVariantList temporarilyRemovedBuffers;
+
+ foreach (BufferId bufferId, _temporarilyRemovedBuffers) {
+ temporarilyRemovedBuffers << qVariantFromValue(bufferId);
+ }
+
+ return temporarilyRemovedBuffers;
+}
+
+void BufferViewConfig::initSetTemporarilyRemovedBuffers(const QVariantList& buffers)
+{
+ _temporarilyRemovedBuffers.clear();
+
+ foreach (QVariant buffer, buffers) {
+ _temporarilyRemovedBuffers << buffer.value<BufferId>();
+ }
+}
+
+void BufferViewConfig::setBufferViewName(const QString& bufferViewName)
+{
+ if (_bufferViewName == bufferViewName)
+ return;
+
+ _bufferViewName = bufferViewName;
+ SYNC(ARG(bufferViewName))
+ emit bufferViewNameSet(bufferViewName);
+}
+
+void BufferViewConfig::setNetworkId(const NetworkId& networkId)
+{
+ if (_networkId == networkId)
+ return;
+
+ _networkId = networkId;
+ SYNC(ARG(networkId))
+ emit networkIdSet(networkId);
+ emit configChanged();
+}
+
+void BufferViewConfig::setAddNewBuffersAutomatically(bool addNewBuffersAutomatically)
+{
+ if (_addNewBuffersAutomatically == addNewBuffersAutomatically)
+ return;
+
+ _addNewBuffersAutomatically = addNewBuffersAutomatically;
+ SYNC(ARG(addNewBuffersAutomatically))
+ emit configChanged();
+}
+
+void BufferViewConfig::setSortAlphabetically(bool sortAlphabetically)
+{
+ if (_sortAlphabetically == sortAlphabetically)
+ return;
+
+ _sortAlphabetically = sortAlphabetically;
+ SYNC(ARG(sortAlphabetically))
+ emit configChanged();
+}
+
+void BufferViewConfig::setDisableDecoration(bool disableDecoration)
+{
+ if (_disableDecoration == disableDecoration)
+ return;
+
+ _disableDecoration = disableDecoration;
+ SYNC(ARG(disableDecoration))
+}
+
+void BufferViewConfig::setAllowedBufferTypes(int bufferTypes)
+{
+ if (_allowedBufferTypes == bufferTypes)
+ return;
+
+ _allowedBufferTypes = bufferTypes;
+ SYNC(ARG(bufferTypes))
+ emit configChanged();
+}
+
+void BufferViewConfig::setMinimumActivity(int activity)
+{
+ if (_minimumActivity == activity)
+ return;