Skip to content

Commit 565d999

Browse files
committed
[expression builder] clear fields values when changing field (#8703)
1 parent 498d51e commit 565d999

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/gui/qgsexpressionbuilderwidget.cpp

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -234,13 +234,19 @@ void QgsExpressionBuilderWidget::currentChanged( const QModelIndex &index, const
234234
if ( !item )
235235
return;
236236

237-
if ( item->getItemType() == QgsExpressionItem::Field && mFieldValues.contains( item->text() ) )
237+
bool isField = mLayer && item->getItemType() == QgsExpressionItem::Field;
238+
if ( isField )
238239
{
239-
const QStringList &values = mFieldValues[item->text()];
240-
mValuesModel->setStringList( values );
240+
if ( mFieldValues.contains( item->text() ) )
241+
{
242+
const QStringList &values = mFieldValues[item->text()];
243+
mValuesModel->setStringList( values );
244+
}
245+
else
246+
{
247+
mValuesModel->setStringList( QStringList() );
248+
}
241249
}
242-
243-
bool isField = mLayer && item->getItemType() == QgsExpressionItem::Field;
244250
mValueGroupBox->setVisible( isField );
245251
mShowHelpButton->setText( isField ? tr( "Show Values" ) : tr( "Show Help" ) );
246252

0 commit comments

Comments
 (0)