QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
src
gui
qgsexpressionpreviewwidget.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsexpressionpreviewwidget.h
3
--------------------------------------
4
Date : march 2020 - quarantine day 12
5
Copyright : (C) 2020 by Denis Rouzaud
6
Email :
[email protected]
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 QGSEXPRESSIONPREVIEWWIDGET_H
17
#define QGSEXPRESSIONPREVIEWWIDGET_H
18
19
#include <QWidget>
20
21
#include "ui_qgsexpressionpreviewbase.h"
22
23
#include "qgis_gui.h"
24
#include "
qgsdistancearea.h
"
25
26
27
class
QgsVectorLayer
;
28
35
class
GUI_EXPORT
QgsExpressionPreviewWidget
:
public
QWidget,
private
Ui::QgsExpressionPreviewWidgetBase
36
{
37
Q_OBJECT
38
public
:
40
explicit
QgsExpressionPreviewWidget
( QWidget *parent =
nullptr
);
41
43
void
setLayer(
QgsVectorLayer
*layer );
44
46
void
setExpressionText(
const
QString &expression );
47
53
QgsExpressionContext
expressionContext
()
const
{
return
mExpressionContext; }
54
60
void
setExpressionContext(
const
QgsExpressionContext
&context );
61
63
void
setGeomCalculator(
const
QgsDistanceArea
&da );
64
69
bool
evalError()
const
;
70
75
bool
parserError()
const
;
76
78
const
QgsExpressionNode
*
rootNode
()
const
{
return
mExpression.rootNode();}
79
81
QList<QgsExpression::ParserError>
parserErrors
()
const
{
return
mExpression.parserErrors();}
82
83
signals:
84
91
void
expressionParsed
(
bool
isValid );
92
97
void
evalErrorChanged
();
98
103
void
parserErrorChanged
();
104
106
void
toolTipChanged
(
const
QString &toolTip );
107
108
public
slots:
110
void
setCurrentFeature(
const
QgsFeature
&feature );
111
112
113
private
slots:
114
void
linkActivated(
const
QString & );
115
void
setEvalError(
bool
evalError );
116
void
setParserError(
bool
parserError );
117
118
119
private
:
120
void
setExpressionToolTip(
const
QString &toolTip );
121
void
refreshPreview();
122
123
QgsVectorLayer
*mLayer =
nullptr
;
124
QgsExpressionContext
mExpressionContext;
125
QgsDistanceArea
mDa;
126
bool
mUseGeomCalculator =
false
;
127
QString mToolTip;
128
bool
mEvalError =
true
;
129
bool
mParserError =
true
;
130
QString mExpressionText;
131
QgsExpression
mExpression;
132
};
133
134
#endif // QGSEXPRESSIONPREVIEWWIDGET_H
QgsExpressionContext
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Definition:
qgsexpressioncontext.h:370
QgsExpressionPreviewWidget::parserErrors
QList< QgsExpression::ParserError > parserErrors() const
Returns the expression parser erros.
Definition:
qgsexpressionpreviewwidget.h:81
QgsExpressionPreviewWidget::expressionParsed
void expressionParsed(bool isValid)
Emitted when the user changes the expression in the widget.
QgsExpressionPreviewWidget::evalErrorChanged
void evalErrorChanged()
Will be set to true if the current expression text reported an eval error with the context.
QgsExpressionPreviewWidget
QgsExpressionPreviewWidget is a widget to preview an expression result.
Definition:
qgsexpressionpreviewwidget.h:36
QgsExpressionPreviewWidget::toolTipChanged
void toolTipChanged(const QString &toolTip)
Emitted whenever the tool tip changed.
QgsExpressionNode
Abstract base class for all nodes that can appear in an expression.
Definition:
qgsexpressionnode.h:35
QgsVectorLayer
Represents a vector layer which manages a vector based data sets.
Definition:
qgsvectorlayer.h:387
QgsExpressionPreviewWidget::rootNode
const QgsExpressionNode * rootNode() const
Returns the root node of the expression.
Definition:
qgsexpressionpreviewwidget.h:78
QgsDistanceArea
A general purpose distance and area calculator, capable of performing ellipsoid based calculations.
Definition:
qgsdistancearea.h:50
qgsdistancearea.h
QgsFeature
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
Definition:
qgsfeature.h:56
QgsExpressionPreviewWidget::expressionContext
QgsExpressionContext expressionContext() const
Returns the expression context for the widget.
Definition:
qgsexpressionpreviewwidget.h:53
QgsExpression
Class for parsing and evaluation of expressions (formerly called "search strings").
Definition:
qgsexpression.h:105
QgsExpressionPreviewWidget::parserErrorChanged
void parserErrorChanged()
Will be set to true if the current expression text reported a parser error with the context.
Generated on Sat Oct 24 2020 17:43:09 for QGIS API Documentation by
1.8.20