Class: QgsGroupLayer

class qgis.core.QgsGroupLayer

Bases: QgsMapLayer

A map layer which consists of a set of child layers, where all component layers are rendered as a single flattened object during map renders.

Child layers are never owned by QgsGroupLayer. References to layers in a group are stored as weak references only, which wills be automatically cleaned up whenever the linked child layer is deleted.

New in version 3.24.

QgsGroupLayer(name: str, options: QgsGroupLayer.LayerOptions) Constructor for a new QgsGroupLayer with the specified layer name.

The options argument specifies load-time layer options.

Methods

appendError

Add error message

childEvent

childLayers

Returns the child layers contained by the group.

clone

rtype:

QgsGroupLayer

connectNotify

createMapRenderer

param rendererContext:

customEvent

dataProvider

rtype:

QgsDataProvider

decodedSource

Called by readLayerXML(), used by derived classes to decode provider's specific data source from project files.

disconnectNotify

encodedSource

Called by writeLayerXML(), used by derived classes to encode provider's specific data source to project files.

extent

rtype:

QgsRectangle

hasDependencyCycle

Checks whether a new set of dependencies will introduce a cycle this method is now deprecated and always return False, because circular dependencies are now correctly managed.

htmlMetadata

rtype:

str

invalidateWgs84Extent

Invalidates the WGS84 extent.

isSignalConnected

paintEffect

Returns the current paint effect for the group layer.

prepareLayersForRemovalFromGroup

Prepares all child layers in the group prior to removal from the group.

readCommonStyle

Read style data common to all layer types

readCustomProperties

Read custom properties from project file.

readStyleManager

Read style manager's configuration (if any).

readSymbology

param node:

readXml

param layerNode:

receivers

resolveReferences

param project:

sender

senderSignalIndex

setChildLayers

Sets the child layers contained by the group.

setError

Sets error message

setExtent

Sets the extent

setExtent3D

Sets the extent

setPaintEffect

Sets the current paint effect for the renderer.

setProviderType

Sets the providerType (provider key)

setTransformContext

param context:

setValid

Sets whether layer is valid or not

timerEvent

writeCommonStyle

Write style data common to all layer types

writeCustomProperties

Write custom properties to project file.

writeStyleManager

Write style manager's configuration (if exists).

writeSymbology

param node:

writeXml

param layer_node:

class LayerOptions(transformContext: QgsCoordinateTransformContext)

Bases: sip.wrapper

Constructor for LayerOptions.

QgsGroupLayer.LayerOptions(QgsGroupLayer.LayerOptions)

transformContext
appendError(self, error: QgsErrorMessage)

Add error message

childEvent(self, QChildEvent)
childLayers(self) List[QgsMapLayer]

Returns the child layers contained by the group.

See also

setChildLayers()

Return type:

List[QgsMapLayer]

clone(self) QgsGroupLayer
Return type:

QgsGroupLayer

connectNotify(self, QMetaMethod)
createMapRenderer(self, rendererContext: QgsRenderContext) QgsMapLayerRenderer
Parameters:

rendererContext (QgsRenderContext) –

Return type:

QgsMapLayerRenderer

customEvent(self, QEvent)
dataProvider(self) QgsDataProvider
Return type:

QgsDataProvider

decodedSource(self, source: str, dataProvider: str, context: QgsReadWriteContext) str

Called by readLayerXML(), used by derived classes to decode provider’s specific data source from project files. Typically resolving absolute or relative paths, usernames and passwords or drivers prefixes (“HDF5:”)

Parameters:
  • source – data source to decode, typically read from layer’s DOM element “datasource”

  • dataProvider – string identification of data provider (e.g. “ogr”), typically read from layer’s DOM element

  • context – reading context (e.g. for conversion between relative and absolute paths)

Returns:

decoded source, typically to be used as the layer’s datasource

New in version 3.2.

disconnectNotify(self, QMetaMethod)
encodedSource(self, source: str, context: QgsReadWriteContext) str

Called by writeLayerXML(), used by derived classes to encode provider’s specific data source to project files. Typically resolving absolute or relative paths, usernames and passwords or drivers prefixes (“HDF5:”)

Parameters:
  • source – data source to encode, typically QgsMapLayer.source()

  • context – writing context (e.g. for conversion between relative and absolute paths)

Returns:

