QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
Signals | Public Member Functions | List of all members
QgsMapToolExtent Class Reference

A map tool that emits an extent from a rectangle drawn onto the map canvas. More...

#include <qgsmaptoolextent.h>

Inheritance diagram for QgsMapToolExtent:
Inheritance graph
[legend]

Signals

void extentChanged (const QgsRectangle &extent)
 signal emitted on extent change More...
 
- Signals inherited from QgsMapTool
void activated ()
 signal emitted once the map tool is activated More...
 
void deactivated ()
 signal emitted once the map tool is deactivated More...
 
void messageDiscarded ()
 emit signal to clear previous message More...
 
void messageEmitted (const QString &message, Qgis::MessageLevel=Qgis::MessageLevel::Info)
 emit a message More...
 

Public Member Functions

 QgsMapToolExtent (QgsMapCanvas *canvas)
 constructor More...
 
void activate () override
 called when set as currently active map tool More...
 
void canvasMoveEvent (QgsMapMouseEvent *e) override
 Mouse move event for overriding. Default implementation does nothing. More...
 
void canvasPressEvent (QgsMapMouseEvent *e) override
 Mouse press event for overriding. Default implementation does nothing. More...
 
void canvasReleaseEvent (QgsMapMouseEvent *e) override
 Mouse release event for overriding. Default implementation does nothing. More...
 
void clearRubberBand ()
 Removes the tool's rubber band from the canvas. More...
 
void deactivate () override
 called when map tool is being deactivated More...
 
QgsRectangle extent () const
 Returns the current extent drawn onto the canvas. More...
 
Flags flags () const override
 Returns the flags for the map tool. More...
 
QSize ratio () const
 Returns the current fixed aspect ratio to be used when dragging extent onto the canvas. More...
 
void setRatio (QSize ratio)
 Sets a fixed aspect ratio to be used when dragging extent onto the canvas. More...
 
- Public Member Functions inherited from QgsMapTool
 ~QgsMapTool () override
 
QAction * action ()
 Returns associated action with map tool or nullptr if no action is associated. More...
 
virtual void activate ()
 called when set as currently active map tool More...
 
QAbstractButton * button ()
 Returns associated button with map tool or nullptr if no button is associated. More...
 
QgsMapCanvascanvas () const
 returns pointer to the tool's map canvas More...
 
virtual void canvasDoubleClickEvent (QgsMapMouseEvent *e)
 Mouse double-click event for overriding. Default implementation does nothing. More...
 
virtual void canvasMoveEvent (QgsMapMouseEvent *e)
 Mouse move event for overriding. Default implementation does nothing. More...
 
virtual void canvasPressEvent (QgsMapMouseEvent *e)
 Mouse press event for overriding. Default implementation does nothing. More...
 
virtual void canvasReleaseEvent (QgsMapMouseEvent *e)
 Mouse release event for overriding. Default implementation does nothing. More...
 
virtual bool canvasToolTipEvent (QHelpEvent *e)
 Tooltip event for overriding. More...
 
virtual void clean ()
 convenient method to clean members More...
 
virtual void deactivate ()
 called when map tool is being deactivated More...
 
virtual Flags flags () const
 Returns the flags for the map tool. More...
 
virtual bool gestureEvent (QGestureEvent *e)
 gesture event for overriding. Default implementation does nothing. More...
 
bool isActive () const
 Returns if the current map tool active on the map canvas. More...
 
virtual void keyPressEvent (QKeyEvent *e)
 Key event for overriding. Default implementation does nothing. More...
 
virtual void keyReleaseEvent (QKeyEvent *e)
 Key event for overriding. Default implementation does nothing. More...
 
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. More...
 
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. More...
 
void setAction (QAction *action)
 Use this to associate a QAction to this maptool. More...
 
void setButton (QAbstractButton *button)
 Use this to associate a button to this maptool. More...
 
virtual void setCursor (const QCursor &cursor)
 Sets a user defined cursor. More...
 
QgsPointXY toMapCoordinates (QPoint point)
 Transforms a point from screen coordinates to map coordinates. More...
 
QString toolName ()
 Emit map tool changed with the old tool. More...
 
virtual void wheelEvent (QWheelEvent *e)
 Mouse wheel event for overriding. Default implementation does nothing. More...
 

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...
 
- Static Public Member Functions inherited from QgsMapTool
static double searchRadiusMM ()
 Gets search radius in mm. More...
 
static double searchRadiusMU (const QgsRenderContext &context)
 Gets search radius in map units for given context. More...
 
static double searchRadiusMU (QgsMapCanvas *canvas)
 Gets search radius in map units for given canvas. More...
 
