void QgsPointDisplacementRendererWidget::updateRendererFromWidget() { QgsRendererWidget* w = qobject_cast<QgsRendererWidget*>( sender() ); if ( !w ) return; mRenderer->setEmbeddedRenderer( w->renderer()->clone() ); emit widgetChanged(); }
void QgsPointDisplacementRendererWidget::on_mRendererComboBox_currentIndexChanged( int index ) { QString rendererId = mRendererComboBox->itemData( index ).toString(); QgsRendererAbstractMetadata* m = QgsRendererRegistry::instance()->rendererMetadata( rendererId ); if ( m ) { // unfortunately renderer conversion is only available through the creation of a widget... QgsRendererWidget* tempRenderWidget = m->createRendererWidget( mLayer, mStyle, mRenderer->embeddedRenderer()->clone() ); mRenderer->setEmbeddedRenderer( tempRenderWidget->renderer()->clone() ); delete tempRenderWidget; emit widgetChanged(); } }