24 : mSymbol( symbol ? symbol->clone() : nullptr )
27 , mCheckable( checkable )
28 , mOriginalSymbolPointer( symbol )
29 , mScaleMinDenom( scaleMinDenom )
30 , mScaleMaxDenom( scaleMaxDenom )
32 , mParentKey( parentRuleKey )
50 mSymbol.reset( other.mSymbol ? other.mSymbol->clone() : nullptr );
51 mLabel = other.mLabel;
53 mCheckable = other.mCheckable;
54 mDataDefinedSizeLegendSettings.reset( other.mDataDefinedSizeLegendSettings ?
new QgsDataDefinedSizeLegend( *other.mDataDefinedSizeLegendSettings ) : nullptr );
55 mOriginalSymbolPointer = other.mOriginalSymbolPointer;
56 mScaleMinDenom = other.mScaleMinDenom;
57 mScaleMaxDenom = other.mScaleMaxDenom;
58 mLevel = other.mLevel;
59 mParentKey = other.mParentKey;
60 mUserData = other.mUserData;
69 if ( mScaleMinDenom <= 0 && mScaleMaxDenom <= 0 )
71 if ( mScaleMinDenom > 0 && mScaleMinDenom > scale )
73 if ( mScaleMaxDenom > 0 && mScaleMaxDenom < scale )
80 mSymbol.reset( s ? s->
clone() : nullptr );
81 mOriginalSymbolPointer = s;
86 mDataDefinedSizeLegendSettings.reset( settings );
91 return mDataDefinedSizeLegendSettings.get();
96 mUserData.insert( key, value );
101 return mUserData.value( key, QVariant() );
Object that keeps configuration of appearance of marker symbol's data-defined size in legend.
Stores information about one class/rule of a vector layer renderer in a unified way that can be used ...
QgsDataDefinedSizeLegend * dataDefinedSizeLegendSettings() const
Returns extra information for data-defined size legend rendering.
QVariant userData(int key) const
Retrieves the item's user data with the specified key.
void setUserData(int key, QVariant &value)
Adds a key - value pair to the item's user data.
void setDataDefinedSizeLegendSettings(QgsDataDefinedSizeLegend *settings)
Sets extra information about data-defined size.
void setSymbol(QgsSymbol *s)
Sets the symbol of the item.
QgsLegendSymbolItem & operator=(const QgsLegendSymbolItem &other)
bool isScaleOK(double scale) const
Determine whether given scale is within the scale range. Returns true if scale or scale range is inva...
Abstract base class for all rendered symbols.
virtual QgsSymbol * clone() const =0
Returns a deep copy of this symbol.