18#ifndef QGSANNOTATION_H 
   19#define QGSANNOTATION_H 
   59      sipType = sipType_QgsTextAnnotation;
 
   61      sipType = sipType_QgsSvgAnnotation;
 
   63      sipType = sipType_QgsHtmlAnnotation;
 
   71    Q_PROPERTY( 
bool visible READ isVisible WRITE setVisible )
 
   72    Q_PROPERTY( 
bool hasFixedMapPosition READ hasFixedMapPosition WRITE setHasFixedMapPosition )
 
   73    Q_PROPERTY( 
QgsPointXY mapPosition READ mapPosition WRITE setMapPosition )
 
   74    Q_PROPERTY( QSizeF frameSize READ frameSize WRITE setFrameSize )
 
  101    void setVisible( 
bool visible );
 
  118    void setHasFixedMapPosition( 
bool fixed );
 
  134    void setMapPosition( 
const QgsPointXY &position );
 
  163    void setRelativePosition( QPointF position );
 
  170    Q_DECL_DEPRECATED 
void setFrameOffsetFromReferencePoint( QPointF offset ) 
SIP_DEPRECATED;
 
  177    Q_DECL_DEPRECATED QPointF frameOffsetFromReferencePoint() const 
SIP_DEPRECATED;
 
  184    void setFrameOffsetFromReferencePointMm( QPointF offset );
 
  191    QPointF frameOffsetFromReferencePointMm()
 const { 
return mOffsetFromReferencePoint; }
 
  199    Q_DECL_DEPRECATED 
void setFrameSize( QSizeF size ) 
SIP_DEPRECATED;
 
  215    void setFrameSizeMm( QSizeF size );
 
  223    QSizeF frameSizeMm()
 const { 
return mFrameSize; }
 
  230    void setContentsMargin( 
const QgsMargins &margins );
 
  313    virtual void setAssociatedFeature( 
const QgsFeature &feature );
 
  354    virtual QSizeF minimumFrameSize() 
const;
 
  362    void _writeXml( QDomElement &itemElem, QDomDocument &doc, 
const QgsReadWriteContext &context ) 
const;
 
  388    bool mVisible = 
true;
 
  391    bool mHasFixedMapPosition = 
true;
 
  400    QPointF mRelativePosition;
 
  403    QPointF mOffsetFromReferencePoint = QPointF( 13, -13 );
 
  409    std::unique_ptr<QgsMarkerSymbol> mMarkerSymbol;
 
  414    std::unique_ptr<QgsFillSymbol> mFillSymbol;
 
  423    double mSegmentPointWidthMm = 2.64;
 
Abstract base class for annotation items which are drawn over a map.
 
void appearanceChanged()
Emitted whenever the annotation's appearance changes.
 
QgsMargins contentsMargin() const
Returns the margins (in millimeters) between the outside of the frame and the annotation content.
 
QgsCoordinateReferenceSystem mapPositionCrs() const
Returns the CRS of the map position, or an invalid CRS if the annotation does not have a fixed map po...
 
virtual void renderAnnotation(QgsRenderContext &context, QSizeF size) const =0
Renders the annotation's contents to a target /a context at the specified /a size.
 
QgsMarkerSymbol * markerSymbol() const
Returns the symbol that is drawn at the annotation's map position.
 
void moved()
Emitted when the annotation's position has changed and items need to be moved to reflect this.
 
QgsPointXY mapPosition() const
Returns the map position of the annotation, if it is attached to a fixed map position.
 
QgsMapLayer * mapLayer() const
Returns the map layer associated with the annotation.
 
bool hasFixedMapPosition() const
Returns true if the annotation is attached to a fixed map position, or false if the annotation uses a...
 
QgsFeature associatedFeature() const
Returns the feature associated with the annotation, or an invalid feature if none has been set.
 
~QgsAnnotation() override
 
bool isVisible() const
Returns true if the annotation is visible and should be rendered.
 
virtual void readXml(const QDomElement &itemElem, const QgsReadWriteContext &context)=0
Restores the annotation's state from a DOM element.
 
virtual QgsAnnotation * clone() const =0
Clones the annotation, returning a new copy of the annotation reflecting the annotation's current sta...
 
QPointF relativePosition() const
Returns the relative position of the annotation, if it is not attached to a fixed map position.
 
virtual void writeXml(QDomElement &elem, QDomDocument &doc, const QgsReadWriteContext &context) const =0
Writes the annotation state to a DOM element.
 
void mapLayerChanged()
Emitted when the map layer associated with the annotation changes.
 
This class represents a coordinate reference system (CRS).
 
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
 
A fill symbol type, for rendering Polygon and MultiPolygon geometries.
 
An annotation item that embeds HTML content.
 
Base class for all map layer types.
 
The QgsMargins class defines the four margins of a rectangle.
 
A marker symbol type, for rendering Point and MultiPoint geometries.
 
A class to represent a 2D point.
 
The class is used as a container of context for various read/write operations on other objects.
 
Contains information about the context of a rendering operation.
 
An interface for classes which can visit style entity (e.g.
 
An annotation which renders the contents of an SVG file.
 
An annotation item that displays formatted text from a QTextDocument document.
 
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
 
QPointer< QgsMapLayer > QgsWeakMapLayerPointer
Weak pointer for QgsMapLayer.
 
const QgsCoordinateReferenceSystem & crs