17#ifndef QGSMAPTOOLMODIFYANNOTATION_H
18#define QGSMAPTOOLMODIFYANNOTATION_H
32class QgsAnnotationItemNodesSpatialIndex;
74 void onCanvasRefreshed();
84 void clearHoveredItem();
85 void clearSelectedItem();
86 void createHoverBand();
87 void createHoveredNodeBand();
88 void createSelectedItemBand();
91 QgsAnnotationItem *annotationItemFromId(
const QString &layerId,
const QString &itemId );
93 void setHoveredItemFromPoint(
const QgsPointXY &mapPoint );
102 Action mCurrentAction = Action::NoAction;
104 std::unique_ptr<QgsSnapIndicator> mSnapIndicator;
107 std::vector<QObjectUniquePtr<QgsRubberBand>> mHoveredItemNodeRubberBands;
110 QList<QgsAnnotationItemNode> mHoveredItemNodes;
117 QPoint mLastHoverPoint;
118 QString mHoveredItemId;
119 QString mHoveredItemLayerId;
122 QString mSelectedItemId;
123 QString mSelectedItemLayerId;
126 std::unique_ptr<QgsAnnotationItemNodesSpatialIndex> mHoveredItemNodesSpatialIndex;
132 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.