QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
core
qgsexpressionfieldbuffer.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsexpressionfieldbuffer.h
3
---------------------------
4
begin : May 27, 2014
5
copyright : (C) 2014 by Matthias Kuhn
6
email : matthias at opengis dot ch
7
***************************************************************************/
8
9
/***************************************************************************
10
* *
11
* This program is free software; you can redistribute it and/or modify *
12
* it under the terms of the GNU General Public License as published by *
13
* the Free Software Foundation; either version 2 of the License, or *
14
* (at your option) any later version. *
15
* *
16
***************************************************************************/
17
18
#ifndef QGSEXPRESSIONFIELDBUFFER_H
19
#define QGSEXPRESSIONFIELDBUFFER_H
20
21
#include "qgis_core.h"
22
#include "
qgsexpression.h
"
23
#include "
qgsfields.h
"
24
25
#include <QDomNode>
26
#include <QList>
27
#include <QString>
28
34
class
CORE_EXPORT
QgsExpressionFieldBuffer
35
{
36
public
:
37
struct
ExpressionField
38
{
39
ExpressionField
(
const
QString &exp,
const
QgsField
&fld )
40
:
cachedExpression
( exp )
41
,
field
( fld )
42
{}
43
44
QgsExpression
cachedExpression
;
45
QgsField
field
;
46
};
47
48
QgsExpressionFieldBuffer
() =
default
;
49
56
void
addExpression
(
const
QString &exp,
const
QgsField
&fld );
57
63
void
removeExpression
(
int
index );
64
72
void
renameExpression
(
int
index,
const
QString &name );
73
81
void
updateExpression
(
int
index,
const
QString &exp );
82
86
void
writeXml
( QDomNode &layer_node, QDomDocument &document )
const
;
87
91
void
readXml
(
const
QDomNode &layer_node );
92
98
void
updateFields
(
QgsFields
&flds )
const
;
99
100
QList<QgsExpressionFieldBuffer::ExpressionField>
expressions
()
const
{
return
mExpressions; }
101
102
private
:
103
QList<ExpressionField> mExpressions;
104
};
105
106
#endif
// QGSEXPRESSIONFIELDBUFFER_H
QgsExpressionFieldBuffer::removeExpression
void removeExpression(int index)
Remove an expression from the buffer.
Definition
qgsexpressionfieldbuffer.cpp:31
QgsExpressionFieldBuffer::writeXml
void writeXml(QDomNode &layer_node, QDomDocument &document) const
Saves expressions to xml under the layer node.
Definition
qgsexpressionfieldbuffer.cpp:46
QgsExpressionFieldBuffer::readXml
void readXml(const QDomNode &layer_node)
Reads expressions from project file.
Definition
qgsexpressionfieldbuffer.cpp:69
QgsExpressionFieldBuffer::updateFields
void updateFields(QgsFields &flds) const
Adds fields with the expressions buffered in this object to a QgsFields object.
Definition
qgsexpressionfieldbuffer.cpp:96
QgsExpressionFieldBuffer::addExpression
void addExpression(const QString &exp, const QgsField &fld)
Add an expression to the buffer.
Definition
qgsexpressionfieldbuffer.cpp:26
QgsExpressionFieldBuffer::expressions
QList< QgsExpressionFieldBuffer::ExpressionField > expressions() const
Definition
qgsexpressionfieldbuffer.h:100
QgsExpressionFieldBuffer::updateExpression
void updateExpression(int index, const QString &exp)
Changes the expression at a given index.
Definition
qgsexpressionfieldbuffer.cpp:41
QgsExpressionFieldBuffer::renameExpression
void renameExpression(int index, const QString &name)
Renames an expression field at a given index.
Definition
qgsexpressionfieldbuffer.cpp:36
QgsExpressionFieldBuffer::QgsExpressionFieldBuffer
QgsExpressionFieldBuffer()=default
QgsExpression
Handles parsing and evaluation of expressions (formerly called "search strings").
Definition
qgsexpression.h:197
QgsField
Encapsulate a field in an attribute table or data source.
Definition
qgsfield.h:56
QgsFields
Container of fields for a vector layer.
Definition
qgsfields.h:45
qgsexpression.h
qgsfields.h
QgsExpressionFieldBuffer::ExpressionField::cachedExpression
QgsExpression cachedExpression
Definition
qgsexpressionfieldbuffer.h:44
QgsExpressionFieldBuffer::ExpressionField::field
QgsField field
Definition
qgsexpressionfieldbuffer.h:45
QgsExpressionFieldBuffer::ExpressionField::ExpressionField
ExpressionField(const QString &exp, const QgsField &fld)
Definition
qgsexpressionfieldbuffer.h:39
Generated on
for QGIS API Documentation by
1.17.0