17#ifndef QGSMAPTOOLMODIFYANNOTATION_H
18#define QGSMAPTOOLMODIFYANNOTATION_H
32class QgsAnnotationItemNodesSpatialIndex;
75 void onCanvasRefreshed();
85 void clearHoveredItem();
86 void clearSelectedItem();
87 void createHoverBand();
88 void createHoveredNodeBand();
89 void createSelectedItemBand();
92 QgsAnnotationItem *annotationItemFromId(
const QString &layerId,
const QString &itemId );
94 void setHoveredItemFromPoint(
const QgsPointXY &mapPoint );
103 Action mCurrentAction = Action::NoAction;
105 std::unique_ptr<QgsSnapIndicator> mSnapIndicator;
108 std::vector< QObjectUniquePtr<QgsRubberBand> > mHoveredItemNodeRubberBands;
111 QList< QgsAnnotationItemNode > mHoveredItemNodes;
118 QPoint mLastHoverPoint;
119 QString mHoveredItemId;
120 QString mHoveredItemLayerId;
123 QString mSelectedItemId;
124 QString mSelectedItemLayerId;
127 std::unique_ptr< QgsAnnotationItemNodesSpatialIndex > mHoveredItemNodesSpatialIndex;
133 bool mRefreshSelectedItemAfterRedraw =
false;
Keeps a pointer to a QObject and deletes it whenever this object is deleted.
Contains information about a node used for editing an annotation item.
Abstract base class for annotation items which are drawn with QgsAnnotationLayers.
Represents a map layer containing a set of georeferenced annotations, e.g.
Map canvas is a class for displaying all GIS data types on a canvas.
A QgsMapMouseEvent is the result of a user interaction with the mouse on a QgsMapCanvas.
A class to represent a 2D point.
A rectangle specified with double values.
Contains information about a rendered annotation item.
A class for drawing transient features (e.g.
Class that shows snapping marker on map canvas for the current snapping match.