Class: QgsProviderSublayerModel¶
- class qgis.core.QgsProviderSublayerModel¶
Bases:
PyQt5.QtCore.QAbstractItemModel
A model for representing the sublayers present in a URI.
QgsProviderSublayerModel
is designed to present a tree view of the sublayers available for a URI, including any vector, raster or mesh sublayers present.Additionally,
QgsProviderSublayerModel
can include some non-sublayer items, e.g. in order to represent other content available for a URI, such as embedded project items. The non-sublayer items can be added by callingaddNonLayerItem()
.New in version 3.22.
QgsProviderSublayerModel(parent: QObject = None) Constructor for
QgsProviderSublayerModel
, with the specifiedparent
object.Enums
Bases:
enum.IntEnum
Bases:
enum.IntEnum
Methods
Adds a non-layer item (e.g.
beginInsertColumns
beginInsertRows
beginMoveColumns
beginMoveRows
beginRemoveColumns
beginRemoveRows
changePersistentIndex
- param parent:
createIndex
- param index:
decodeData
- param index:
- param section:
- param row:
Returns the non layer item corresponding to the given
index
.Returns the sublayer corresponding to the given
index
.- param index:
- param parent:
Sets the sublayer
details
to show in the model.Returns the sublayer details shown in the model.
- class Column(value)¶
Bases:
enum.IntEnum
Model columns
Name
: Layer nameDescription
: Layer description
- Description = 1¶
- Name = 0¶
- class NonLayerItem¶
Bases:
sip.wrapper
Contains details for a non-sublayer item to include in a QgsProviderSublayerModel.
New in version 3.22.
- description(self) str ¶
Returns the item’s description.
See also
- Return type:
str
- setDescription(self, description: str)¶
Sets the item’s
description
.See also
- Parameters:
description (str) –
- class Role(value)¶
Bases:
enum.IntEnum
Custom model roles
ProviderKey
: Provider keyLayerType
: Layer typeUri
: Layer URIName
: Layer nameDescription
: Layer descriptionPath
: Layer pathFeatureCount
: Feature count (for vector sublayers)WkbType
: WKB geometry type (for vector sublayers)GeometryColumnName
: Geometry column name (for vector sublayers)LayerNumber
: Layer numberIsNonLayerItem
:True
if item is a non-sublayer item (e.g. an embedded project)NonLayerItemType
: Item type (for non-sublayer items)Flags
: Sublayer flags
- Description = 261¶
- FeatureCount = 263¶
- Flags = 269¶
- GeometryColumnName = 265¶
- IsNonLayerItem = 267¶
- LayerNumber = 266¶
- LayerType = 258¶
- Name = 260¶
- NonLayerItemType = 268¶
- Path = 262¶
- ProviderKey = 257¶
- Uri = 259¶
- WkbType = 264¶
- addNonLayerItem(self, item: QgsProviderSublayerModel.NonLayerItem)¶
Adds a non-layer item (e.g. an embedded QGIS project item) to the model.
- Parameters:
- QgsProviderSublayerModel.beginInsertColumns(self, QModelIndex, int, int)
- QgsProviderSublayerModel.beginInsertRows(self, QModelIndex, int, int)
- QgsProviderSublayerModel.beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
- QgsProviderSublayerModel.beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
- QgsProviderSublayerModel.beginRemoveColumns(self, QModelIndex, int, int)
- QgsProviderSublayerModel.beginRemoveRows(self, QModelIndex, int, int)
- beginResetModel(self)¶
- QgsProviderSublayerModel.changePersistentIndex(self, QModelIndex, QModelIndex)
- changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])¶
- childEvent(self, QChildEvent)¶
- columnCount(self, parent: QModelIndex = QModelIndex()) int ¶
- Parameters:
parent (QModelIndex = QModelIndex()) –
- Return type:
int
- connectNotify(self, QMetaMethod)¶
- QgsProviderSublayerModel.createIndex(self, int, int, object: object = 0) -> QModelIndex
- customEvent(self, QEvent)¶
- data(self, index: QModelIndex, role: int) Any ¶
- Parameters:
index (QModelIndex) –
role (int) –
- Return type:
Any
- QgsProviderSublayerModel.decodeData(self, int, int, QModelIndex, QDataStream) -> bool
- disconnectNotify(self, QMetaMethod)¶
- encodeData(self, Iterable[QModelIndex], QDataStream)¶
- endInsertColumns(self)¶
- endInsertRows(self)¶
- endMoveColumns(self)¶
- endMoveRows(self)¶
- endRemoveColumns(self)¶
- endRemoveRows(self)¶
- endResetModel(self)¶
- flags(self, index: QModelIndex) Qt.ItemFlags ¶
- Parameters:
index (QModelIndex) –
- Return type:
Qt.ItemFlags
- headerData(self, section: int, orientation: Qt.Orientation, role: int = Qt.DisplayRole) Any ¶
- Parameters:
section (int) –
orientation (Qt.Orientation) –
role (int = Qt.DisplayRole) –
- Return type:
Any
- index(self, row: int, column: int, parent: QModelIndex = QModelIndex()) QModelIndex ¶
- Parameters:
row (int) –
column (int) –
parent (QModelIndex = QModelIndex()) –
- Return type:
QModelIndex
- indexToNonLayerItem(self, index: QModelIndex) QgsProviderSublayerModel.NonLayerItem ¶
Returns the non layer item corresponding to the given
index
.- Parameters:
index (QModelIndex) –
- Return type:
- indexToSublayer(self, index: QModelIndex) QgsProviderSublayerDetails ¶
Returns the sublayer corresponding to the given
index
.- Parameters:
index (QModelIndex) –
- Return type:
- isSignalConnected(self, QMetaMethod) bool ¶
- parent(self, index: QModelIndex) QModelIndex ¶
- Parameters:
index (QModelIndex) –
- Return type:
QModelIndex
- persistentIndexList(self) List[QModelIndex] ¶
- receivers(self, PYQT_SIGNAL) int ¶
- resetInternalData(self)¶
- rowCount(self, parent: QModelIndex) int ¶
- Parameters:
parent (QModelIndex) –
- Return type:
int
- sender(self) QObject ¶
- senderSignalIndex(self) int ¶
- setSublayerDetails(self, details: Iterable[QgsProviderSublayerDetails])¶
Sets the sublayer
details
to show in the model.See also
- Parameters:
details (Iterable[QgsProviderSublayerDetails]) –
- sublayerDetails(self) List[QgsProviderSublayerDetails] ¶
Returns the sublayer details shown in the model.
See also
- Return type:
- timerEvent(self, QTimerEvent)¶