Class: QgsAnnotationLayer

class qgis.core.QgsAnnotationLayer

Bases: QgsMapLayer

Represents a map layer containing a set of georeferenced annotations, e.g. markers, lines, polygons or text items.

Annotation layers store a set of QgsAnnotationItem items, which are rendered according to the item’s z-order.

New in version 3.16.

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

The options argument specifies load-time layer options.

Methods

addItem

Adds an item to the layer.

appendError

Add error message

applyEdit

Applies an edit operation to the layer.

childEvent

clear

Removes all items from the layer.

clone

rtype:

QgsAnnotationLayer

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.

isEditable

rtype:

bool

isEmpty

Returns True if the annotation layer is empty and contains no annotations.

isSignalConnected

item

Returns the item with the specified id, or None if no matching item was found.

items

Returns a map of items contained in the layer, by unique item ID.

itemsInBounds

Returns a list of the IDs of all annotation items within the specified bounds (in layer CRS), when rendered using the given render context.

paintEffect

Returns the current paint effect for the layer.

properties

rtype:

Qgis.MapLayerProperties

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

removeItem

Removes (and deletes) the item with matching id.

replaceItem

Replaces the existing item with matching id with a new item.

reset

Resets the annotation layer to a default state, and clears all items from it.

sender

senderSignalIndex

setError

Sets error message

setExtent

Sets the extent

setPaintEffect

Sets the current paint effect for the layer.

setProviderType

Sets the providerType (provider key)

setTransformContext

param context:

setValid

Sets whether layer is valid or not

supportsEditing

rtype:

bool

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.

QgsAnnotationLayer.LayerOptions(QgsAnnotationLayer.LayerOptions)

transformContext
addItem(self, item: QgsAnnotationItem) str

Adds an item to the layer.

Ownership of item is transferred to the layer.

Returns the unique ID assigned to the item.

Parameters:

item (QgsAnnotationItem) –

Return type:

str

appendError(self, error: QgsErrorMessage)

Add error message

applyEdit(self, operation: QgsAbstractAnnotationItemEditOperation) Qgis.AnnotationItemEditOperationResult

Applies an edit operation to the layer.

Returns True if the operation was successfully applied.

New in version 3.22.

Parameters:

operation (QgsAbstractAnnotationItemEditOperation) –

Return type:

Qgis.AnnotationItemEditOperationResult

childEvent(self, QChildEvent)
clear(self)

Removes all items from the layer.

clone(self) QgsAnnotationLayer
Return type:

QgsAnnotationLayer

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.

isEditable(self) bool
Return type:

bool

isEmpty(self) bool

Returns True if the annotation layer is empty and contains no annotations.

Return type:

bool

isSignalConnected(self, QMetaMethod) bool
item(self, id: str) QgsAnnotationItem

Returns the item with the specified id, or None if no matching item was found.

New in version 3.22.

Parameters:

id (str) –

Return type:

QgsAnnotationItem

items(self) object

Returns a map of items contained in the layer, by unique item ID.

This map contains references to items owned by the layer, and ownership of these remains with the layer.

Return type:

object

itemsInBounds(self, bounds: QgsRectangle, context: QgsRenderContext, feedback: QgsFeedback = None) List[str]

Returns a list of the IDs of all annotation items within the specified bounds (in layer CRS), when rendered using the given render context.

The optional feedback argument can be used to cancel the search early.

New in version 3.22.

Parameters:
Return type:

List[str]

paintEffect(self) QgsPaintEffect

Returns the current paint effect for the layer.

See also

setPaintEffect()

New in version 3.22.

Return type:

QgsPaintEffect

properties(self) Qgis.MapLayerProperties
Return type:

Qgis.MapLayerProperties

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

Read style data common to all layer types

New in version 3.0.

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
removeItem(self, id: str) bool

Removes (and deletes) the item with matching id.

Parameters:

id (str) –

Return type:

bool

replaceItem(self, id: str, item: QgsAnnotationItem)

Replaces the existing item with matching id with a new item.

Ownership of item is transferred to the layer.

New in version 3.22.

Parameters:
reset(self)

Resets the annotation layer to a default state, and clears all items from it.

sender(self) QObject
senderSignalIndex(self) int
setError(self, error: QgsError)

Sets error message

setExtent(self, rect: QgsRectangle)

Sets the extent

setPaintEffect(self, effect: QgsPaintEffect)

Sets the current paint effect for the layer.

Ownership is transferred to the renderer.

See also

paintEffect()

New in version 3.22.

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

supportsEditing(self) bool
Return type:

bool

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

New in version 3.0.

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