QGIS API Documentation 3.34.0-Prizren (ffbdd678812)
Loading...
Searching...
No Matches
qgsfeaturefiltermodel.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsfeaturefiltermodel.h - QgsFeatureFilterModel
3 ---------------------
4 begin : 10.3.2017
5 copyright : (C) 2017 by Matthias Kuhn
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#ifndef QGSFEATUREFILTERMODEL_H
16#define QGSFEATUREFILTERMODEL_H
17
18
20
29{
30 Q_OBJECT
31
37 Q_PROPERTY( QStringList identifierFields READ identifierFields WRITE setIdentifierFields NOTIFY identifierFieldsChanged )
38
39
42 Q_PROPERTY( QVariantList extraIdentifierValues READ extraIdentifierValues WRITE setExtraIdentifierValues NOTIFY extraIdentifierValuesChanged )
43
44 public:
45
49 explicit QgsFeatureFilterModel( QObject *parent = nullptr );
50
57 Q_DECL_DEPRECATED QString identifierField() const;
58
64 QStringList identifierFields() const;
65
72 void setIdentifierFields( const QStringList &identifierFields );
73
79 void setExtraIdentifierValueToNull() override;
80
86 QVariantList extraIdentifierValues() const;
87
93 void setExtraIdentifierValues( const QVariantList &extraIdentifierValues );
94
95
96 signals:
97
102 void identifierFieldsChanged();
103
108 void extraIdentifierValuesChanged();
109
110 private:
111 QgsFeatureExpressionValuesGatherer *createValuesGatherer( const QgsFeatureRequest &request ) const override;
112
113 void requestToReloadCurrentFeature( QgsFeatureRequest &request ) override SIP_FORCE;
114
115 QSet<QString> requestedAttributes() const override;
116
117 QVariant entryIdentifier( const QgsFeatureExpressionValuesGatherer::Entry &entry ) const override;
118
119 QgsFeatureExpressionValuesGatherer::Entry createEntry( const QVariant &identifier ) const override;
120
121 bool compareEntries( const QgsFeatureExpressionValuesGatherer::Entry &a, const QgsFeatureExpressionValuesGatherer::Entry &b ) const override;
122
123 bool identifierIsNull( const QVariant &identifier ) const override;
124
125 QVariant nullIdentifier() const override;
126
127 QStringList mIdentifierFields;
128};
129
130#endif // QGSFEATUREFILTERMODEL_H
Provides a list of features based on filter conditions.
Provides a list of features based on filter conditions.
This class wraps a request for features to a vector layer (or directly its vector data provider).
#define SIP_FORCE
Definition qgis_sip.h:131