From c5f99e7df43e9c9015fe4ed1d6a965f137a1b87f Mon Sep 17 00:00:00 2001 From: Alfredo Monclus Date: Thu, 6 Feb 2025 13:59:31 -0300 Subject: [PATCH] refactor: implement unique_ptr on actiongroup --- src/Gui/QSint/actionpanel/actiongroup.cpp | 25 +++++++++-------------- src/Gui/QSint/actionpanel/actiongroup.h | 6 +++--- 2 files changed, 13 insertions(+), 18 deletions(-) diff --git a/src/Gui/QSint/actionpanel/actiongroup.cpp b/src/Gui/QSint/actionpanel/actiongroup.cpp index f87fca446a..a35d5a3b8d 100644 --- a/src/Gui/QSint/actionpanel/actiongroup.cpp +++ b/src/Gui/QSint/actionpanel/actiongroup.cpp @@ -17,7 +17,7 @@ namespace QSint ActionGroup::ActionGroup(QWidget *parent) : QWidget(parent), - myHeader(new TaskHeader(QPixmap(), "", false, this)) + myHeader(std::make_unique(QPixmap(), "", false, this)) { myHeader->setVisible(false); init(false); @@ -25,24 +25,19 @@ ActionGroup::ActionGroup(QWidget *parent) ActionGroup::ActionGroup(const QString &title, bool expandable, QWidget *parent) : QWidget(parent), - myHeader(new TaskHeader(QPixmap(), title, expandable, this)) + myHeader(std::make_unique(QPixmap(), title, expandable, this)) { init(true); } ActionGroup::ActionGroup(const QPixmap &icon, const QString &title, bool expandable, QWidget *parent) : QWidget(parent), - myHeader(new TaskHeader(icon, title, expandable, this)) + myHeader(std::make_unique(icon, title, expandable, this)) { init(true); } -ActionGroup::~ActionGroup() -{ - delete myHeader; - delete myGroup; - delete myDummy; -} +ActionGroup::~ActionGroup() = default; void ActionGroup::init(bool hasHeader) { @@ -53,16 +48,16 @@ void ActionGroup::init(bool hasHeader) layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); - layout->addWidget(myHeader); + layout->addWidget(myHeader.get()); - myGroup = new TaskGroup(this, hasHeader); - layout->addWidget(myGroup); + myGroup = std::make_unique(this, hasHeader); + layout->addWidget(myGroup.get()); - myDummy = new QWidget(this); - layout->addWidget(myDummy); + myDummy = std::make_unique(this); + layout->addWidget(myDummy.get()); myDummy->hide(); - connect(myHeader, &TaskHeader::activated, this, &ActionGroup::showHide); + connect(myHeader.get(), &TaskHeader::activated, this, &ActionGroup::showHide); } void ActionGroup::setScheme(ActionPanelScheme *scheme) diff --git a/src/Gui/QSint/actionpanel/actiongroup.h b/src/Gui/QSint/actionpanel/actiongroup.h index c9aab1bba3..5ab5281709 100644 --- a/src/Gui/QSint/actionpanel/actiongroup.h +++ b/src/Gui/QSint/actionpanel/actiongroup.h @@ -136,9 +136,9 @@ protected: QPixmap m_foldPixmap; - TaskHeader *myHeader = nullptr; - TaskGroup *myGroup = nullptr; - QWidget *myDummy = nullptr; + std::unique_ptr myHeader; + std::unique_ptr myGroup; + std::unique_ptr myDummy; ActionPanelScheme *myScheme = nullptr; };