QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsannotationitem.cpp
Go to the documentation of this file.
1/***************************************************************************
2 qgsannotationitem.cpp
3 -----------------
4 begin : August 2021
5 copyright : (C) 2021 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#include "qgsannotationitem.h"
20
22{
24}
25
27{
29}
30
32{
33 return nullptr;
34}
35
36QList<QgsAnnotationItemNode> QgsAnnotationItem::nodes() const
37{
38 return {};
39}
40
42{
43 setEnabled( other->enabled() );
44 setZIndex( other->zIndex() );
47}
48
49bool QgsAnnotationItem::writeCommonProperties( QDomElement &element, QDomDocument &, const QgsReadWriteContext & ) const
50{
51 element.setAttribute( QStringLiteral( "enabled" ), static_cast<int>( enabled() ) );
52 element.setAttribute( QStringLiteral( "zIndex" ), zIndex() );
53 element.setAttribute( QStringLiteral( "useReferenceScale" ), useSymbologyReferenceScale() ? QStringLiteral( "1" ) : QStringLiteral( "0" ) );
54 element.setAttribute( QStringLiteral( "referenceScale" ), qgsDoubleToString( symbologyReferenceScale() ) );
55 return true;
56}
57
58bool QgsAnnotationItem::readCommonProperties( const QDomElement &element, const QgsReadWriteContext & )
59{
60 setEnabled( element.attribute( QStringLiteral( "enabled" ) ).toInt() );
61 setZIndex( element.attribute( QStringLiteral( "zIndex" ) ).toInt() );
62 setUseSymbologyReferenceScale( element.attribute( QStringLiteral( "useReferenceScale" ), QStringLiteral( "0" ) ).toInt() );
63 setSymbologyReferenceScale( element.attribute( QStringLiteral( "referenceScale" ) ).toDouble() );
64 return true;
65}
AnnotationItemEditOperationResult
Results from an edit operation on an annotation item.
Definition: qgis.h:2041
@ Invalid
Operation has invalid parameters for the item, no change occurred.
QFlags< AnnotationItemFlag > AnnotationItemFlags
Annotation item flags.
Definition: qgis.h:2006
Abstract base class for annotation item edit operations.
Encapsulates the transient results of an in-progress annotation edit operation.
Abstract base class for annotation items which are drawn with QgsAnnotationLayers.
bool writeCommonProperties(QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context) const
Writes common properties from the base class into an XML element.
void setUseSymbologyReferenceScale(bool enabled)
Sets whether the annotation item uses a symbology reference scale.
void setZIndex(int index)
Sets the item's z index, which controls the order in which annotation items are rendered in the layer...
bool useSymbologyReferenceScale() const
Returns true if the annotation item uses a symbology reference scale.
void setEnabled(bool enabled)
Sets if the item will be rendered or not in the layer.
bool enabled() const
Returns true if the item is enabled and will be rendered in the layer.
virtual QgsAnnotationItemEditOperationTransientResults * transientEditResults(QgsAbstractAnnotationItemEditOperation *operation)
Retrieves the results of a transient (in progress) edit operation on the item.
void copyCommonProperties(const QgsAnnotationItem *other)
Copies common properties from the base class from an other item.
void setSymbologyReferenceScale(double scale)
Sets the annotation's symbology reference scale.
virtual Qgis::AnnotationItemFlags flags() const
Returns item flags.
virtual QList< QgsAnnotationItemNode > nodes() const
Returns the nodes for the item, used for editing the item.
int zIndex() const
Returns the item's z index, which controls the order in which annotation items are rendered in the la...
virtual Qgis::AnnotationItemEditOperationResult applyEdit(QgsAbstractAnnotationItemEditOperation *operation)
Applies an edit operation to the item.
double symbologyReferenceScale() const
Returns the annotation's symbology reference scale.
bool readCommonProperties(const QDomElement &element, const QgsReadWriteContext &context)
Reads common properties from the base class from the given DOM element.
The class is used as a container of context for various read/write operations on other objects.
QString qgsDoubleToString(double a, int precision=17)
Returns a string representation of a double.
Definition: qgis.h:5124