QGIS API Documentation 3.41.0-Master (3440c17df1d)
|
A map tool that emits an extent from a rectangle drawn onto the map canvas. More...
#include <qgsmaptoolextent.h>
Signals | |
void | extentChanged (const QgsRectangle &extent) |
signal emitted on extent change | |
Signals inherited from QgsMapTool | |
void | activated () |
signal emitted once the map tool is activated | |
void | deactivated () |
signal emitted once the map tool is deactivated | |
void | messageDiscarded () |
emit signal to clear previous message | |
void | messageEmitted (const QString &message, Qgis::MessageLevel=Qgis::MessageLevel::Info) |
emit a message | |
void | reactivated () |
Public Member Functions | |
QgsMapToolExtent (QgsMapCanvas *canvas) | |
constructor | |
void | activate () override |
called when set as currently active map tool | |
void | canvasMoveEvent (QgsMapMouseEvent *e) override |
Mouse move event for overriding. Default implementation does nothing. | |
void | canvasPressEvent (QgsMapMouseEvent *e) override |
Mouse press event for overriding. Default implementation does nothing. | |
void | canvasReleaseEvent (QgsMapMouseEvent *e) override |
Mouse release event for overriding. Default implementation does nothing. | |
void | clearRubberBand () |
Removes the tool's rubber band from the canvas. | |
void | deactivate () override |
called when map tool is being deactivated | |
QgsRectangle | extent () const |
Returns the current extent drawn onto the canvas. | |
Flags | flags () const override |
Returns the flags for the map tool. | |
QSize | ratio () const |
Returns the current fixed aspect ratio to be used when dragging extent onto the canvas. | |
void | setRatio (QSize ratio) |
Sets a fixed aspect ratio to be used when dragging extent onto the canvas. | |
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 | keyPressEvent (QKeyEvent *e) |
Key event for overriding. Default implementation does nothing. | |
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 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 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). | |
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 that emits an extent from a rectangle drawn onto the map canvas.
Definition at line 32 of file qgsmaptoolextent.h.
QgsMapToolExtent::QgsMapToolExtent | ( | QgsMapCanvas * | canvas | ) |
constructor
Definition at line 24 of file qgsmaptoolextent.cpp.
|
overridevirtual |
called when set as currently active map tool
Reimplemented from QgsMapTool.
Definition at line 30 of file qgsmaptoolextent.cpp.
|
overridevirtual |
Mouse move event for overriding. Default implementation does nothing.
Reimplemented from QgsMapTool.
Definition at line 41 of file qgsmaptoolextent.cpp.
|
overridevirtual |
Mouse press event for overriding. Default implementation does nothing.
Reimplemented from QgsMapTool.
Definition at line 62 of file qgsmaptoolextent.cpp.
|
overridevirtual |
Mouse release event for overriding. Default implementation does nothing.
Reimplemented from QgsMapTool.
Definition at line 71 of file qgsmaptoolextent.cpp.
void QgsMapToolExtent::clearRubberBand | ( | ) |
Removes the tool's rubber band from the canvas.
Definition at line 97 of file qgsmaptoolextent.cpp.
|
overridevirtual |
called when map tool is being deactivated
Reimplemented from QgsMapTool.
Definition at line 35 of file qgsmaptoolextent.cpp.
QgsRectangle QgsMapToolExtent::extent | ( | ) | const |
Returns the current extent drawn onto the canvas.
Definition at line 85 of file qgsmaptoolextent.cpp.
|
signal |
signal emitted on extent change
|
inlineoverridevirtual |
Returns the flags for the map tool.
Reimplemented from QgsMapTool.
Definition at line 41 of file qgsmaptoolextent.h.
|
inline |
Returns the current fixed aspect ratio to be used when dragging extent onto the canvas.
If the aspect ratio isn't fixed, the width and height will be set to zero.
Definition at line 59 of file qgsmaptoolextent.h.
|
inline |
Sets a fixed aspect ratio to be used when dragging extent onto the canvas.
To unset a fixed aspect ratio, set the width and height to zero.
ratio | aspect ratio's width and height |
Definition at line 53 of file qgsmaptoolextent.h.