SymbolLayerListModel Class

  • SymbolLayerListModel
  • class Esri::ArcGISRuntime::SymbolLayerListModel

    A list model storing a list of symbol layers available in a multi-layer symbol. More...

    Header: #include <SymbolLayerListModel.h>
    Since: Esri::ArcGISRuntime 100.5
    Inherits: QAbstractListModel and Esri::ArcGISRuntime::Iterable

    Public Types

    enum SymbolLayerRoles { SymbolLayerTypeRole, ColorLockedRole, EnabledRole }

    Public Functions

    virtual ~SymbolLayerListModel() override
    void append(Esri::ArcGISRuntime::SymbolLayer *symbolLayer)
    void append(const QList<Esri::ArcGISRuntime::SymbolLayer *> &symbolLayers)
    void clear()
    bool contains(Esri::ArcGISRuntime::SymbolLayer *symbolLayer) const
    Esri::ArcGISRuntime::SymbolLayer *first() const
    int indexOf(Esri::ArcGISRuntime::SymbolLayer *symbolLayer) const
    void insert(int index, Esri::ArcGISRuntime::SymbolLayer *symbolLayer)
    bool isEmpty() const
    Esri::ArcGISRuntime::SymbolLayer *last() const
    void move(int from, int to)
    void removeAt(int index)
    void removeOne(Esri::ArcGISRuntime::SymbolLayer *symbolLayer)

    Reimplemented Public Functions

    virtual Esri::ArcGISRuntime::SymbolLayer *at(int index) const override
    virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override
    virtual int size() const override

    Signals

    void errorOccurred(const Esri::ArcGISRuntime::Error &error)
    void itemAdded(int index)
    void itemRemoved(int index)

    Detailed Description

    Modifying this model (adding, removing, moving) will update the MultiLayerSymbol.

    The model returns data for the following roles:

    RoleTypeDescriptionSymbolLayerRoles
    symbolLayerTypeEsri::ArcGISRuntime::SymbolLayerTypeThe type of symbol layer. The role is read-only.SymbolLayerTypeRole
    colorLockedboolWhether the symbol layer has been color locked.ColorLockedRole
    enabledboolWhether the symbol layer is enabled.EnabledRole

    Member Type Documentation

    enum SymbolLayerListModel::SymbolLayerRoles

    This enum specifies the custom roles which can be used with SymbolLayerListModel::data.

    ConstantValueDescription
    Esri::ArcGISRuntime::SymbolLayerListModel::SymbolLayerTypeRoleQt::UserRole + 1The type of symbol layer.
    Esri::ArcGISRuntime::SymbolLayerListModel::ColorLockedRoleQt::UserRole + 2If the symbol layer is color locked.
    Esri::ArcGISRuntime::SymbolLayerListModel::EnabledRoleQt::UserRole + 3If the symbol layer is enabled.

    Member Function Documentation

    [override virtual] SymbolLayerListModel::~SymbolLayerListModel()

    Destructor.

    void SymbolLayerListModel::append(Esri::ArcGISRuntime::SymbolLayer *symbolLayer)

    Appends symbolLayer to the symbol layer list model.

    void SymbolLayerListModel::append(const QList<Esri::ArcGISRuntime::SymbolLayer *> &symbolLayers)

    Appends symbolLayers to the symbol layer list model.

    [override virtual] Esri::ArcGISRuntime::SymbolLayer *SymbolLayerListModel::at(int index) const

    Returns the SymbolLayer at the specified index.

    void SymbolLayerListModel::clear()

    Removes all symbol layers from the list model.

    List models do not take ownership of the objects they contain. Therefore, removing or clearing objects from the list model will not delete those objects. An RAII technique should be used to ensure that memory is properly deallocated.

    bool SymbolLayerListModel::contains(Esri::ArcGISRuntime::SymbolLayer *symbolLayer) const

    Returns true if the list model contains the specified symbolLayer.

    [override virtual] QVariant SymbolLayerListModel::data(const QModelIndex &index, int role = Qt::DisplayRole) const

    Reimplements: QAbstractItemModel::data(const QModelIndex &index, int role) const.

    Returns the data stored under the given role for the symbol referred to by the index.

    • index. The index in the model for which to return data.
    • role. The role for which to return data.

    [signal] void SymbolLayerListModel::errorOccurred(const Esri::ArcGISRuntime::Error &error)

    Signal emitted when an error occurs.

    • error - Details about the error.

    Esri::ArcGISRuntime::SymbolLayer *SymbolLayerListModel::first() const

    Returns the first symbol layer in the list model.

    int SymbolLayerListModel::indexOf(Esri::ArcGISRuntime::SymbolLayer *symbolLayer) const

    Returns the index of the symbolLayer specified.

    void SymbolLayerListModel::insert(int index, Esri::ArcGISRuntime::SymbolLayer *symbolLayer)

    Inserts a symbolLayer at a specified index in the list model.

    This method will append to the list if the index is greater than the current size of the list model.

    bool SymbolLayerListModel::isEmpty() const

    Returns true if the list model contains no symbol layers.

    [signal, since Esri::ArcGISRuntime 100.15] void SymbolLayerListModel::itemAdded(int index)

    Signal emitted when an item is added to the list model.

    index is the index of the added item.

    This function was introduced in Esri::ArcGISRuntime 100.15.

    [signal, since Esri::ArcGISRuntime 100.15] void SymbolLayerListModel::itemRemoved(int index)

    Signal emitted when an item is removed from the list model.

    index is the index of the removed item.

    This function was introduced in Esri::ArcGISRuntime 100.15.

    Esri::ArcGISRuntime::SymbolLayer *SymbolLayerListModel::last() const

    Returns the last symbol layer in the list model.

    void SymbolLayerListModel::move(int from, int to)

    Moves one symbolLayer from an index in the list model to a different index.

    void SymbolLayerListModel::removeAt(int index)

    Removes a symbol at the specified index.

    List models do not take ownership of the objects they contain. Therefore, removing or clearing objects from the list model will not delete those objects. An RAII technique should be used to ensure that memory is properly deallocated.

    void SymbolLayerListModel::removeOne(Esri::ArcGISRuntime::SymbolLayer *symbolLayer)

    Removes the specified symbolLayer from the list model.

    List models do not take ownership of the objects they contain. Therefore, removing or clearing objects from the list model will not delete those objects. An RAII technique should be used to ensure that memory is properly deallocated.

    [override virtual] int SymbolLayerListModel::size() const

    Returns the number of symbol layers contained in the list model.

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