From 68f7d57d3afa4111b85e00eeadbfd68f1b668f9d Mon Sep 17 00:00:00 2001 From: Marco Hugentobler Date: Tue, 1 Nov 2011 15:26:36 +0100 Subject: [PATCH] Improve vector field widget --- src/core/symbology-ng/qgsvectorfieldsymbollayer.cpp | 2 ++ .../symbology-ng/qgsvectorfieldsymbollayerwidget.cpp | 11 +++++++++++ src/ui/symbollayer/widget_vectorfield.ui | 2 +- 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/core/symbology-ng/qgsvectorfieldsymbollayer.cpp b/src/core/symbology-ng/qgsvectorfieldsymbollayer.cpp index 4f09a62f070d..9959d21210a6 100644 --- a/src/core/symbology-ng/qgsvectorfieldsymbollayer.cpp +++ b/src/core/symbology-ng/qgsvectorfieldsymbollayer.cpp @@ -109,9 +109,11 @@ void QgsVectorFieldSymbolLayer::renderPoint( const QPointF& point, QgsSymbolV2Re convertPolarToCartesian( xVal, yVal, xComponent, yComponent ); xComponent = context.outputLineWidth( xComponent ); yComponent = context.outputLineWidth( yComponent ); + break; case Height: xComponent = 0; yComponent = context.outputLineWidth( yVal ); + break; default: break; } diff --git a/src/gui/symbology-ng/qgsvectorfieldsymbollayerwidget.cpp b/src/gui/symbology-ng/qgsvectorfieldsymbollayerwidget.cpp index a4f9801ea182..07bfe90609f9 100644 --- a/src/gui/symbology-ng/qgsvectorfieldsymbollayerwidget.cpp +++ b/src/gui/symbology-ng/qgsvectorfieldsymbollayerwidget.cpp @@ -140,6 +140,10 @@ void QgsVectorFieldSymbolLayerWidget::on_mCartesianRadioButton_toggled( bool che if ( mLayer && checked ) { mLayer->setVectorFieldType( QgsVectorFieldSymbolLayer::Cartesian ); + mXAttributeComboBox->setEnabled( true ); + mYAttributeComboBox->setEnabled( true ); + mXAttributeLabel->setText( tr( "X attribute" ) ); + mYAttributeLabel->setText( tr( "Y attribute" ) ); emit changed(); } } @@ -149,6 +153,10 @@ void QgsVectorFieldSymbolLayerWidget::on_mPolarRadioButton_toggled( bool checked if ( mLayer && checked ) { mLayer->setVectorFieldType( QgsVectorFieldSymbolLayer::Polar ); + mXAttributeComboBox->setEnabled( true ); + mYAttributeComboBox->setEnabled( true ); + mXAttributeLabel->setText( tr( "Length attribute" ) ); + mYAttributeLabel->setText( tr( "Angle attribute" ) ); emit changed(); } } @@ -158,6 +166,9 @@ void QgsVectorFieldSymbolLayerWidget::on_mHeightRadioButton_toggled( bool checke if ( mLayer && checked ) { mLayer->setVectorFieldType( QgsVectorFieldSymbolLayer::Height ); + mXAttributeLabel->setText( "" ); + mXAttributeComboBox->setEnabled( false ); + mYAttributeLabel->setText( tr( "Height attribute" ) ); emit changed(); } } diff --git a/src/ui/symbollayer/widget_vectorfield.ui b/src/ui/symbollayer/widget_vectorfield.ui index 643f8e0517fa..96b718d07fb5 100644 --- a/src/ui/symbollayer/widget_vectorfield.ui +++ b/src/ui/symbollayer/widget_vectorfield.ui @@ -27,7 +27,7 @@ - Y Attribute + Y attribute