Class: QgsMapLayerLegend

An abstract interface for implementations of legends for one map layer.

Note

This is an abstract class, with methods which must be implemented by a subclass.

The following methods must be implemented: createLayerTreeModelLegendNodes()

Class Hierarchy

Inheritance diagram of qgis.core.QgsMapLayerLegend

Base classes

QObject

Subclasses

QgsDefaultMeshLayerLegend

Default legend implementation for mesh layers.

QgsDefaultPointCloudLayerLegend

Default legend implementation for point cloud layers.

QgsDefaultRasterLayerLegend

Default legend implementation for raster layers.

QgsDefaultVectorLayerLegend

Default legend implementation for vector layers.

Abstract Methods

createLayerTreeModelLegendNodes

Returns list of legend nodes to be used for a particular layer tree layer node.

Virtual Methods

In PyQGIS, only methods marked as virtual can be safely overridden in a Python subclass of QgsMapLayerLegend. See the FAQ for more details.

readXml

Reads configuration from a DOM element previously written by writeXml()

writeXml

Writes configuration to a DOM element, to be used later with readXml()

Static Methods

defaultMeshLegend

Create new legend implementation for mesh layer

defaultPointCloudLegend

Create new legend implementation for a point cloud layer.

defaultRasterLegend

Create new legend implementation for raster layer

defaultVectorLegend

Create new legend implementation for vector layer

Signals

itemsChanged

Emitted when existing items/nodes got invalid and should be replaced by new ones

class qgis.core.QgsMapLayerLegend[source]

Bases: QObject

__init__(parent: QObject | None = None)

Constructor for QgsMapLayerLegend

Parameters:

parent (Optional[QObject] = None)

abstract createLayerTreeModelLegendNodes(self, nodeLayer: QgsLayerTreeLayer | None) List[QgsLayerTreeModelLegendNode]

Returns list of legend nodes to be used for a particular layer tree layer node. Ownership is transferred to the caller.

Parameters:

nodeLayer (Optional[QgsLayerTreeLayer])

Return type:

List[QgsLayerTreeModelLegendNode]

static defaultMeshLegend(ml: QgsMeshLayer | None) QgsMapLayerLegend | None[source]

Create new legend implementation for mesh layer

Parameters:

ml (Optional[QgsMeshLayer])

Return type:

Optional[QgsMapLayerLegend]

static defaultPointCloudLegend(layer: QgsPointCloudLayer | None) QgsMapLayerLegend | None[source]

Create new legend implementation for a point cloud layer.

Added in version 3.18.

Parameters:

layer (Optional[QgsPointCloudLayer])

Return type:

Optional[QgsMapLayerLegend]

static defaultRasterLegend(rl: QgsRasterLayer | None) QgsMapLayerLegend | None[source]

Create new legend implementation for raster layer

Parameters:

rl (Optional[QgsRasterLayer])

Return type:

Optional[QgsMapLayerLegend]

static defaultVectorLegend(vl: QgsVectorLayer | None) QgsMapLayerLegend | None[source]

Create new legend implementation for vector layer

Parameters:

vl (Optional[QgsVectorLayer])

Return type:

Optional[QgsMapLayerLegend]

signal itemsChanged[source]

Emitted when existing items/nodes got invalid and should be replaced by new ones

virtual readXml(self, elem: QDomElement, context: QgsReadWriteContext)[source]

Reads configuration from a DOM element previously written by writeXml()

Added in version 3.2.

Parameters:
virtual writeXml(self, doc: QDomDocument, context: QgsReadWriteContext) QDomElement[source]

Writes configuration to a DOM element, to be used later with readXml()

Added in version 3.2.

Parameters:
Return type:

QDomElement