Skip to content

Commit a753f8b

Browse files
authored
[expression builder] clear fields values when changing field (#8703)
1 parent 0f037da commit a753f8b

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/gui/qgsexpressionbuilderwidget.cpp

+11-5
Original file line numberDiff line numberDiff line change
@@ -235,13 +235,19 @@ void QgsExpressionBuilderWidget::currentChanged( const QModelIndex &index, const
235235
if ( !item )
236236
return;
237237

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

0 commit comments

Comments
 (0)