QGIS API Documentation 3.99.0-Master (a26b91b364d)
Public Member Functions | List of all members
QgsFeatureFilter Class Reference

A feature filter provider allowing to set filter expressions on a per-layer basis. More...

#include <qgsfeaturefilter.h>

Inheritance diagram for QgsFeatureFilter:
Inheritance graph
[legend]

Public Member Functions

 QgsFeatureFilter ()=default
 Constructor.
 
QgsFeatureFilterProviderclone () const override
 Create a clone of the feature filter provider.
 
void filterFeatures (const QgsVectorLayer *layer, QgsFeatureRequest &filterFeatures) const override
 Add additional filters to the feature request to further restrict the features returned by the request.
 
bool isFilterThreadSafe () const override
 Returns true if the filterFeature function is thread safe, which will lead to reliance on layer ID instead of the raw layer pointer.
 
QStringList layerAttributes (const QgsVectorLayer *layer, const QStringList &attributes) const override
 Returns the list of visible attribute names from a list of attributes names for the given layer.
 
void setFilter (const QgsVectorLayer *layer, const QgsExpression &expression)
 Set a filter for the given layer.
 
- Public Member Functions inherited from QgsFeatureFilterProvider
 QgsFeatureFilterProvider ()=default
 
virtual ~QgsFeatureFilterProvider ()=default
 
virtual void filterFeatures (const QString &layerId, QgsFeatureRequest &featureRequest) const
 Add additional filters to the feature request to further restrict the features returned by the request.
 

Detailed Description

A feature filter provider allowing to set filter expressions on a per-layer basis.

Deprecated:
QGIS 3.4. Use QgsFeatureExpressionFilterProvider

Definition at line 34 of file qgsfeaturefilter.h.

Constructor & Destructor Documentation

◆ QgsFeatureFilter()

QgsFeatureFilter::QgsFeatureFilter ( )
default

Constructor.

Member Function Documentation

◆ clone()

QgsFeatureFilterProvider * QgsFeatureFilter::clone ( ) const
overridevirtual

Create a clone of the feature filter provider.

Returns
a new clone

Implements QgsFeatureFilterProvider.

Definition at line 38 of file qgsfeaturefilter.cpp.

◆ filterFeatures()

void QgsFeatureFilter::filterFeatures ( const QgsVectorLayer layer,
QgsFeatureRequest featureRequest 
) const
overridevirtual

Add additional filters to the feature request to further restrict the features returned by the request.

Derived classes must implement this method.

Parameters
layerthe layer to filter
featureRequestthe feature request to update
Deprecated:
QGIS 4.0. Use the layer ID variant.

Reimplemented from QgsFeatureFilterProvider.

Definition at line 23 of file qgsfeaturefilter.cpp.

◆ isFilterThreadSafe()

bool QgsFeatureFilter::isFilterThreadSafe ( ) const
inlineoverridevirtual

Returns true if the filterFeature function is thread safe, which will lead to reliance on layer ID instead of the raw layer pointer.

Since
QGIS 4.0
Deprecated:
QGIS 4.0

Reimplemented from QgsFeatureFilterProvider.

Definition at line 40 of file qgsfeaturefilter.h.

◆ layerAttributes()

QStringList QgsFeatureFilter::layerAttributes ( const QgsVectorLayer layer,
const QStringList &  attributes 
) const
overridevirtual

Returns the list of visible attribute names from a list of attributes names for the given layer.

Since
QGIS 3.18

Implements QgsFeatureFilterProvider.

Definition at line 32 of file qgsfeaturefilter.cpp.

◆ setFilter()

void QgsFeatureFilter::setFilter ( const QgsVectorLayer layer,
const QgsExpression expression 
)

Set a filter for the given layer.

Parameters
layerthe layer to filter
expressionthe filter expression

Definition at line 45 of file qgsfeaturefilter.cpp.


The documentation for this class was generated from the following files: