Subgroup: Layer

Class: QgsLayerTreeView

class qgis.gui.QgsLayerTreeView(parent: QWidget = None)

Bases: PyQt5.QtWidgets.QTreeView

Constructor for QgsLayerTreeView

The QgsLayerTreeView class extends QTreeView and provides some additional functionality when working with a layer tree.

The view updates expanded state of layer tree nodes and also listens to changes to expanded states in the layer tree.

The view keeps track of the current layer and emits a signal when the current layer has changed.

Allows the client to specify a context menu provider with custom actions. Also it comes with a set of default actions that can be used when building context menu.

New in version 2.4: Methods

actionEvent
changeEvent
childEvent
closeEditor
closeEvent
collapseAllNodes Enhancement of QTreeView.
columnCountChanged
columnMoved
columnResized
commitData
connectNotify
contextMenuEvent
create
currentChanged
currentGroupNode Get current group node.
currentLayer Get currently selected layer.
currentLegendNode Get current legend node.
currentNode Get current node.
customEvent
defaultActions Get access to the default actions that may be used with the tree view
destroy
dirtyRegionOffset
disconnectNotify
dragEnterEvent
dragLeaveEvent
dragMoveEvent
drawBranches
drawFrame
drawRow
drawTree
dropEvent
dropIndicatorPosition
edit
editorDestroyed
enterEvent
event
eventFilter
executeDelayedItemsLayout
expandAllNodes Enhancement of QTreeView.
focusInEvent
focusNextChild
focusNextPrevChild
focusOutEvent
focusPreviousChild
hideEvent
horizontalOffset
horizontalScrollbarAction
horizontalScrollbarValueChanged
indexRowSizeHint
initPainter
initStyleOption
inputMethodEvent
isIndexHidden
isSignalConnected
keyPressEvent
keyReleaseEvent
layerForIndex
layerTreeModel Get access to the model casted to QgsLayerTreeModel
leaveEvent
menuProvider Return pointer to the context menu provider.
metric
modelRowsInserted
modelRowsRemoved
mouseDoubleClickEvent
mouseMoveEvent
mousePressEvent
mouseReleaseEvent
moveCursor
moveEvent
nativeEvent
onCurrentChanged
onExpandedChanged
onModelReset
paintEvent
receivers
reexpand
refreshLayerSymbology Force refresh of layer symbology.
resizeEvent
rowHeight
rowsAboutToBeRemoved
rowsInserted
rowsRemoved
scheduleDelayedItemsLayout
scrollContentsBy
scrollDirtyRegion
selectedIndexes
selectedLayerNodes Return list of selected nodes filtered to just layer nodes
selectedLayers Get list of selected layers
selectedNodes Return list of selected nodes
selectionChanged
selectionCommand
sender
senderSignalIndex
setCurrentLayer Set currently selected layer.
setDirtyRegion
setMenuProvider Set provider for context menu.
setModel Overridden setModel() from base class.
setSelection
setState
setViewportMargins
sharedPainter
showEvent
sizeHintForColumn
startDrag
state
tabletEvent
timerEvent
updateEditorData
updateEditorGeometries
updateExpandedStateFromNode
updateExpandedStateToNode
updateGeometries
updateMicroFocus
verticalOffset
verticalScrollbarAction
verticalScrollbarValueChanged
viewOptions
viewportEvent
viewportMargins
viewportSizeHint
visualRegionForSelection
wheelEvent

Signals

currentLayerChanged Emitted when a current layer is changed [signal]

Attributes

actionEvent()
changeEvent()
childEvent()
closeEditor()
closeEvent()
collapseAllNodes(self)

Enhancement of QTreeView.collapseAll() that also records expanded state in layer tree nodes

New in version 2.18.

columnCountChanged()
columnMoved()
columnResized()
commitData()
connectNotify()
contextMenuEvent(self, event: QContextMenuEvent)
create()
currentChanged()
currentGroupNode(self) → QgsLayerTreeGroup

Get current group node. If a layer is current node, the function will return parent group. May be null.

currentLayer(self) → QgsMapLayer

Get currently selected layer. May be null

