18 #ifndef QGSANNOTATIONLINEITEM_H
19 #define QGSANNOTATIONLINEITEM_H
21 #include "qgis_core.h"
43 QString
type()
const override;
64 const
QgsCurve *geometry()
const {
return mCurve.get(); }
93 std::unique_ptr< QgsCurve > mCurve;
94 std::unique_ptr< QgsLineSymbol > mSymbol;
Abstract base class for annotation items which are drawn with QgsAnnotationLayers.
virtual bool writeXml(QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context) const =0
Writes the item's state into an XML element.
virtual QString type() const =0
Returns a unique (untranslated) string identifying the type of item.
virtual void render(QgsRenderContext &context, QgsFeedback *feedback)=0
Renders the item to the specified render context.
An annotation item which renders a line symbol along a line geometry.
~QgsAnnotationLineItem() override
void setGeometry(QgsCurve *geometry)
Sets the geometry of the item.
Abstract base class for curved geometry type.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
A line symbol type, for rendering LineString and MultiLineString geometries.
The class is used as a container of context for various read/write operations on other objects.
A rectangle specified with double values.
Contains information about the context of a rendering operation.