From b7b41f7cc373638e45e7928cc7b8342e0343ec6d Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 23 Mar 2021 16:10:56 +0100 Subject: [PATCH] Utils: Fix SelectionAspect with radio button display Register subwidgets to make non-autoapply work. Also delete the parent-less button group on destruction. Change-Id: If6fb306a812c8aa950535dd138a2020145d80c34 Reviewed-by: David Schulz --- src/libs/utils/aspects.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp index e535e8467f8..e5b127f449b 100644 --- a/src/libs/utils/aspects.cpp +++ b/src/libs/utils/aspects.cpp @@ -610,6 +610,8 @@ public: class SelectionAspectPrivate { public: + ~SelectionAspectPrivate() { delete m_buttonGroup; } + SelectionAspect::DisplayStyle m_displayStyle = SelectionAspect::DisplayStyle::RadioButtons; struct Option { QString displayName; QString tooltip; }; @@ -1385,7 +1387,7 @@ void SelectionAspect::addToLayout(LayoutBuilder &builder) d->m_buttonGroup->setExclusive(true); for (int i = 0, n = d->m_options.size(); i < n; ++i) { const Internal::SelectionAspectPrivate::Option &option = d->m_options.at(i); - auto button = new QRadioButton(option.displayName); + auto button = createSubWidget(option.displayName); button->setChecked(i == value()); button->setToolTip(option.tooltip); builder.addItems({{}, button});