24#include "moc_qgsstoredexpressionmanager.cpp"
42 mStoredExpressions.removeAt( i );
58 newStoredExpression.
name = name;
60 newStoredExpression.
tag = tag;
61 mStoredExpressions.replace( i, newStoredExpression );
114 mStoredExpressions.clear();
119 QDomElement aStoredExpressions = layerNode.ownerDocument().createElement( QStringLiteral(
"storedexpressions" ) );
123 QDomElement aStoredExpression = layerNode.ownerDocument().createElement( QStringLiteral(
"storedexpression" ) );
124 aStoredExpression.setAttribute( QStringLiteral(
"name" ),
storedExpression.name );
125 aStoredExpression.setAttribute( QStringLiteral(
"expression" ),
storedExpression.expression );
126 aStoredExpression.setAttribute( QStringLiteral(
"tag" ),
storedExpression.tag );
127 aStoredExpressions.appendChild( aStoredExpression );
129 layerNode.appendChild( aStoredExpressions );
138 QDomNode aaNode = layerNode.namedItem( QStringLiteral(
"storedexpressions" ) );
140 if ( !aaNode.isNull() )
142 QDomNodeList aStoredExpressions = aaNode.toElement().elementsByTagName( QStringLiteral(
"storedexpression" ) );
143 for (
int i = 0; i < aStoredExpressions.size(); ++i )
145 QDomElement aStoredExpression = aStoredExpressions.at( i ).toElement();
146 addStoredExpression( aStoredExpression.attribute( QStringLiteral(
"name" ) ), aStoredExpression.attribute( QStringLiteral(
"expression" ) ),
QgsStoredExpression::Category( aStoredExpression.attribute( QStringLiteral(
"tag" ) ).toInt() ) );
void removeStoredExpression(const QString &id)
Removes an expression to the list.
QgsStoredExpression storedExpression(const QString &id) const
Returns an expression according to the id.
bool writeXml(QDomNode &layerNode) const
Writes the stored expressions out in XML format.
void clearStoredExpressions()
Clears list of stored expressions.
QgsStoredExpression findStoredExpressionByExpression(const QString &expression, const QgsStoredExpression::Category &tag=QgsStoredExpression::Category::All) const
Returns an expression according to the expression text.
QList< QgsStoredExpression > storedExpressions(const QgsStoredExpression::Category &tag=QgsStoredExpression::Category::All)
Returns the list of named expressions.
void addStoredExpressions(const QList< QgsStoredExpression > &storedExpressions)
Appends a list of expressions to the existing list.
void updateStoredExpression(const QString &id, const QString &name, const QString &expression, const QgsStoredExpression::Category &tag)
Updates an expression by id.
bool readXml(const QDomNode &layerNode)
Reads the stored expressions in in XML format.
QString addStoredExpression(const QString &name, const QString &expression, const QgsStoredExpression::Category &tag=QgsStoredExpression::Category::FilterExpression)
Adds an expression to the list.
Stored expression containing name, content (expression text) and a category tag.
QString expression
expression text
Category
Categories of use cases FilterExpression for stored expressions to filter attribute table DefaultValu...
QString name
descriptive name of the expression
QgsStoredExpression::Category tag
category of the expression use case