SubtypeSubtable Class

  • SubtypeSubtable
  • class Esri::ArcGISRuntime::SubtypeSubtable

    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 &parameters, 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 &parameters, 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.

    Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.