QGIS API Documentation
3.14.0-Pi (9f7028fd23)
src
server
qgsfeaturefilter.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsfeaturefilter.cpp
3
--------------------
4
begin : 26-10-2017
5
copyright : (C) 2017 by Patrick Valsecchi
6
email : patrick dot valsecchi at camptocamp dot com
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
#include "
qgsfeaturefilter.h
"
19
#include "
qgsfeaturerequest.h
"
20
#include "
qgsvectorlayer.h
"
21
#include "
qgsexpression.h
"
22
23
void
QgsFeatureFilter::filterFeatures
(
const
QgsVectorLayer
*layer,
QgsFeatureRequest
&filterFeatures )
const
24
{
25
const
QString expr = mFilters[layer->
id
()];
26
if
( !expr.isEmpty() )
27
{
28
filterFeatures
.setFilterExpression( expr );
29
}
30
}
31
32
QgsFeatureFilterProvider
*
QgsFeatureFilter::clone
()
const
33
{
34
auto
result =
new
QgsFeatureFilter
();
35
result->mFilters = mFilters;
36
return
result;
37
}
38
39
void
QgsFeatureFilter::setFilter
(
const
QgsVectorLayer
*layer,
const
QgsExpression
&filter )
40
{
41
mFilters[layer->
id
()] = filter.
dump
();
42
}
qgsfeaturerequest.h
qgsexpression.h
QgsExpression::dump
QString dump() const
Returns an expression string, constructed from the internal abstract syntax tree.
Definition:
qgsexpression.cpp:389
QgsFeatureFilter::filterFeatures
void filterFeatures(const QgsVectorLayer *layer, QgsFeatureRequest &filterFeatures) const override
Filter the features of the layer.
Definition:
qgsfeaturefilter.cpp:23
QgsFeatureFilter::setFilter
void setFilter(const QgsVectorLayer *layer, const QgsExpression &expression)
Set a filter for the given layer.
Definition:
qgsfeaturefilter.cpp:39
qgsfeaturefilter.h
QgsFeatureRequest
Definition:
qgsfeaturerequest.h:75
QgsFeatureFilter::QgsFeatureFilter
QgsFeatureFilter()=default
Constructor.
QgsMapLayer::id
QString id() const
Returns the layer's unique ID, which is used to access this layer from QgsProject.
Definition:
qgsmaplayer.cpp:148
qgsvectorlayer.h
QgsVectorLayer
Definition:
qgsvectorlayer.h:385
QgsFeatureFilterProvider
Definition:
qgsfeaturefilterprovider.h:40
QgsFeatureFilter::clone
QgsFeatureFilterProvider * clone() const override
Returns a clone of the object.
Definition:
qgsfeaturefilter.cpp:32
QgsExpression
Definition:
qgsexpression.h:113
Generated on Mon Jun 22 2020 05:14:09 for QGIS API Documentation by
1.8.17