diff options
author | hjk <hjk@qt.io> | 2020-10-05 18:23:17 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2020-10-06 08:14:38 +0000 |
commit | 2ecb7ceb061022f6b1511759ae130140f808fad6 (patch) | |
tree | e73c7732bee27fa2bfd0d3fb21817e0af57a3542 /src/libs | |
parent | 3c281aa48394ed7c74ff076fffce99876637c2b8 (diff) |
Utils: Do not emit SelectionAspect::changed if nothing changed
Change-Id: Iac2e19d1a093f650ecde6fa9cfdec4714a8e9db4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/libs')
-rw-r--r-- | src/libs/utils/aspects.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp index 91d62135b0..0f4ae1e445 100644 --- a/src/libs/utils/aspects.cpp +++ b/src/libs/utils/aspects.cpp @@ -846,8 +846,10 @@ void SelectionAspect::addToLayout(LayoutBuilder &builder) d->m_buttons.append(button); d->m_buttonGroup->addButton(button); connect(button, &QAbstractButton::clicked, this, [this, i] { - d->m_value = i; - emit changed(); + if (d->m_value != i) { + d->m_value = i; + emit changed(); + } }); } break; @@ -859,7 +861,12 @@ void SelectionAspect::addToLayout(LayoutBuilder &builder) for (int i = 0, n = d->m_options.size(); i < n; ++i) d->m_comboBox->addItem(d->m_options.at(i).displayName); connect(d->m_comboBox.data(), QOverload<int>::of(&QComboBox::activated), this, - [this](int index) { d->m_value = index; emit changed(); }); + [this](int index) { + if (d->m_value != index) { + d->m_value = index; + emit changed(); + } + }); d->m_comboBox->setCurrentIndex(d->m_value); builder.addItems({d->m_label.data(), d->m_comboBox.data()}); break; |