QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsexpressionbuilderdialog.h
Go to the documentation of this file.
1/***************************************************************************
2 qgisexpressionbuilderdialog.h - A generic expression builder dialog.
3 --------------------------------------
4 Date : 29-May-2011
5 Copyright : (C) 2011 by Nathan Woodrow
6 Email : woodrow.nathan at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSEXPRESSIONBUILDERDIALOG_H
17#define QGSEXPRESSIONBUILDERDIALOG_H
18
19#include <QDialog>
20#include "ui_qgsexpressionbuilderdialogbase.h"
21#include "qgshelp.h"
22#include "qgis_gui.h"
23
24
30class GUI_EXPORT QgsExpressionBuilderDialog : public QDialog, private Ui::QgsExpressionBuilderDialogBase
31{
32 Q_OBJECT
33
34 Q_PROPERTY( bool allowEvalErrors READ allowEvalErrors WRITE setAllowEvalErrors NOTIFY allowEvalErrorsChanged )
35
36 public:
38 const QString &startText = QString(),
39 QWidget *parent SIP_TRANSFERTHIS = nullptr,
40 const QString &key = "generic",
41 const QgsExpressionContext &context = QgsExpressionContext() );
42
44 QgsExpressionBuilderWidget *expressionBuilder();
45
46 void setExpressionText( const QString &text );
47
48 QString expressionText();
49
56 QString expectedOutputFormat();
57
63 void setExpectedOutputFormat( const QString &expected );
64
70 QgsExpressionContext expressionContext() const;
71
78 void setExpressionContext( const QgsExpressionContext &context );
79
81 void setGeomCalculator( const QgsDistanceArea &da );
82
88 bool allowEvalErrors() const;
89
95 void setAllowEvalErrors( bool allowEvalErrors );
96
97 signals:
98
105
106 protected:
107
114 void done( int r ) override;
115
116 void accept() override;
117 void reject() override;
118
119 private:
120 const QString mInitialText;
121 QString mRecentKey;
122 bool mAllowEvalErrors = false;
123
124 private slots:
125 void showHelp();
126 void syncOkButtonEnabledState();
127
128};
129
130// clazy:excludeall=qstring-allocations
131
132#endif
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
A generic dialog for building expression strings.
void allowEvalErrorsChanged()
Allow accepting expressions with evaluation errors.
A reusable widget that can be used to build a expression string.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Represents a vector layer which manages a vector based data sets.
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53