QGIS API Documentation
2.0.1-Dufour
|
A map tool for panning the map. More...
#include <qgsmaptooltouch.h>
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. | |
QgsMapCanvas * | canvas () |
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 | |
QgsMapCanvas * | mCanvas |
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 |
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.
|
virtual |
called when set as currently active map tool
Reimplemented from QgsMapTool.
Definition at line 40 of file qgsmaptooltouch.cpp.
References QgsMapTool::mCanvas.
|
virtual |
Overridden Mouse double click event.
Reimplemented from QgsMapTool.
Definition at line 87 of file qgsmaptooltouch.cpp.
References QgsMapTool::mCanvas, mPinching, and QgsMapCanvas::zoomWithCenter().
|
virtual |
Overridden mouse move event.
Reimplemented from QgsMapTool.
Definition at line 52 of file qgsmaptooltouch.cpp.
References QgsMapTool::mCanvas, mDragging, mPinching, and QgsMapCanvas::panAction().
|
virtual |
Overridden mouse release event.
Reimplemented from QgsMapTool.
Definition at line 65 of file qgsmaptooltouch.cpp.
References QgsMapCanvas::getCoordinateTransform(), QgsMapTool::mCanvas, mDragging, mPinching, QgsMapCanvas::panActionEnd(), QgsMapCanvas::refresh(), QgsMapCanvas::setExtent(), and QgsMapToPixel::toMapPoint().
|
virtual |
called when map tool is being deactivated
Reimplemented from QgsMapTool.
Definition at line 46 of file qgsmaptooltouch.cpp.
References QgsMapTool::mCanvas.
|
private |
Definition at line 95 of file qgsmaptooltouch.cpp.
References mPinching, and pinchTriggered().
|
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.
|
private |
Definition at line 107 of file qgsmaptooltouch.cpp.
References QgsMapCanvas::extent(), QgsMapCanvas::getCoordinateTransform(), QgsMapTool::mCanvas, mPinching, QgsMapCanvas::refresh(), QgsRectangle::scale(), QgsMapCanvas::setExtent(), QgsMapToPixel::toMapPoint(), and QgsMapCanvas::zoomOut().
Referenced by gestureEvent().
|
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().
|
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().