A child table that allows custom editing of features of a particular subtype. More...
Header: | #include <SubtypeSubtable.h> |
Since: | Esri::ArcGISRuntime 200.7 |
Inherits: | Esri::ArcGISRuntime::Object and Esri::ArcGISRuntime::PopupSource |
Public Functions
SubtypeSubtable(const Esri::ArcGISRuntime::FeatureSubtype &subtype, QObject *parent = nullptr) | |
QFuture<void> | addFeatureAsync(Esri::ArcGISRuntime::ArcGISFeature *feature) |
bool | allowsEditing() const |
Esri::ArcGISRuntime::ArcGISFeature * | createFeature(QObject *parent = nullptr) const |
Esri::ArcGISRuntime::ArcGISFeature * | createFeature(const Esri::ArcGISRuntime::FeatureTemplate &featureTemplate, QObject *parent = nullptr) const |
QFuture<void> | deleteFeatureAsync(Esri::ArcGISRuntime::ArcGISFeature *feature) |
QList<Esri::ArcGISRuntime::FeatureTemplate> | featureTemplates() const |
QString | name() const |
QFuture<Esri::ArcGISRuntime::FeatureQueryResult *> | queryFeaturesAsync(const Esri::ArcGISRuntime::QueryParameters ¶meters, QObject *parent = nullptr) |
void | setAllowsEditing(bool allowsEditing) |
void | setName(const QString &name) |
Esri::ArcGISRuntime::FeatureSubtype | subtype() const |
QJsonObject | unknownJson() const |
QJsonObject | unsupportedJson() const |
QFuture<void> | updateFeatureAsync(Esri::ArcGISRuntime::ArcGISFeature *feature) |
Reimplemented Public Functions
virtual bool | isPopupEnabled() const override |
virtual Esri::ArcGISRuntime::PopupDefinition * | popupDefinition() const override |
virtual void | setPopupDefinition(Esri::ArcGISRuntime::PopupDefinition *popupDefinition) override |
virtual void | setPopupEnabled(bool popupEnabled) override |
Detailed Description
Query and edit methods are not available until this table is added to ArcGISFeatureTable::subtypeSubtables. This subtype must be part of the ArcGISFeatureTable::featureSubtypes.
See also ArcGISFeatureTable::subtypeSubtables.
Member Function Documentation
[explicit]
SubtypeSubtable::SubtypeSubtable (const Esri::ArcGISRuntime::FeatureSubtype &subtype, QObject *parent = nullptr)
Creates a new subtype table object.
- subtype - The subtype in the ArcGIS data source that this table represents.
- parent - The optional parent QObject.
See also subtype and ArcGISFeatureTable::featureSubtypes.
QFuture<void> SubtypeSubtable::addFeatureAsync (Esri::ArcGISRuntime::ArcGISFeature *feature)
Adds a feature to the table.
- feature - The feature.
Use allowsEditing to determine if this operation is allowed.
This method returns a QFuture for the asynchronous operation. Use future.then() to continue processing when the operation completes. Use future.onFailed() to handle exceptions of type ErrorException.
See Working with QFuture for further details.
bool SubtypeSubtable::allowsEditing () const
Returns true
if editing is allowed for this subtype, when editing is supported; false
, otherwise.
Indicates whether a client should allow feature editing for this subtype. When you set this value to true
, editing is allowed on the subtype only if the ArcGIS data source also supports editing.
See also setAllowsEditing() and FeatureTable::isEditable.
Esri::ArcGISRuntime::ArcGISFeature *SubtypeSubtable::createFeature (QObject *parent = nullptr) const
Returns a new feature based on subtype with an optional parent.
Esri::ArcGISRuntime::ArcGISFeature *SubtypeSubtable::createFeature (const Esri::ArcGISRuntime::FeatureTemplate &featureTemplate , QObject *parent = nullptr) const
Returns a new feature based on the provided feature template from featureTemplates.
- featureTemplate - The feature template.
- parent - The optional parent
QFuture<void> SubtypeSubtable::deleteFeatureAsync (Esri::ArcGISRuntime::ArcGISFeature *feature)
Deletes a feature from the table.
- feature - The feature.
Use allowsEditing to determine if this operation is allowed.
This method returns a QFuture for the asynchronous operation. Use future.then() to continue processing when the operation completes. Use future.onFailed() to handle exceptions of type ErrorException.
See Working with QFuture for further details.
QList<Esri::ArcGISRuntime::FeatureTemplate > SubtypeSubtable::featureTemplates () const
Returns the collection of FeatureTemplate objects applicable to this subtype.
A collection of templates that can be used to create new features of subtype with default attribute values and a specified mode for creating its geometry.
See also FeatureTemplate and createFeature(const Esri::ArcGISRuntime::FeatureTemplate&, QObject*).
[override virtual]
bool SubtypeSubtable::isPopupEnabled () const
Reimplements: PopupSource::isPopupEnabled() const.
Returns a flag indicating whether the PopupDefinition defined on the PopupSource is enable / disable.
Will return false
if an error occurs.
QString SubtypeSubtable::name() const
Returns a user-friendly name that can be displayed in the UI (for example, in a Table of Contents).
The default value is FeatureSubtype::name.
See also setName().
[override virtual]
Esri::ArcGISRuntime::PopupDefinition *SubtypeSubtable::popupDefinition () const
Reimplements: PopupSource::popupDefinition() const.
Returns the pop-up definition.
The PopupDefinition associated with the popup source. A nullptr
if an error occurs or if the popup source is not associated with a pop-up definition.
See also setPopupDefinition().
QFuture<Esri::ArcGISRuntime::FeatureQueryResult *> SubtypeSubtable::queryFeaturesAsync (const Esri::ArcGISRuntime::QueryParameters ¶meters, QObject *parent = nullptr)
Submits a query against the table with results filtered by this subtype.
- parameters - Options for controlling the operation.
- parent - The optional parent object.
This method returns a QFuture for the asynchronous operation. Use future.then() to continue processing when the operation completes. Use future.onFailed() to handle exceptions of type ErrorException.
See Working with QFuture for further details.
void SubtypeSubtable::setAllowsEditing (bool allowsEditing )
Sets allowsEditing to allowsEditing.
See also allowsEditing.
void SubtypeSubtable::setName (const QString &name)
Sets the name to name.
See also name.
[override virtual]
void SubtypeSubtable::setPopupDefinition (Esri::ArcGISRuntime::PopupDefinition *popupDefinition )
Reimplements: PopupSource::setPopupDefinition(Esri::ArcGISRuntime::PopupDefinition *popupDefinition).
Sets the popupDefinition to popupDefinition.
See also popupDefinition.
[override virtual]
void SubtypeSubtable::setPopupEnabled (bool popupEnabled )
Reimplements: PopupSource::setPopupEnabled(bool popupEnabled).
Sets the popupEnabled to popupEnabled.
See also isPopupEnabled.
Esri::ArcGISRuntime::FeatureSubtype SubtypeSubtable::subtype() const
Returns the subtype in the ArcGIS data source that this table represents.
QJsonObject SubtypeSubtable::unknownJson () const
Returns unknown data from the source JSON.
Unknown JSON is a dictionary of values not defined in the ArcGIS specification used to create this object but found in the source JSON. If the object is written back to JSON, any unknown JSON data is not persisted. The ArcGIS specification may be for a web map, web scene, REST API, and so on.
QJsonObject SubtypeSubtable::unsupportedJson () const
Returns unsupported data from the source JSON.
Unsupported JSON is a dictionary of values defined in the ArcGIS specification used to create this object but not currently used in this API. If the object is written back to JSON, any unsupported JSON data is persisted. The ArcGIS specification may be from a web map, web scene, REST API, and so on.
QFuture<void> SubtypeSubtable::updateFeatureAsync (Esri::ArcGISRuntime::ArcGISFeature *feature)
Updates a feature in the table.
- feature - The feature.
Use allowsEditing to determine if this operation is allowed.
This method returns a QFuture for the asynchronous operation. Use future.then() to continue processing when the operation completes. Use future.onFailed() to handle exceptions of type ErrorException.
See Working with QFuture for further details.