QgsSingleSymbolRenderer *QgsSingleSymbolRenderer::clone() const { QgsSingleSymbolRenderer *r = new QgsSingleSymbolRenderer( mSymbol->clone() ); r->setUsingSymbolLevels( usingSymbolLevels() ); r->setDataDefinedSizeLegend( mDataDefinedSizeLegend ? new QgsDataDefinedSizeLegend( *mDataDefinedSizeLegend ) : nullptr ); copyRendererData( r ); return r; }
void QgsDataDefinedSizeLegendWidget::updatePreview() { QgsMarkerSymbol *symbol = mSourceSymbol->clone(); symbol->setDataDefinedSize( mSizeProperty ); QgsSingleSymbolRenderer *r = new QgsSingleSymbolRenderer( symbol ); r->setDataDefinedSizeLegend( dataDefinedSizeLegend() ); mPreviewLayer->setRenderer( r ); mPreviewModel->refreshLayerLegend( mPreviewLayerNode ); viewLayerTree->expandAll(); }