|
QGIS API Documentation 3.99.0-Master (a8882ad4560)
|
A map tool for selecting, moving, and rotating annotations in a QgsAnnotationLayer. More...
#include <qgsmaptoolselectannotation.h>

Signals | |
| void | multipleItemsSelected () |
| Emitted when the selected items list has changed and multiple items are selected. | |
| void | selectedItemsChanged () |
| Emitted when the selected items list has changed. | |
| void | selectionCleared () |
| Emitted when the selected items list is cleared. | |
| void | singleItemSelected (QgsAnnotationLayer *layer, const QString &itemId) |
| Emitted when the selected items list has changed and a single item is selected. | |
| Signals inherited from QgsMapToolAdvancedDigitizing | |
| void | transientGeometryChanged (const QgsReferencedGeometry &geometry) |
| Emitted whenever the geometry associated with the tool is changed, including transient (i.e. | |
| Signals inherited from QgsMapTool | |
| void | activated () |
| Emitted when the map tool is activated. | |
| void | deactivated () |
| Emitted when the map tool is deactivated. | |
| void | messageDiscarded () |
| Emitted when the previous message from the tool should be cleared from the application message bar. | |
| void | messageEmitted (const QString &message, Qgis::MessageLevel level=Qgis::MessageLevel::Info) |
| Emitted when a message should be shown to the user in the application message bar. | |
| void | reactivated () |
| Emitted when the map tool is activated, while it is already active. | |
Public Member Functions | |
| QgsMapToolSelectAnnotation (QgsMapCanvas *canvas, QgsAdvancedDigitizingDockWidget *cadDockWidget) | |
| Constructor for QgsMapToolSelectAnnotation. | |
| ~QgsMapToolSelectAnnotation () override | |
| void | activate () override |
| Registers this maptool with the cad dock widget. | |
| void | attemptMoveBy (QgsAnnotationItemRubberBand *annotationItemRubberBand, double deltaX, double deltaY) |
| Attempts to move an annotation item. | |
| void | attemptRotateBy (QgsAnnotationItemRubberBand *annotationItemRubberBand, double deltaDegree) |
| Attempts to rotate am annotation item. | |
| void | attemptSetSceneRect (QgsAnnotationItemRubberBand *annotationItemRubberBand, const QRectF &rect) |
| Attempts to move and resize an annotation item. | |
| void | cadCanvasMoveEvent (QgsMapMouseEvent *event) override |
| Override this method when subclassing this class. | |
| void | cadCanvasPressEvent (QgsMapMouseEvent *event) override |
| Override this method when subclassing this class. | |
| void | cadCanvasReleaseEvent (QgsMapMouseEvent *event) override |
| Override this method when subclassing this class. | |
| void | deactivate () override |
| Unregisters this maptool from the cad dock widget. | |
| void | keyPressEvent (QKeyEvent *event) override |
| Key event for overriding. Default implementation does nothing. | |
| QList< QgsAnnotationItemRubberBand * > | selectedItems () const |
| Returns the current list of selected annotation item rubberband items. | |
| Public Member Functions inherited from QgsAnnotationMapTool | |
| QgsAnnotationMapTool (QgsMapCanvas *canvas, QgsAdvancedDigitizingDockWidget *cadDockWidget) | |
| Constructor for QgsAnnotationMapTool. | |
| ~QgsAnnotationMapTool () override=default | |
| QgsAnnotationItem * | annotationItemFromId (const QString &layerId, const QString &itemId) |
| Returns the annotation item matching a given pair of layer and item IDs. | |
| QgsAnnotationLayer * | annotationLayerFromId (const QString &layerId) |
| Returns the annotation layer matching a given ID. | |
| const QgsRenderedAnnotationItemDetails * | findClosestItemToPoint (const QgsPointXY &mapPoint, const QList< const QgsRenderedAnnotationItemDetails * > &items, QgsRectangle &bounds) |
| Returns the closest item from a list of annotation items to a given map point. | |
| Public Member Functions inherited from QgsMapToolAdvancedDigitizing | |
| QgsMapToolAdvancedDigitizing (QgsMapCanvas *canvas, QgsAdvancedDigitizingDockWidget *cadDockWidget) | |
| Creates an advanced digitizing maptool. | |
| ~QgsMapToolAdvancedDigitizing () override | |
| QgsAdvancedDigitizingDockWidget * | cadDockWidget () const |
| void | canvasMoveEvent (QgsMapMouseEvent *e) override |
| Catch the mouse move event, filters it, transforms it to map coordinates and send it to virtual method. | |
| void | canvasPressEvent (QgsMapMouseEvent *e) override |
| Catch the mouse press event, filters it, transforms it to map coordinates and send it to virtual method. | |
| void | canvasReleaseEvent (QgsMapMouseEvent *e) override |
| Catch the mouse release event, filters it, transforms it to map coordinates and send it to virtual method. | |
| bool | isAdvancedDigitizingAllowed () const |
| Returns whether functionality of advanced digitizing dock widget is currently allowed. | |
| bool | isAutoSnapEnabled () const |
| Returns whether mouse events (press/move/release) should automatically try to snap mouse position (according to the snapping configuration of map canvas) before passing the mouse coordinates to the tool. | |
| virtual QgsMapLayer * | layer () const |
| Returns the layer associated with the map tool. | |
| void | setSnapToLayerGridEnabled (bool snapToLayerGridEnabled) |
| Enables or disables snap to grid of mouse events. | |
| bool | snapToLayerGridEnabled () const |
| Enables or disables snap to grid of mouse events. | |
| bool | useSnappingIndicator () const |
| Returns whether the snapping indicator should automatically be used. | |
| Public Member Functions inherited from QgsMapToolEdit | |
| QgsMapToolEdit (QgsMapCanvas *canvas) | |
| QgsGeometryRubberBand * | createGeometryRubberBand (Qgis::GeometryType geometryType=Qgis::GeometryType::Line, bool alternativeBand=false) const |
| Creates a geometry rubber band with the color/line width from the QGIS settings. | |
| Flags | flags () const override |
| Returns the flags for the map tool. | |
| Public Member Functions inherited from QgsMapTool | |
| ~QgsMapTool () override | |
| QAction * | action () |
Returns associated action with map tool or nullptr if no action is associated. | |
| QAbstractButton * | button () |
Returns associated button with map tool or nullptr if no button is associated. | |
| QgsMapCanvas * | canvas () const |
| returns pointer to the tool's map canvas | |
| virtual void | canvasDoubleClickEvent (QgsMapMouseEvent *e) |
| Mouse double-click event for overriding. Default implementation does nothing. | |
| virtual bool | canvasToolTipEvent (QHelpEvent *e) |
| Tooltip event for overriding. | |
| virtual void | clean () |
| convenient method to clean members | |
| virtual bool | gestureEvent (QGestureEvent *e) |
| gesture event for overriding. Default implementation does nothing. | |
| bool | isActive () const |
| Returns if the current map tool active on the map canvas. | |
| virtual void | keyReleaseEvent (QKeyEvent *e) |
| Key event for overriding. Default implementation does nothing. | |
| virtual void | populateContextMenu (QMenu *menu) |
| Allows the tool to populate and customize the given menu, prior to showing it in response to a right-mouse button click. | |
| virtual bool | populateContextMenuWithEvent (QMenu *menu, QgsMapMouseEvent *event) |
| Allows the tool to populate and customize the given menu, prior to showing it in response to a right-mouse button click. | |
| virtual void | reactivate () |
| Called when the map tool is being activated while it is already active. | |
| void | setAction (QAction *action) |
| Use this to associate a QAction to this maptool. | |
| void | setButton (QAbstractButton *button) |
| Use this to associate a button to this maptool. | |
| virtual void | setCursor (const QCursor &cursor) |
| Sets a user defined cursor. | |
| QgsPointXY | toMapCoordinates (QPoint point) |
| Transforms a point from screen coordinates to map coordinates. | |
| QString | toolName () |
| Emit map tool changed with the old tool. | |
| virtual void | wheelEvent (QWheelEvent *e) |
| Mouse wheel event for overriding. Default implementation does nothing. | |
Additional Inherited Members | |
| Public Types inherited from QgsMapTool | |
| enum | Flag { Transient = 1 << 1 , EditTool = 1 << 2 , AllowZoomRect = 1 << 3 , ShowContextMenu = 1 << 4 } |
| Enumeration of flags that adjust the way the map tool operates. More... | |
| typedef QFlags< Flag > | Flags |
| Static Public Member Functions inherited from QgsMapToolEdit | |
| static double | defaultMValue () |
| Returns default M value. | |
| static double | defaultZValue () |
| Returns default Z value. | |
| Static Public Member Functions inherited from QgsMapTool | |
| static double | searchRadiusMM () |
| Gets search radius in mm. | |
| static double | searchRadiusMU (const QgsRenderContext &context) |
| Gets search radius in map units for given context. | |
| static double | searchRadiusMU (QgsMapCanvas *canvas) |
| Gets search radius in map units for given canvas. | |
| Protected Types inherited from QgsMapToolEdit | |
| enum | TopologicalResult { Success = 0 , InvalidCanvas = 1 , InvalidLayer = 2 } |
| Result of addTopologicalPoints. More... | |
| Protected Member Functions inherited from QgsMapToolAdvancedDigitizing | |
| void | setAdvancedDigitizingAllowed (bool allowed) |
| Sets whether functionality of advanced digitizing dock widget is currently allowed. | |
| void | setAutoSnapEnabled (bool enabled) |
| Sets whether mouse events (press/move/release) should automatically try to snap mouse position This method is protected because it should be a decision of the map tool and not from elsewhere. | |
| void | setUseSnappingIndicator (bool enabled) |
| Sets whether a snapping indicator should automatically be used. | |
| Protected Member Functions inherited from QgsMapToolEdit | |
| TopologicalResult | addTopologicalPoints (const QVector< QgsPoint > &vertices) |
| Adds a list of vertices to other features to keep topology up to date, e.g. | |
| Q_DECL_DEPRECATED TopologicalResult | addTopologicalPoints (const QVector< QgsPointXY > &vertices) |
| Adds a list of vertices to other features to keep topology up to date, e.g. | |
| QgsRubberBand * | createRubberBand (Qgis::GeometryType geometryType=Qgis::GeometryType::Line, bool alternativeBand=false) |
| Creates a rubber band with the color/line width from the QGIS settings. | |
| QgsVectorLayer * | currentVectorLayer () |
| Returns the current vector layer of the map canvas or 0. | |
| void | notifyNotEditableLayer () |
| Display a timed message bar noting the active vector layer is not editable. | |
| void | notifyNotVectorLayer () |
| Display a timed message bar noting the active layer is not vector. | |
| Protected Member Functions inherited from QgsMapTool | |
| QgsMapTool (QgsMapCanvas *canvas) | |
| Constructor takes a map canvas as a parameter. | |
| QgsMapLayer * | layer (const QString &id) |
Returns the map layer with the matching ID, or nullptr if no layers could be found. | |
| void | setToolName (const QString &name) |
| Sets the tool's name. | |
| QPoint | toCanvasCoordinates (const QgsPointXY &point) const |
| Transforms a point from map coordinates to screen coordinates. | |
| QgsPoint | toLayerCoordinates (const QgsMapLayer *layer, const QgsPoint &point) |
| Transforms a point from map coordinates to layer coordinates. | |
| QgsPointXY | toLayerCoordinates (const QgsMapLayer *layer, const QgsPointXY &point) |
| Transforms a point from map coordinates to layer coordinates. | |
| QgsRectangle | toLayerCoordinates (const QgsMapLayer *layer, const QgsRectangle &rect) |
| Transforms a rect from map coordinates to layer coordinates. | |
| QgsPointXY | toLayerCoordinates (const QgsMapLayer *layer, QPoint point) |
| Transforms a point from screen coordinates to layer coordinates. | |
| QgsPoint | toMapCoordinates (const QgsMapLayer *layer, const QgsPoint &point) |
| Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used). | |
| QgsPointXY | toMapCoordinates (const QgsMapLayer *layer, const QgsPointXY &point) |
| Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used). | |
| Static Protected Member Functions inherited from QgsMapToolEdit | |
| static QColor | digitizingFillColor () |
| Returns fill color for rubber bands (from global settings). | |
| static QColor | digitizingStrokeColor () |
| Returns stroke color for rubber bands (from global settings). | |
| static int | digitizingStrokeWidth () |
| Returns stroke width for rubber bands (from global settings). | |
| Protected Attributes inherited from QgsMapToolAdvancedDigitizing | |
| QgsAdvancedDigitizingDockWidget * | mCadDockWidget = nullptr |
| Protected Attributes inherited from QgsMapTool | |
| QAction * | mAction = nullptr |
| Optional pointer to an action that will be checked on map tool activation and unchecked on map tool deactivation. | |
| QAbstractButton * | mButton = nullptr |
| Optional pointer to a button that will be checked on map tool activation and unchecked on map tool deactivation. | |
| QPointer< QgsMapCanvas > | mCanvas |
| The pointer to the map canvas. | |
| QCursor | mCursor |
| The cursor used in the map tool. | |
| QString | mToolName |
| The translated name of the map tool. | |
A map tool for selecting, moving, and rotating annotations in a QgsAnnotationLayer.
Definition at line 111 of file qgsmaptoolselectannotation.h.
|
explicit |
Constructor for QgsMapToolSelectAnnotation.
Definition at line 92 of file qgsmaptoolselectannotation.cpp.
|
override |
Definition at line 100 of file qgsmaptoolselectannotation.cpp.
|
overridevirtual |
Registers this maptool with the cad dock widget.
Reimplemented from QgsMapToolAdvancedDigitizing.
Definition at line 106 of file qgsmaptoolselectannotation.cpp.
| void QgsMapToolSelectAnnotation::attemptMoveBy | ( | QgsAnnotationItemRubberBand * | annotationItemRubberBand, |
| double | deltaX, | ||
| double | deltaY ) |
Attempts to move an annotation item.
| annotationItemRubberBand | the annotation item rubber band |
| deltaX | the X-axis movement in pixel value |
| deltaY | the Y-axis movement in pixel value |
Definition at line 555 of file qgsmaptoolselectannotation.cpp.
| void QgsMapToolSelectAnnotation::attemptRotateBy | ( | QgsAnnotationItemRubberBand * | annotationItemRubberBand, |
| double | deltaDegree ) |
Attempts to rotate am annotation item.
| annotationItemRubberBand | the annotation item rubber band |
| deltaDegree | the rotation value in degree |
Definition at line 593 of file qgsmaptoolselectannotation.cpp.
| void QgsMapToolSelectAnnotation::attemptSetSceneRect | ( | QgsAnnotationItemRubberBand * | annotationItemRubberBand, |
| const QRectF & | rect ) |
Attempts to move and resize an annotation item.
| annotationItemRubberBand | the annotation item rubber band |
| rect | the rectangular area (in scene units) within which the annotation item will fit in |
Definition at line 617 of file qgsmaptoolselectannotation.cpp.
|
overridevirtual |
Override this method when subclassing this class.
This will receive adapted events from the cad system whenever a canvasMoveEvent is triggered and it's not hidden by the cad's construction mode.
| e | Mouse events prepared by the cad system |
Reimplemented from QgsMapToolAdvancedDigitizing.
Definition at line 126 of file qgsmaptoolselectannotation.cpp.
|
overridevirtual |
Override this method when subclassing this class.
This will receive adapted events from the cad system whenever a canvasPressEvent is triggered and it's not hidden by the cad's construction mode.
| e | Mouse events prepared by the cad system |
Reimplemented from QgsMapToolAdvancedDigitizing.
Definition at line 184 of file qgsmaptoolselectannotation.cpp.
|
overridevirtual |
Override this method when subclassing this class.
This will receive adapted events from the cad system whenever a canvasReleaseEvent is triggered and it's not hidden by the cad's construction mode.
| e | Mouse events prepared by the cad system |
Reimplemented from QgsMapToolAdvancedDigitizing.
Definition at line 212 of file qgsmaptoolselectannotation.cpp.
|
overridevirtual |
Unregisters this maptool from the cad dock widget.
Reimplemented from QgsMapToolAdvancedDigitizing.
Definition at line 113 of file qgsmaptoolselectannotation.cpp.
|
overridevirtual |
Key event for overriding. Default implementation does nothing.
Reimplemented from QgsMapTool.
Definition at line 259 of file qgsmaptoolselectannotation.cpp.
|
signal |
Emitted when the selected items list has changed and multiple items are selected.
| QList< QgsAnnotationItemRubberBand * > QgsMapToolSelectAnnotation::selectedItems | ( | ) | const |
Returns the current list of selected annotation item rubberband items.
Definition at line 363 of file qgsmaptoolselectannotation.cpp.
|
signal |
Emitted when the selected items list has changed.
|
signal |
Emitted when the selected items list is cleared.
|
signal |
Emitted when the selected items list has changed and a single item is selected.