Skip to content

Commit efad2f6

Browse files
committed
Don't leak memory in qgsnodeeditor delegates
1 parent 2b3fbc7 commit efad2f6

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

src/app/nodetool/qgsnodeeditor.cpp

+11-5
Original file line numberDiff line numberDiff line change
@@ -297,11 +297,11 @@ QgsNodeEditor::QgsNodeEditor(
297297

298298
mTableView->setSelectionMode( QTableWidget::ExtendedSelection );
299299
mTableView->setSelectionBehavior( QTableWidget::SelectRows );
300-
mTableView->setItemDelegateForColumn( 0, new CoordinateItemDelegate() );
301-
mTableView->setItemDelegateForColumn( 1, new CoordinateItemDelegate() );
302-
mTableView->setItemDelegateForColumn( 2, new CoordinateItemDelegate() );
303-
mTableView->setItemDelegateForColumn( 3, new CoordinateItemDelegate() );
304-
mTableView->setItemDelegateForColumn( 4, new CoordinateItemDelegate() );
300+
mTableView->setItemDelegateForColumn( 0, new CoordinateItemDelegate( this ) );
301+
mTableView->setItemDelegateForColumn( 1, new CoordinateItemDelegate( this ) );
302+
mTableView->setItemDelegateForColumn( 2, new CoordinateItemDelegate( this ) );
303+
mTableView->setItemDelegateForColumn( 3, new CoordinateItemDelegate( this ) );
304+
mTableView->setItemDelegateForColumn( 4, new CoordinateItemDelegate( this ) );
305305

306306
setWidget( mTableView );
307307

@@ -396,6 +396,12 @@ void QgsNodeEditor::keyPressEvent( QKeyEvent *e )
396396
// CoordinateItemDelegate
397397
//
398398

399+
CoordinateItemDelegate::CoordinateItemDelegate( QObject *parent )
400+
: QStyledItemDelegate( parent )
401+
{
402+
403+
}
404+
399405
QString CoordinateItemDelegate::displayText( const QVariant &value, const QLocale &locale ) const
400406
{
401407
return locale.toString( value.toDouble(), 'f', 4 );

src/app/nodetool/qgsnodeeditor.h

+3
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,9 @@ class CoordinateItemDelegate : public QStyledItemDelegate
107107
Q_OBJECT
108108

109109
public:
110+
111+
explicit CoordinateItemDelegate( QObject *parent = nullptr );
112+
110113
QString displayText( const QVariant &value, const QLocale &locale ) const override;
111114

112115
protected:

0 commit comments

Comments
 (0)