16 #ifndef QGSPOLYMORPHICRELATION_H
17 #define QGSPOLYMORPHICRELATION_H
23 #include "qgis_core.h"
36 class QgsPolymorphicRelationPrivate;
53 Q_PROPERTY( QString
id READ
id WRITE setId )
54 Q_PROPERTY(
QgsVectorLayer *referencingLayer READ referencingLayer )
55 Q_PROPERTY( QString referencedLayerField READ referencedLayerField )
56 Q_PROPERTY( QString referencedLayerExpression READ referencedLayerExpression )
57 Q_PROPERTY( QString name READ name WRITE setName )
58 Q_PROPERTY(
bool isValid READ isValid )
104 void writeXml( QDomNode &node, QDomDocument &doc )
const;
109 void setId(
const QString &
id );
114 void setName(
const QString &name );
119 void setReferencingLayer(
const QString &
id );
129 void addFieldPair(
const QString &referencingField,
const QString &referencedField );
148 QString name()
const;
169 QString referencingLayerId()
const;
187 QList< QgsRelation::FieldPair > fieldPairs()
const;
189 QMap< QString, QString > fieldPairs()
const;
191 const QList< QgsRelation::FieldPair > &pairs = sipCpp->fieldPairs();
192 sipRes =
new QMap< QString, QString >();
195 sipRes->insert( pair.first, pair.second );
222 bool isValid()
const;
236 void updateRelationStatus();
241 void setReferencedLayerField(
const QString &referencedLayerField );
246 QString referencedLayerField()
const;
251 void setReferencedLayerExpression(
const QString &expression );
256 QString referencedLayerExpression()
const;
261 void setReferencedLayerIds(
const QStringList &childRelationIds );
266 QStringList referencedLayerIds()
const;
271 QList<QgsRelation> generateRelations()
const;
290 QExplicitlySharedDataPointer<QgsPolymorphicRelationPrivate> d;
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
Wrapper for iterator of features from vector data provider or vector layer.
This class wraps a request for features to a vector layer (or directly its vector data provider).
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
A polymorphic relation consists of the same properties like a normal relation except for the referenc...
~QgsPolymorphicRelation()
The class is used as a container of context for various read/write operations on other objects.
Defines a relation between matching fields of the two involved tables of a relation.
RelationStrength
enum for the relation strength Association, Composition
Represents a vector layer which manages a vector based data sets.
QList< int > QgsAttributeList
Q_DECLARE_METATYPE(QgsMeshTimeSettings)