24#include "moc_qgslayoutchartseriesdetailswidget.cpp"
26using namespace Qt::StringLiterals;
30 , mVectorLayer( layer )
37 mXExpressionWidget->setLayer( mVectorLayer.data() );
38 mYExpressionWidget->setLayer( mVectorLayer.data() );
41 mXExpressionWidget->setExpression( seriesDetails.
xExpression() );
42 mYExpressionWidget->setExpression( seriesDetails.
yExpression() );
47 connect( mFilterLineEdit, &QLineEdit::textChanged,
this, [
this] { emit
widgetChanged(); } );
48 connect( mFilterButton, &QToolButton::clicked,
this, &QgsLayoutChartSeriesDetailsWidget::mFilterButton_clicked );
58 return mXExpressionWidget->asExpression();
63 return mYExpressionWidget->asExpression();
68 return mFilterLineEdit->text();
71void QgsLayoutChartSeriesDetailsWidget::mFilterButton_clicked()
77 QgsExpressionBuilderDialog expressionBuilderDialog( mVectorLayer.data(), mFilterLineEdit->text(),
this, u
"generic"_s, context );
78 expressionBuilderDialog.setWindowTitle( tr(
"Expression Based Filter" ) );
80 if ( expressionBuilderDialog.exec() == QDialog::Accepted )
82 const QString expression = expressionBuilderDialog.expressionText();
83 if ( !expression.isEmpty() )
85 mFilterLineEdit->setText( expression );
A generic dialog for building expression strings.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Chart series details covering all supported series types.
QString yExpression() const
Returns the expression used to generate Y-axis values.
QString filterExpression() const
Returns the filter expression used to generate a series against a subset of the source layer.
QString xExpression() const
Returns the expression used to generate X-axis values.
Represents a vector layer which manages a vector based dataset.