diff --git a/src/app/qgslabelinggui.cpp b/src/app/qgslabelinggui.cpp index 73d92b75e298..74b2b7a954df 100644 --- a/src/app/qgslabelinggui.cpp +++ b/src/app/qgslabelinggui.cpp @@ -34,7 +34,6 @@ #include #include - QgsLabelingGui::QgsLabelingGui( QgsPalLabeling* lbl, QgsVectorLayer* layer, QgsMapCanvas* mapCanvas, QWidget* parent ) : QDialog( parent ), mLBL( lbl ), mLayer( layer ), mMapCanvas( mapCanvas ) { @@ -470,6 +469,9 @@ void QgsLabelingGui::showExpressionDialog() connect(buttonBox,SIGNAL( accepted() ),dlg,SLOT( accept() ) ); connect(buttonBox,SIGNAL( rejected() ),dlg,SLOT( reject() ) ); + // Set the current expression using the selected text in the combo box. + builder->setExpressionString(this->cboFieldName->currentText()); + if ( dlg->exec() == QDialog::Accepted ) { QString expression = builder->getExpressionString(); diff --git a/src/gui/qgsexpressionbuilder.cpp b/src/gui/qgsexpressionbuilder.cpp index a3096eae7a42..b116cc8dfc3e 100644 --- a/src/gui/qgsexpressionbuilder.cpp +++ b/src/gui/qgsexpressionbuilder.cpp @@ -32,3 +32,9 @@ QString QgsExpressionBuilder::getExpressionString() { return this->txtExpressionString->toPlainText(); } + +void QgsExpressionBuilder::setExpressionString(const QString expressionString) +{ + this->txtExpressionString->setPlainText(expressionString); +} + diff --git a/src/gui/qgsexpressionbuilder.h b/src/gui/qgsexpressionbuilder.h index 901311d9efa6..4cb7d115d3ef 100644 --- a/src/gui/qgsexpressionbuilder.h +++ b/src/gui/qgsexpressionbuilder.h @@ -26,6 +26,7 @@ class QgsExpressionBuilder : public QWidget, private Ui::QgsExpressionBuilder { ~QgsExpressionBuilder(); QString getExpressionString(); + void setExpressionString(const QString expressionString); }; #endif // QGSEXPRESSIONBUILDER_H