QGIS API Documentation  2.0.1-Dufour
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
QgsMapToolTouch Class Reference

A map tool for panning the map. More...

#include <qgsmaptooltouch.h>

Inheritance diagram for QgsMapToolTouch:
Inheritance graph
[legend]
Collaboration diagram for QgsMapToolTouch:
Collaboration graph
[legend]

Public Member Functions

 QgsMapToolTouch (QgsMapCanvas *canvas)
 constructor
 ~QgsMapToolTouch ()
void activate ()
 called when set as currently active map tool
void deactivate ()
 called when map tool is being deactivated
virtual void canvasMoveEvent (QMouseEvent *e)
 Overridden mouse move event.
virtual void canvasReleaseEvent (QMouseEvent *e)
 Overridden mouse release event.
virtual void canvasDoubleClickEvent (QMouseEvent *e)
 Overridden Mouse double click event.
virtual bool isTransient ()
 Check whether this MapTool performs a zoom or pan operation.
- Public Member Functions inherited from QgsMapTool
virtual ~QgsMapTool ()
 virtual destructor
virtual void canvasPressEvent (QMouseEvent *e)
 Mouse press event for overriding. Default implementation does nothing.
virtual void wheelEvent (QWheelEvent *e)
 Mouse wheel event for overriding.
virtual void keyPressEvent (QKeyEvent *e)
 Key event for overriding. Default implementation does nothing.
virtual void keyReleaseEvent (QKeyEvent *e)
 Key event for overriding.
virtual void renderComplete ()
 Called when rendering has finished. Default implementation does nothing.
void setAction (QAction *action)
 Use this to associate a QAction to this maptool.
QAction * action ()
 Return associated action with map tool or NULL if no action is associated.
void setButton (QAbstractButton *button)
 Use this to associate a button to this maptool.
QAbstractButton * button ()
 Return associated button with map tool or NULL if no button is associated.
virtual void setCursor (QCursor cursor)
 Set a user defined cursor.
virtual bool isEditTool ()
 Check whether this MapTool performs an edit operation.
QgsMapCanvascanvas ()
 returns pointer to the tool's map canvas

Private Member Functions

bool gestureEvent (QGestureEvent *event)
void pinchTriggered (QPinchGesture *gesture)

Private Attributes

bool mDragging
 Flag to indicate a map canvas drag operation is taking place.
bool mPinching
 Flag to indicate a pinch gesture is taking place.

Additional Inherited Members

- Protected Member Functions inherited from QgsMapTool
 QgsMapTool (QgsMapCanvas *canvas)
 constructor takes map canvas as a parameter
QgsPoint toMapCoordinates (const QPoint &point)
 transformation from screen coordinates to map coordinates
QgsPoint toLayerCoordinates (QgsMapLayer *layer, const QPoint &point)
 transformation from screen coordinates to layer's coordinates
QgsPoint toLayerCoordinates (QgsMapLayer *layer, const QgsPoint &point)
 transformation from map coordinates to layer's coordinates
QgsPoint toMapCoordinates (QgsMapLayer *layer, const QgsPoint &point)
 transformation from layer's coordinates to map coordinates (which is different in case reprojection is used)
QgsRectangle toLayerCoordinates (QgsMapLayer *layer, const QgsRectangle &rect)
 trnasformation of the rect from map coordinates to layer's coordinates
QPoint toCanvasCoordinates (const QgsPoint &point)
 transformation from map coordinates to screen coordinates
- Protected Attributes inherited from QgsMapTool
QgsMapCanvasmCanvas
 pointer to map canvas
QCursor mCursor
 cursor used in map tool
QAction * mAction
 optionally map tool can have pointer to action which will be used to set that action as active
QAbstractButton * mButton
 optionally map tool can have pointer to a button which will be used to set that action as active

Detailed Description

A map tool for panning the map.

See Also
QgsMapTool

Definition at line 30 of file qgsmaptooltouch.h.

Constructor & Destructor Documentation

QgsMapToolTouch::QgsMapToolTouch ( QgsMapCanvas canvas)

constructor

Definition at line 26 of file qgsmaptooltouch.cpp.

QgsMapToolTouch::~QgsMapToolTouch ( )

Definition at line 35 of file qgsmaptooltouch.cpp.

References QgsMapTool::mCanvas.

Member Function Documentation

void QgsMapToolTouch::activate ( )
virtual

called when set as currently active map tool

Reimplemented from QgsMapTool.

Definition at line 40 of file qgsmaptooltouch.cpp.

References QgsMapTool::mCanvas.

void QgsMapToolTouch::canvasDoubleClickEvent ( QMouseEvent *  e)
virtual

Overridden Mouse double click event.

Reimplemented from QgsMapTool.

Definition at line 87 of file qgsmaptooltouch.cpp.

References QgsMapTool::mCanvas, mPinching, and QgsMapCanvas::zoomWithCenter().

void QgsMapToolTouch::canvasMoveEvent ( QMouseEvent *  e)
virtual

Overridden mouse move event.

Reimplemented from QgsMapTool.

Definition at line 52 of file qgsmaptooltouch.cpp.

References QgsMapTool::mCanvas, mDragging, mPinching, and QgsMapCanvas::panAction().

void QgsMapToolTouch::canvasReleaseEvent ( QMouseEvent *  e)
virtual
void QgsMapToolTouch::deactivate ( )
virtual

called when map tool is being deactivated

Reimplemented from QgsMapTool.

Definition at line 46 of file qgsmaptooltouch.cpp.

References QgsMapTool::mCanvas.

bool QgsMapToolTouch::gestureEvent ( QGestureEvent *  event)
private

Definition at line 95 of file qgsmaptooltouch.cpp.

References mPinching, and pinchTriggered().

virtual bool QgsMapToolTouch::isTransient ( )
inlinevirtual

Check whether this MapTool performs a zoom or pan operation.

If it does, we will be able to perform the zoom and then resume operations with the original / previously used tool.

Reimplemented from QgsMapTool.

Definition at line 50 of file qgsmaptooltouch.h.

void QgsMapToolTouch::pinchTriggered ( QPinchGesture *  gesture)
private

Member Data Documentation

bool QgsMapToolTouch::mDragging
private

Flag to indicate a map canvas drag operation is taking place.

Definition at line 55 of file qgsmaptooltouch.h.

Referenced by canvasMoveEvent(), and canvasReleaseEvent().

bool QgsMapToolTouch::mPinching
private

Flag to indicate a pinch gesture is taking place.

Definition at line 57 of file qgsmaptooltouch.h.

Referenced by canvasDoubleClickEvent(), canvasMoveEvent(), canvasReleaseEvent(), gestureEvent(), and pinchTriggered().


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