diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp index e5b127f449b..34143fb1f17 100644 --- a/src/libs/utils/aspects.cpp +++ b/src/libs/utils/aspects.cpp @@ -429,7 +429,8 @@ void BaseAspect::cancel() void BaseAspect::finish() { - // FIXME: Delete widgets? + qDeleteAll(d->m_subWidgets); + d->m_subWidgets.clear(); } bool BaseAspect::hasAction() const @@ -1448,6 +1449,12 @@ void SelectionAspect::setVolatileValue(const QVariant &val) } } +void SelectionAspect::finish() +{ + BaseAspect::finish(); + delete d->m_buttonGroup; +} + void SelectionAspect::setDisplayStyle(SelectionAspect::DisplayStyle style) { d->m_displayStyle = style; diff --git a/src/libs/utils/aspects.h b/src/libs/utils/aspects.h index f2c7d7d9c17..b54d46e0ce7 100644 --- a/src/libs/utils/aspects.h +++ b/src/libs/utils/aspects.h @@ -245,6 +245,7 @@ public: void addToLayout(LayoutBuilder &builder) override; QVariant volatileValue() const override; void setVolatileValue(const QVariant &val) override; + void finish() override; int value() const; void setValue(int val);