void QgsLayerPropertiesWidget::setMapCanvas( QgsMapCanvas *canvas ) { mMapCanvas = canvas; QgsSymbolLayerV2Widget* w = dynamic_cast< QgsSymbolLayerV2Widget* >( stackedWidget->currentWidget() ); if ( w ) w->setMapCanvas( mMapCanvas ); }
void QgsLayerPropertiesWidget::updateSymbolLayerWidget( QgsSymbolLayerV2* layer ) { if ( stackedWidget->currentWidget() != pageDummy ) { // stop updating from the original widget disconnect( stackedWidget->currentWidget(), SIGNAL( changed() ), this, SLOT( emitSignalChanged() ) ); stackedWidget->removeWidget( stackedWidget->currentWidget() ); } QgsSymbolLayerV2Registry* pReg = QgsSymbolLayerV2Registry::instance(); QString layerType = layer->layerType(); QgsSymbolLayerV2AbstractMetadata* am = pReg->symbolLayerMetadata( layerType ); if ( am ) { QgsSymbolLayerV2Widget* w = am->createSymbolLayerWidget( mVectorLayer ); if ( w ) { w->setSymbolLayer( layer ); stackedWidget->addWidget( w ); stackedWidget->setCurrentWidget( w ); // start recieving updates from widget connect( w , SIGNAL( changed() ), this, SLOT( emitSignalChanged() ) ); return; } } // When anything is not right stackedWidget->setCurrentWidget( pageDummy ); }
void QgsLayerPropertiesWidget::setExpressionContext( QgsExpressionContext *context ) { mPresetExpressionContext = context; QgsSymbolLayerV2Widget* w = dynamic_cast< QgsSymbolLayerV2Widget* >( stackedWidget->currentWidget() ); if ( w ) w->setExpressionContext( mPresetExpressionContext ); }