currentLayerChanged

Emitted when a current layer is changed [signal]

currentLegendNode(self) → QgsLayerTreeModelLegendNode

Get current legend node. May be null if current node is not a legend node.

New in version 2.14.

currentNode(self) → QgsLayerTreeNode

Get current node. May be null

customEvent()
defaultActions(self) → QgsLayerTreeViewDefaultActions

Get access to the default actions that may be used with the tree view

destroy()
dirtyRegionOffset()
disconnectNotify()
dragEnterEvent()
dragLeaveEvent()
dragMoveEvent()
drawBranches()
drawFrame()
drawRow()
drawTree()
dropEvent(self, event: QDropEvent)
dropIndicatorPosition()
edit()
editorDestroyed()
enterEvent()
event()
eventFilter()
executeDelayedItemsLayout()
expandAllNodes(self)

Enhancement of QTreeView.expandAll() that also records expanded state in layer tree nodes

New in version 2.18.

focusInEvent()
focusNextChild()
focusNextPrevChild()
focusOutEvent()
focusPreviousChild()
hideEvent()
horizontalOffset()
horizontalScrollbarAction()
horizontalScrollbarValueChanged()
indexRowSizeHint()
initPainter()
initStyleOption()
inputMethodEvent()
isIndexHidden()
isSignalConnected()
keyPressEvent(self, event: QKeyEvent)
keyReleaseEvent()
layerForIndex(self, index: QModelIndex) → QgsMapLayer
layerTreeModel(self) → QgsLayerTreeModel

Get access to the model casted to QgsLayerTreeModel

leaveEvent()
menuProvider(self) → QgsLayerTreeViewMenuProvider

Return pointer to the context menu provider. May be null

metric()
modelRowsInserted(self, index: QModelIndex, start: int, end: int)
modelRowsRemoved(self)
mouseDoubleClickEvent()
mouseMoveEvent()
mousePressEvent()
mouseReleaseEvent(self, event: QMouseEvent)
moveCursor()
moveEvent()
nativeEvent()
onCurrentChanged(self)
onExpandedChanged(self, node: QgsLayerTreeNode, expanded: bool)
onModelReset(self)
paintEvent()
receivers()
reexpand()
refreshLayerSymbology(self, layerId: str)

Force refresh of layer symbology. Normally not needed as the changes of layer’s renderer are monitored by the model

resizeEvent()
rowHeight()
rowsAboutToBeRemoved()
rowsInserted()
rowsRemoved()
scheduleDelayedItemsLayout()
scrollContentsBy()
scrollDirtyRegion()
selectedIndexes()
selectedLayerNodes(self) → List[QgsLayerTreeLayer]

Return list of selected nodes filtered to just layer nodes

selectedLayers(self) → List[QgsMapLayer]

Get list of selected layers

selectedNodes(self, skipInternal: bool = False) → List[QgsLayerTreeNode]

Return list of selected nodes

Parameters:skipInternal – If true, will ignore nodes which have an ancestor in the selection
selectionChanged()
selectionCommand()
sender()
senderSignalIndex()
setCurrentLayer(self, layer: QgsMapLayer)

Set currently selected layer. Null pointer will deselect any layer.

setDirtyRegion()
setMenuProvider(self, menuProvider: QgsLayerTreeViewMenuProvider)

Set provider for context menu. Takes ownership of the instance

setModel(self, model: QAbstractItemModel)

Overridden setModel() from base class. Only QgsLayerTreeModel is an acceptable model.

setSelection()
setState()
setViewportMargins()
sharedPainter()
showEvent()
sizeHintForColumn()
startDrag()
state()
tabletEvent()
timerEvent()
updateEditorData()
updateEditorGeometries()
updateExpandedStateFromNode(self, node: QgsLayerTreeNode)
updateExpandedStateToNode(self, index: QModelIndex)
updateGeometries()
updateMicroFocus()
verticalOffset()
verticalScrollbarAction()
verticalScrollbarValueChanged()
viewOptions()
viewportEvent()
viewportMargins()
viewportSizeHint()
visualRegionForSelection()
wheelEvent()