QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
src
core
annotations
qgsannotationmanager.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsannotationmanager.h
3
----------------------
4
Date : January 2017
5
Copyright : (C) 2017 Nyall Dawson
6
Email : nyall dot dawson at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
16
#ifndef QGSANNOTATIONMANAGER_H
17
#define QGSANNOTATIONMANAGER_H
18
19
#include "qgis_core.h"
20
#include "
qgis.h
"
21
#include <QObject>
22
#include <QDomElement>
23
24
class
QgsReadWriteContext
;
25
class
QgsProject
;
26
class
QgsAnnotation
;
27
class
QgsStyleEntityVisitorInterface
;
28
44
class
CORE_EXPORT
QgsAnnotationManager
:
public
QObject
45
{
46
Q_OBJECT
47
48
public
:
49
54
explicit
QgsAnnotationManager
(
QgsProject
*project
SIP_TRANSFERTHIS
=
nullptr
);
55
56
~
QgsAnnotationManager
()
override
;
57
64
bool
addAnnotation(
QgsAnnotation
*annotation
SIP_TRANSFER
);
65
75
bool
removeAnnotation(
QgsAnnotation
*annotation );
76
81
void
clear();
82
87
QList< QgsAnnotation * > annotations()
const
;
88
95
QList< QgsAnnotation * > cloneAnnotations()
const
SIP_FACTORY
;
96
102
bool
readXml(
const
QDomElement &element,
const
QgsReadWriteContext
&context );
103
108
QDomElement writeXml( QDomDocument &doc,
const
QgsReadWriteContext
&context )
const
;
109
119
bool
accept(
QgsStyleEntityVisitorInterface
*visitor )
const
;
120
121
signals:
122
124
void
annotationAdded
(
QgsAnnotation
*annotation );
125
127
void
annotationRemoved
();
128
130
void
annotationAboutToBeRemoved
(
QgsAnnotation
*annotation );
131
132
private
:
133
134
QgsProject
*mProject =
nullptr
;
135
136
QList< QgsAnnotation * > mAnnotations;
137
138
void
createAnnotationFromXml(
const
QDomElement &element,
const
QgsReadWriteContext
&context );
139
140
};
141
142
#endif // QGSANNOTATIONMANAGER_H
QgsAnnotationManager::annotationAdded
void annotationAdded(QgsAnnotation *annotation)
Emitted when a annotation has been added to the manager.
QgsReadWriteContext
The class is used as a container of context for various read/write operations on other objects.
Definition:
qgsreadwritecontext.h:35
qgis.h
QgsStyleEntityVisitorInterface
An interface for classes which can visit style entity (e.g.
Definition:
qgsstyleentityvisitor.h:34
QgsProject
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition:
qgsproject.h:95
SIP_FACTORY
#define SIP_FACTORY
Definition:
qgis_sip.h:76
QgsAnnotation
Abstract base class for annotation items which are drawn over a map.
Definition:
qgsannotation.h:50
QgsAnnotationManager::annotationAboutToBeRemoved
void annotationAboutToBeRemoved(QgsAnnotation *annotation)
Emitted when an annotation is about to be removed from the manager.
SIP_TRANSFER
#define SIP_TRANSFER
Definition:
qgis_sip.h:36
QgsAnnotationManager
Manages storage of a set of QgsAnnotation annotation objects.
Definition:
qgsannotationmanager.h:45
QgsAnnotationManager::annotationRemoved
void annotationRemoved()
Emitted when an annotation was removed from the manager.
SIP_TRANSFERTHIS
#define SIP_TRANSFERTHIS
Definition:
qgis_sip.h:53
Generated on Sat Oct 24 2020 17:43:09 for QGIS API Documentation by
1.8.20