@@ -32,28 +32,22 @@ QgsLegendSymbolItem::QgsLegendSymbolItem( QgsSymbol *symbol, const QString &labe
32
32
}
33
33
34
34
QgsLegendSymbolItem::QgsLegendSymbolItem ( const QgsLegendSymbolItem &other )
35
-
36
35
{
37
36
*this = other;
38
37
}
39
38
40
- QgsLegendSymbolItem::~QgsLegendSymbolItem ()
41
- {
42
- delete mSymbol ;
43
- delete mDataDefinedSizeLegendSettings ;
44
- }
39
+ QgsLegendSymbolItem::~QgsLegendSymbolItem () = default ;
45
40
46
41
QgsLegendSymbolItem &QgsLegendSymbolItem::operator =( const QgsLegendSymbolItem &other )
47
42
{
48
43
if ( this == &other )
49
44
return *this ;
50
45
51
- setSymbol ( other.mSymbol );
46
+ mSymbol . reset ( other.mSymbol ? other. mSymbol -> clone () : nullptr );
52
47
mLabel = other.mLabel ;
53
48
mKey = other.mKey ;
54
49
mCheckable = other.mCheckable ;
55
- delete mDataDefinedSizeLegendSettings ;
56
- mDataDefinedSizeLegendSettings = other.mDataDefinedSizeLegendSettings ? new QgsDataDefinedSizeLegend ( *other.mDataDefinedSizeLegendSettings ) : nullptr ;
50
+ mDataDefinedSizeLegendSettings .reset ( other.mDataDefinedSizeLegendSettings ? new QgsDataDefinedSizeLegend ( *other.mDataDefinedSizeLegendSettings ) : nullptr );
57
51
mOriginalSymbolPointer = other.mOriginalSymbolPointer ;
58
52
mScaleMinDenom = other.mScaleMinDenom ;
59
53
mScaleMaxDenom = other.mScaleMaxDenom ;
@@ -78,18 +72,16 @@ bool QgsLegendSymbolItem::isScaleOK( double scale ) const
78
72
79
73
void QgsLegendSymbolItem::setSymbol ( QgsSymbol *s )
80
74
{
81
- delete mSymbol ;
82
- mSymbol = s ? s->clone () : nullptr ;
75
+ mSymbol .reset ( s );
83
76
mOriginalSymbolPointer = s;
84
77
}
85
78
86
79
void QgsLegendSymbolItem::setDataDefinedSizeLegendSettings ( QgsDataDefinedSizeLegend *settings )
87
80
{
88
- delete mDataDefinedSizeLegendSettings ;
89
- mDataDefinedSizeLegendSettings = settings;
81
+ mDataDefinedSizeLegendSettings .reset ( settings );
90
82
}
91
83
92
84
QgsDataDefinedSizeLegend *QgsLegendSymbolItem::dataDefinedSizeLegendSettings () const
93
85
{
94
- return mDataDefinedSizeLegendSettings ;
86
+ return mDataDefinedSizeLegendSettings . get () ;
95
87
}
0 commit comments