Class: QgsAnnotationManager

Manages storage of a set of QgsAnnotation annotation objects.

QgsAnnotationManager handles the storage, serializing and deserializing of QgsAnnotations. Usually this class is not constructed directly, but rather accessed through a QgsProject via QgsProject.annotationManager().

QgsAnnotationManager retains ownership of all the annotations contained in the manager.

Class Hierarchy

Inheritance diagram of qgis.core.QgsAnnotationManager

Base classes

QObject

class qgis.core.QgsAnnotationManager[source]

Bases: QObject

__init__(project: QgsProject | None = None)

Constructor for QgsAnnotationManager. The project will become the parent object for this manager.

Parameters:

project (Optional[QgsProject] = None)

accept(self, visitor: QgsStyleEntityVisitorInterface | None) bool[source]

Accepts the specified style entity visitor, causing it to visit all style entities associated within the contained annotations.

Returns True if the visitor should continue visiting other objects, or False if visiting should be canceled.

Added in version 3.10.

Parameters:

visitor (Optional[QgsStyleEntityVisitorInterface])

Return type:

bool

addAnnotation(self, annotation: QgsAnnotation | None) bool[source]

Adds an annotation to the manager. Ownership of the annotation is transferred to the manager. Returns True if the addition was successful, or False if the annotation could not be added.

Parameters:

annotation (Optional[QgsAnnotation])

Return type:

bool

signal annotationAboutToBeRemoved[source]

pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL

types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.

signal annotationAdded[source]

pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL

types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.

signal annotationRemoved[source]

pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL

types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.

annotations(self) List[QgsAnnotation]

Returns a list of all annotations contained in the manager.

Return type:

List[QgsAnnotation]

clear(self)[source]

Removes and deletes all annotations from the manager.

cloneAnnotations(self) List[QgsAnnotation]

Returns a list containing clones of all annotations contained in the manager. The caller takes responsibility for deleting all returned annotations.

See also

annotations()

Return type:

List[QgsAnnotation]

readXml(self, element: QDomElement, context: QgsReadWriteContext) bool[source]

Reads the manager’s state from a DOM element, restoring all annotations present in the XML document.

See also

writeXml()

Parameters:
Return type:

bool

removeAnnotation(self, annotation: QgsAnnotation | None) bool[source]

Removes an annotation from the manager. The annotation is deleted. Returns True if the removal was successful, or False if the removal failed (eg as a result of removing an annotation which is not contained in the manager).

See also

addAnnotation()

See also

clear()

Parameters:

annotation (Optional[QgsAnnotation])

Return type:

bool

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

Returns a DOM element representing the state of the manager.

See also

readXml()

Parameters:
Return type:

QDomElement