encoded source, typically to be written in the DOM element “datasource”

New in version 3.2.

extent(self) QgsRectangle
Return type:

QgsRectangle

hasDependencyCycle(self, Iterable[QgsMapLayerDependency]) bool

Checks whether a new set of dependencies will introduce a cycle this method is now deprecated and always return False, because circular dependencies are now correctly managed.

Deprecated since version QGIS: 3.10

htmlMetadata(self) str
Return type:

str

invalidateWgs84Extent(self)

Invalidates the WGS84 extent. If FlagTrustLayerMetadata is enabled, the extent is not invalidated because we want to trust metadata whatever happens.

New in version 3.20.

isSignalConnected(self, QMetaMethod) bool
paintEffect(self) QgsPaintEffect

Returns the current paint effect for the group layer.

See also

setPaintEffect()

Return type:

QgsPaintEffect

prepareLayersForRemovalFromGroup(self)

Prepares all child layers in the group prior to removal from the group.

This method should be called before removing a group layer from a project, to ensure that the existing child layers are in a state which is compatible with non-group layer children.

New in version 3.30.

readCommonStyle(self, layerElement: QDomElement, context: QgsReadWriteContext, categories: QgsMapLayer.StyleCategories | QgsMapLayer.StyleCategory = QgsMapLayer.AllStyleCategories)

Read style data common to all layer types

readCustomProperties(self, layerNode: QDomNode, keyStartsWith: str = '')

Read custom properties from project file.

Parameters:
  • layerNode – note to read from

  • keyStartsWith – reads only properties starting with the specified string (or all if the string is empty)

readStyleManager(self, layerNode: QDomNode)

Read style manager’s configuration (if any). To be called by subclasses.

readSymbology(self, node: QDomNode, errorMessage: str, context: QgsReadWriteContext, categories: QgsMapLayer.StyleCategories | QgsMapLayer.StyleCategory = QgsMapLayer.AllStyleCategories) bool
Parameters:
Return type:

bool

readXml(self, layerNode: QDomNode, context: QgsReadWriteContext) bool
Parameters:
Return type:

bool

receivers(self, PYQT_SIGNAL) int
resolveReferences(self, project: QgsProject)
Parameters:

project (QgsProject) –

sender(self) QObject
senderSignalIndex(self) int
setChildLayers(self, layers: Iterable[QgsMapLayer])

Sets the child layers contained by the group.

This method does not take ownership of the layers, but rather assigns them to the group. Layers should be already added to the parent QgsProject wherever appropriate.

See also

childLayers()

Parameters:

layers (Iterable[QgsMapLayer]) –

setError(self, error: QgsError)

Sets error message

setExtent(self, rect: QgsRectangle)

Sets the extent

setExtent3D(self, box: QgsBox3D)

Sets the extent

New in version 3.36.

setPaintEffect(self, effect: QgsPaintEffect)

Sets the current paint effect for the renderer.

Ownership is transferred to the renderer.

See also

paintEffect()

Parameters:

effect (QgsPaintEffect) –

setProviderType(self, providerType: str)

Sets the providerType (provider key)

setTransformContext(self, context: QgsCoordinateTransformContext)
Parameters:

context (QgsCoordinateTransformContext) –

setValid(self, valid: bool)

Sets whether layer is valid or not

timerEvent(self, QTimerEvent)
writeCommonStyle(self, layerElement: QDomElement, document: QDomDocument, context: QgsReadWriteContext, categories: QgsMapLayer.StyleCategories | QgsMapLayer.StyleCategory = QgsMapLayer.AllStyleCategories)

Write style data common to all layer types

writeCustomProperties(self, layerNode: QDomNode, doc: QDomDocument)

Write custom properties to project file.

writeStyleManager(self, layerNode: QDomNode, doc: QDomDocument)

Write style manager’s configuration (if exists). To be called by subclasses.

writeSymbology(self, node: QDomNode, doc: QDomDocument, errorMessage: str, a3: QgsReadWriteContext, categories: QgsMapLayer.StyleCategories | QgsMapLayer.StyleCategory = QgsMapLayer.AllStyleCategories) bool
Parameters:
Return type:

bool

writeXml(self, layer_node: QDomNode, doc: QDomDocument, context: QgsReadWriteContext) bool
Parameters:
Return type:

bool