Janitor: fix memory leaks.

This commit is contained in:
Kristian Bendiksen
2024-09-02 11:57:07 +02:00
committed by Magne Sjaastad
parent 1736c01dfa
commit d8eb34c00d
7 changed files with 37 additions and 5 deletions

View File

@@ -54,7 +54,11 @@ class PdmUiTreeEditorHandle : public PdmUiEditorHandle
{
public:
PdmUiTreeEditorHandle() {}
~PdmUiTreeEditorHandle() override {}
~PdmUiTreeEditorHandle() override
{
delete m_widget.data();
m_widget.clear();
}
QWidget* getOrCreateWidget( QWidget* parent );
QWidget* widget() { return m_widget; }

View File

@@ -87,8 +87,10 @@ public:
explicit PdmUiTreeViewWidget( QWidget* parent = nullptr )
: QTreeView( parent )
{
setStyle( new PdmUiTreeViewStyle );
m_style = std::make_shared<PdmUiTreeViewStyle>();
setStyle( m_style.get() );
};
~PdmUiTreeViewWidget() override{};
bool isTreeItemEditWidgetActive() const { return state() == QAbstractItemView::EditingState; }
@@ -96,6 +98,8 @@ public:
protected:
void dragMoveEvent( QDragMoveEvent* event ) override;
void dragLeaveEvent( QDragLeaveEvent* event ) override;
std::shared_ptr<PdmUiTreeViewStyle> m_style;
};
//--------------------------------------------------------------------------------------------------