- Protected Member Functions inherited from QgsMapTool
 QgsMapTool (QgsMapCanvas *canvas)
 Constructor takes a map canvas as a parameter. More...
 
QgsMapLayerlayer (const QString &id)
 Returns the map layer with the matching ID, or nullptr if no layers could be found. More...
 
void setToolName (const QString &name)
 Sets the tool's name. More...
 
QPoint toCanvasCoordinates (const QgsPointXY &point) const
 Transforms a point from map coordinates to screen coordinates. More...
 
QgsPoint toLayerCoordinates (const QgsMapLayer *layer, const QgsPoint &point)
 Transforms a point from map coordinates to layer coordinates. More...
 
QgsPointXY toLayerCoordinates (const QgsMapLayer *layer, const QgsPointXY &point)
 Transforms a point from map coordinates to layer coordinates. More...
 
QgsRectangle toLayerCoordinates (const QgsMapLayer *layer, const QgsRectangle &rect)
 Transforms a rect from map coordinates to layer coordinates. More...
 
QgsPointXY toLayerCoordinates (const QgsMapLayer *layer, QPoint point)
 Transforms a point from screen coordinates to layer coordinates. More...
 
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). More...
 
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). More...
 
- 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. More...
 
QAbstractButton * mButton = nullptr
 Optional pointer to a button that will be checked on map tool activation and unchecked on map tool deactivation. More...
 
QPointer< QgsMapCanvasmCanvas
 The pointer to the map canvas. More...
 
QCursor mCursor
 The cursor used in the map tool. More...
 
QString mToolName
 The translated name of the map tool. More...
 

Detailed Description

A map tool that emits an extent from a rectangle drawn onto the map canvas.

Since
QGIS 3.0

Definition at line 33 of file qgsmaptoolextent.h.

Constructor & Destructor Documentation

◆ QgsMapToolExtent()

QgsMapToolExtent::QgsMapToolExtent ( QgsMapCanvas canvas)

constructor

Definition at line 24 of file qgsmaptoolextent.cpp.

Member Function Documentation

◆ activate()

void QgsMapToolExtent::activate ( )
overridevirtual

called when set as currently active map tool

Reimplemented from QgsMapTool.

Definition at line 30 of file qgsmaptoolextent.cpp.

◆ canvasMoveEvent()

void QgsMapToolExtent::canvasMoveEvent ( QgsMapMouseEvent e)
overridevirtual

Mouse move event for overriding. Default implementation does nothing.

Reimplemented from QgsMapTool.

Definition at line 41 of file qgsmaptoolextent.cpp.

◆ canvasPressEvent()

void QgsMapToolExtent::canvasPressEvent ( QgsMapMouseEvent e)
overridevirtual

Mouse press event for overriding. Default implementation does nothing.

Reimplemented from QgsMapTool.

Definition at line 62 of file qgsmaptoolextent.cpp.

◆ canvasReleaseEvent()

void QgsMapToolExtent::canvasReleaseEvent ( QgsMapMouseEvent e)
overridevirtual

Mouse release event for overriding. Default implementation does nothing.

Reimplemented from QgsMapTool.

Definition at line 71 of file qgsmaptoolextent.cpp.

◆ clearRubberBand()

void QgsMapToolExtent::clearRubberBand ( )

Removes the tool's rubber band from the canvas.

Since
QGIS 3.20

Definition at line 97 of file qgsmaptoolextent.cpp.

◆ deactivate()

void QgsMapToolExtent::deactivate ( )
overridevirtual

called when map tool is being deactivated

Reimplemented from QgsMapTool.

Definition at line 35 of file qgsmaptoolextent.cpp.

◆ extent()

QgsRectangle QgsMapToolExtent::extent ( ) const

Returns the current extent drawn onto the canvas.

Definition at line 85 of file qgsmaptoolextent.cpp.

◆ extentChanged

void QgsMapToolExtent::extentChanged ( const QgsRectangle extent)
signal

signal emitted on extent change

◆ flags()

Flags QgsMapToolExtent::flags ( ) const
inlineoverridevirtual

Returns the flags for the map tool.

Since
QGIS 2.16

Reimplemented from QgsMapTool.

Definition at line 42 of file qgsmaptoolextent.h.

◆ ratio()

QSize QgsMapToolExtent::ratio ( ) const
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 60 of file qgsmaptoolextent.h.

◆ setRatio()

void QgsMapToolExtent::setRatio ( QSize  ratio)
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.

Parameters
ratioaspect ratio's width and height

Definition at line 54 of file qgsmaptoolextent.h.


The documentation for this class was generated from the following files: