Subgroup: Attribute
Class: QgsAttributeTableModel¶
-
class
qgis.gui.
QgsAttributeTableModel
(layerCache: QgsVectorLayerCache, parent: QObject = None)¶ Bases:
PyQt5.QtCore.QAbstractTableModel
Constructor
Parameters: - layerCache – A layer cache to use as backend
- parent – The parent QObject (owner)
A model backed by a QgsVectorLayerCache which is able to provide feature/attribute information to a QAbstractItemView.
Is able to generate editor widgets for its QModelIndexes as well. Is mostly referred to as “master model” within this doc and the source.
see <a href=”http://doc.qt.digia.com/qt/model-view-programming.html”>Qt Model View Programming</a>
Methods
beginInsertColumns
beginInsertRows
beginMoveColumns
beginMoveRows
beginRemoveColumns
beginRemoveRows
beginResetModel
changePersistentIndex
changePersistentIndexList
childEvent
columnCount
Returns the number of columns connectNotify
createIndex
customEvent
data
Returns data on the given index decodeData
disconnectNotify
editorContext
Returns the context in which this table is shown. encodeData
endInsertColumns
endInsertRows
endMoveColumns
endMoveRows
endRemoveColumns
endRemoveRows
endResetModel
executeAction
Execute an action executeMapLayerAction
Execute a QgsMapLayerAction
extraColumns
Empty extra columns to announce from this model. feature
Return the feature attributes at given model index fieldCol
get column from field index fieldConditionalStyleChanged
Handles updating the model when the conditional style for a field changes. fieldIdx
get field index from column flags
Returns item flags for the index headerData
Returns header data idToIndex
idToIndexList
idToRow
Maps feature id to table row isSignalConnected
layer
Returns the layer this model uses as backend. layerCache
Returns the layer cache this model uses as backend. loadLayer
Loads the layer into the model Preferably to be called, before using this model as source for any other proxy model persistentIndexList
prefetchColumnData
Caches the entire data for one column. prefetchSortData
Prefetches the entire data for one expression. receivers
reload
Reloads the model data between indices removeRows
Remove rows request
resetInternalData
resetModel
Resets the model rowCount
Returns the number of rows rowToId
Maps row to feature id sender
senderSignalIndex
setData
Updates data on given index setEditorContext
Sets the context in which this table is shown. setExtraColumns
Empty extra columns to announce from this model. setRequest
Set a request that will be used to fill this attribute table model. sortCacheExpression
The expression which was used to fill the sorting cache swapRows
Swaps two rows timerEvent
Signals
finished
finished(self) [signal] modelChanged
Model has been changed [signal] Attributes
FeatureIdRole
FieldIndexRole
SortRole
UserRole
-
FeatureIdRole
= 258¶
-
FieldIndexRole
= 259¶
-
class
Role
¶ Bases:
int
-
SortRole
= 257¶
-
UserRole
= 260¶
-
beginInsertColumns
()¶
-
beginInsertRows
()¶
-
beginMoveColumns
()¶
-
beginMoveRows
()¶
-
beginRemoveColumns
()¶
-
beginRemoveRows
()¶
-
beginResetModel
()¶
-
changePersistentIndex
()¶
-
changePersistentIndexList
()¶
-
childEvent
()¶
-
columnCount
(self, parent: QModelIndex = QModelIndex()) → int¶ Returns the number of columns
Parameters: parent – parent index
-
connectNotify
()¶
-
createIndex
()¶
-
customEvent
()¶
-
data
(self, index: QModelIndex, role: int) → Any¶ Returns data on the given index
Parameters: - index – model index
- role – data role
-
decodeData
()¶
-
disconnectNotify
()¶
-
editorContext
(self) → QgsAttributeEditorContext¶ Returns the context in which this table is shown. Will be forwarded to any editor widget created when editing data on this model.
Returns: The context
-
encodeData
()¶
-
endInsertColumns
()¶
-
endInsertRows
()¶
-
endMoveColumns
()¶
-
endMoveRows
()¶
-
endRemoveColumns
()¶
-
endRemoveRows
()¶
-
endResetModel
()¶
-
executeAction
(self, action: QUuid, idx: QModelIndex)¶ Execute an action
-
executeMapLayerAction
(self, action: QgsMapLayerAction, idx: QModelIndex)¶ Execute a
QgsMapLayerAction
-
extraColumns
(self) → int¶ Empty extra columns to announce from this model. Any extra columns need to be implemented by proxy models in front of this model.
-
feature
(self, idx: QModelIndex) → QgsFeature¶ Return the feature attributes at given model index
Returns: feature attributes at given model index
-
fieldCol
(self, idx: int) → int¶ get column from field index
-
fieldConditionalStyleChanged
(self, fieldName: str)¶ Handles updating the model when the conditional style for a field changes.
Parameters: fieldName – name of field whose conditional style has changed New in version 2.12.
-
fieldIdx
(self, col: int) → int¶ get field index from column
-
finished
¶ finished(self) [signal]
-
flags
(self, index: QModelIndex) → Qt.ItemFlags¶ Returns item flags for the index
Parameters: index – model index
-
headerData
(self, section: int, orientation: Qt.Orientation, role: int = Qt.DisplayRole) → Any¶ Returns header data
Parameters: - section – required section
- orientation – horizontal or vertical orientation
- role – data role
-
idToIndex
(self, id: int) → QModelIndex¶
-
idToIndexList
(self, id: int) → object¶
-
idToRow
(self, id: int) → int¶ Maps feature id to table row
Parameters: id – feature id
-
isSignalConnected
()¶
-
layer
(self) → QgsVectorLayer¶ Returns the layer this model uses as backend. Retrieved from the layer cache.
-
layerCache
(self) → QgsVectorLayerCache¶ Returns the layer cache this model uses as backend.
-
loadLayer
(self)¶ Loads the layer into the model Preferably to be called, before using this model as source for any other proxy model
-
modelChanged
¶ Model has been changed [signal]
-
persistentIndexList
()¶
-
prefetchColumnData
(self, column: int)¶ Caches the entire data for one column. This should be called prior to sorting, so the data does not have to be fetched for every single comparison. Specify -1 as column to invalidate the cache
Parameters: column – The column index of the field to catch
-
prefetchSortData
(self, expression: str)¶ Prefetches the entire data for one expression. Based on this cached information the sorting can later be done in a performant way.
Parameters: expression – The expression to cache
-
receivers
()¶
-
reload
(self, index1: QModelIndex, index2: QModelIndex)¶ Reloads the model data between indices
Parameters: - index1 – start index
- index2 – end index
-
removeRows
(self, row: int, count: int, parent: QModelIndex = QModelIndex()) → bool¶ Remove rows
-
request
(self) → QgsFeatureRequest¶
-
resetInternalData
()¶
-
resetModel
(self)¶ Resets the model
Alias to loadLayer()
-
rowCount
(self, parent: QModelIndex = QModelIndex()) → int¶ Returns the number of rows
Parameters: parent – parent index
-
rowToId
(self, row: int) → int¶ Maps row to feature id
Parameters: row – row number
-
sender
()¶
-
senderSignalIndex
()¶
-
setData
(self, index: QModelIndex, value: Any, role: int = Qt.EditRole) → bool¶ Updates data on given index
Parameters: - index – model index
- value – new data value
- role – data role
-
setEditorContext
(self, context: QgsAttributeEditorContext)¶ Sets the context in which this table is shown. Will be forwarded to any editor widget created when editing data on this model.
Parameters: context – The context
-
setExtraColumns
(self, extraColumns: int)¶ Empty extra columns to announce from this model. Any extra columns need to be implemented by proxy models in front of this model.
-
setRequest
(self, request: QgsFeatureRequest)¶ Set a request that will be used to fill this attribute table model. In contrast to a filter, the request will constrain the data shown without the possibility to dynamically adjust it.
Parameters: request – The request to use to fill this table model.
-
sortCacheExpression
(self) → str¶ The expression which was used to fill the sorting cache
-
swapRows
(self, a: int, b: int)¶ Swaps two rows
Parameters: - a – first row
- b – second row
-
timerEvent
()¶