Class: QgsLayerTreeMapCanvasBridge

class qgis.gui.QgsLayerTreeMapCanvasBridge

Bases: PyQt5.QtCore.QObject

The QgsLayerTreeMapCanvasBridge class takes care of updates of layer set for QgsMapCanvas from a layer tree. The class listens to the updates in the layer tree and updates the list of layers for rendering whenever some layers are added, removed, or their visibility changes.

The update of layers is not done immediately - it is postponed, so a series of updates to the layer tree will trigger just one update of canvas layers.

Also allows the client to override the default order of layers. This is useful in advanced cases where the grouping in layer tree should be independent from the actual order in the canvas.

New in version 2.4.

QgsLayerTreeMapCanvasBridge(root: QgsLayerTree, canvas: QgsMapCanvas, parent: QObject = None) Constructor: does not take ownership of the layer tree nor canvas

Methods

autoSetupOnFirstLayer

rtype

bool

childEvent

connectNotify

customEvent

disconnectNotify

isSignalConnected

mapCanvas

rtype

QgsMapCanvas

overviewCanvas

Returns associated overview canvas (may be None)

receivers

rootGroup

rtype

QgsLayerTree

sender

senderSignalIndex

setAutoSetupOnFirstLayer

if enabled, will automatically set full canvas extent and destination CRS + map units when first layer(s) are added

setCanvasLayers

force update of canvas layers from the layer tree.

setOvervewCanvas

param overviewCanvas

setOverviewCanvas

Associates overview canvas with the bridge, so the overview will be updated whenever main canvas is updated

timerEvent

Signals

canvasLayersChanged

Emitted when the set of layers (or order of layers) visible in the canvas changes.

autoSetupOnFirstLayer(self)bool
Return type

bool

canvasLayersChanged

Emitted when the set of layers (or order of layers) visible in the canvas changes.

New in version 3.0: [signal]

Parameters

layers (Iterable[QgsMapLayer]) –

childEvent(self, QChildEvent)
connectNotify(self, QMetaMethod)
customEvent(self, QEvent)
disconnectNotify(self, QMetaMethod)
isSignalConnected(self, QMetaMethod)bool
mapCanvas(self)QgsMapCanvas
Return type

QgsMapCanvas

overviewCanvas(self)QgsMapOverviewCanvas

Returns associated overview canvas (may be None)

New in version 3.0.

Return type

QgsMapOverviewCanvas

receivers(self, PYQT_SIGNAL)int
rootGroup(self)QgsLayerTree
Return type

QgsLayerTree

sender(self)QObject
senderSignalIndex(self)int
setAutoSetupOnFirstLayer(self, enabled: bool)

if enabled, will automatically set full canvas extent and destination CRS + map units when first layer(s) are added

Parameters

enabled (bool) –

setCanvasLayers(self)

force update of canvas layers from the layer tree. Normally this should not be needed to be called.

setOvervewCanvas(self, overviewCanvas: QgsMapOverviewCanvas)
Parameters

overviewCanvas (QgsMapOverviewCanvas) –

setOverviewCanvas(self, overviewCanvas: QgsMapOverviewCanvas)

Associates overview canvas with the bridge, so the overview will be updated whenever main canvas is updated

New in version 3.6.

Parameters

overviewCanvas (QgsMapOverviewCanvas) –

timerEvent(self, QTimerEvent)