15 #ifndef QGSVECTORLAYEREDITBUFFER_H 16 #define QGSVECTORLAYEREDITBUFFER_H 18 #include "qgis_core.h" 43 virtual bool isModified()
const;
66 virtual bool changeAttributeValue(
QgsFeatureId fid,
int field,
const QVariant &newValue,
const QVariant &oldValue = QVariant() );
78 virtual bool addAttribute(
const QgsField &field );
81 virtual bool deleteAttribute(
int attr );
89 virtual bool renameAttribute(
int attr,
const QString &newName );
106 virtual bool commitChanges( QStringList &commitErrors );
109 virtual void rollBack();
189 void undoIndexChanged(
int index );
193 void layerModified();
205 void attributeValueChanged(
QgsFeatureId fid,
int idx,
const QVariant & );
206 void attributeAdded(
int idx );
207 void attributeDeleted(
int idx );
215 void attributeRenamed(
int idx,
const QString &newName );
218 void committedAttributesDeleted(
const QString &layerId,
const QgsAttributeList &deletedAttributes );
219 void committedAttributesAdded(
const QString &layerId,
const QList<QgsField> &addedAttributes );
227 void committedAttributesRenamed(
const QString &layerId,
const QgsFieldNameMap &renamedAttributes );
228 void committedFeaturesAdded(
const QString &layerId,
const QgsFeatureList &addedFeatures );
229 void committedFeaturesRemoved(
const QString &layerId,
const QgsFeatureIds &deletedFeatureIds );
230 void committedAttributeValuesChanges(
const QString &layerId,
const QgsChangedAttributesMap &changedAttributesValues );
231 void committedGeometriesChanges(
const QString &layerId,
const QgsGeometryMap &changedGeometries );
244 void updateChangedAttributes(
QgsFeature &f );
247 void handleAttributeAdded(
int index );
250 void handleAttributeDeleted(
int index );
253 void updateAttributeMapIndex(
QgsAttributeMap &attrs,
int index,
int offset )
const;
255 void updateLayerFields();
306 friend class QgsGrassProvider;
309 #endif // QGSVECTORLAYEREDITBUFFER_H Undo command for deleting attri of a vector layer in transaction group.
Undo command for removing an existing attribute from a vector layer.
QMap< QgsFeatureId, QgsGeometry > QgsGeometryMap
Undo command for deleting a feature from a vector layer.
Undo command for deleting attri of a vector layer in transaction group.
QSet< QgsFeatureId > QgsFeatureIds
QList< QgsFeature > QgsFeatureList
Base class for undo commands within a QgsVectorLayerEditBuffer.
Container of fields for a vector layer.
Undo command for modifying an attribute of a feature from a vector layer.
A geometry is the spatial representation of a feature.
Undo command for vector layer in transaction group mode.
QgsChangedAttributesMap mChangedAttributeValues
Changed attributes values which are not committed.
bool isFeatureAdded(QgsFeatureId id) const
Returns true if the specified feature ID has been added but not committed.
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
QgsFieldNameMap mRenamedAttributes
Renamed attributes which are not committed.
QgsChangedAttributesMap changedAttributeValues() const
Returns a map of features with changed attributes values which are not committed. ...
Undo command for adding attri to a vector layer in transaction group.
Undo command for changing attr value from a vector layer in transaction group.
QgsFeatureIds deletedFeatureIds() const
Returns a list of deleted feature IDs which are not committed.
Undo command for adding a feature to a vector layer.
QSet< int > QgsAttributeIds
Undo command for changing feature geometry from a vector layer in transaction group.
Undo command for modifying the geometry of a feature from a vector layer.
QgsGeometryMap changedGeometries() const
Returns a map of features with changed geometries which are not committed.
QMap< int, QVariant > QgsAttributeMap
QgsGeometryMap mChangedGeometries
Changed geometries which are not committed.
QgsAttributeList deletedAttributeIds() const
Returns a list of deleted attributes fields which are not committed.
Undo command for renaming an existing attribute of a vector layer.
Undo command for running a specific sql query in transaction group.
QgsFeatureIds mDeletedFeatureIds
Deleted feature IDs which are not committed.
Encapsulate a field in an attribute table or data source.
bool isFeatureAttributesChanged(QgsFeatureId id) const
Returns true if the specified feature ID has had an attribute changed but not committed.
bool isAttributeDeleted(int index) const
Returns true if the specified attribute has been deleted but not committed.
QMap< int, QString > QgsFieldNameMap
Undo command for adding a new attribute to a vector layer.
Undo command for deleting features from a vector layer in transaction group.
QMap< QgsFeatureId, QgsFeature > QgsFeatureMap
Undo command for changing attributes' values from a vector layer in transaction group.
QgsFeatureMap addedFeatures() const
Returns a map of new features which are not committed.
QList< QgsField > mAddedAttributes
Added attributes fields which are not committed.
QMap< QgsFeatureId, QgsAttributeMap > QgsChangedAttributesMap
Undo command for adding a feature to a vector layer in transaction group mode.
bool isFeatureDeleted(QgsFeatureId id) const
Returns true if the specified feature ID has been deleted but not committed.
QList< int > QgsAttributeList
QList< QgsField > addedAttributes() const
Returns a list of added attributes fields which are not committed.
QgsFeatureMap mAddedFeatures
New features which are not committed.
Represents a vector layer which manages a vector based data sets.
QgsAttributeList mDeletedAttributeIds
Deleted attributes fields which are not committed. The list is kept sorted.
bool isFeatureGeometryChanged(QgsFeatureId id) const
Returns true if the specified feature ID has had its geometry changed but not committed.