33    QGridLayout *layout = 
new QGridLayout( 
this );
 
   34    QLabel *label = 
new QLabel( tr( 
"The 2.5D renderer only can be used with polygon layers. \n" 
   35                                    "'%1' is not a polygon layer and cannot be rendered in 2.5D." )
 
   36                                .arg( layer->
name() ), 
this );
 
   37    layout->addWidget( label );
 
   42  this->layout()->setContentsMargins( 0, 0, 0, 0 );
 
   44  mAngleWidget->setClearValue( 0 );
 
   45  mWallColorButton->setColorDialogTitle( tr( 
"Select Wall Color" ) );
 
   46  mWallColorButton->setAllowOpacity( 
true );
 
   47  mWallColorButton->setContext( QStringLiteral( 
"symbology" ) );
 
   48  mRoofColorButton->setColorDialogTitle( tr( 
"Select Roof Color" ) );
 
   49  mRoofColorButton->setAllowOpacity( 
true );
 
   50  mRoofColorButton->setContext( QStringLiteral( 
"symbology" ) );
 
   51  mShadowColorButton->setColorDialogTitle( tr( 
"Select Shadow Color" ) );
 
   52  mShadowColorButton->setAllowOpacity( 
true );
 
   53  mShadowColorButton->setContext( QStringLiteral( 
"symbology" ) );
 
   60  mHeightWidget->setLayer( layer );
 
   63  const QVariant height = scope->
variable( QStringLiteral( 
"qgis_25d_height" ) );
 
   64  const QVariant angle = scope->
variable( QStringLiteral( 
"qgis_25d_angle" ) );
 
   69  mAngleWidget->setClearValue( 70 );
 
   70  mWallColorButton->setColor( mRenderer->wallColor() );
 
   71  mRoofColorButton->setColor( mRenderer->roofColor() );
 
   72  mShadowColorButton->setColor( mRenderer->shadowColor() );
 
   73  mShadowEnabledWidget->setChecked( mRenderer->shadowEnabled() );
 
   74  mShadowSizeWidget->setValue( mRenderer->shadowSpread() );
 
   75  mShadowSizeWidget->setClearValue( 4 );
 
   76  mWallExpositionShading->setChecked( mRenderer->wallShadingEnabled() );
 
   78  connect( mAngleWidget, 
static_cast < void ( QSpinBox::* )( 
int ) 
> ( &QSpinBox::valueChanged ), 
this, &Qgs25DRendererWidget::updateRenderer );
 
   83  connect( mShadowEnabledWidget, &QGroupBox::toggled, 
this, &Qgs25DRendererWidget::updateRenderer );
 
   84  connect( mShadowSizeWidget, 
static_cast < void ( QDoubleSpinBox::* )( 
double ) 
> ( &QDoubleSpinBox::valueChanged ), 
this, &Qgs25DRendererWidget::updateRenderer );
 
   85  connect( mWallExpositionShading, &QAbstractButton::toggled, 
this, &Qgs25DRendererWidget::updateRenderer );
 
 
Single scope for storing variables and functions for use within a QgsExpressionContext.
 
QVariant variable(const QString &name) const
Retrieves a variable's value from the scope.
 
static void setLayerVariable(QgsMapLayer *layer, const QString &name, const QVariant &value)
Sets a layer context variable.
 
static QgsExpressionContextScope * layerScope(const QgsMapLayer *layer)
Creates a new scope which contains variables and functions relating to a QgsMapLayer.