34 , mNativeZoomOut( zoomOut )
52 if ( !( e->buttons() & Qt::LeftButton ) )
55 setZoomMode( e->modifiers().testFlag( Qt::AltModifier ) ^
mNativeZoomOut );
62 QColor color( Qt::blue );
79 if ( e->button() != Qt::LeftButton )
88 if ( e->button() != Qt::LeftButton )
91 setZoomMode( e->modifiers().testFlag( Qt::AltModifier ) ^
mNativeZoomOut );
120 const QSize &zoomRectSize =
mZoomRect.size();
122 const QSize &canvasSize = mapSettings.
outputSize();
123 double sfx =
static_cast<double>( zoomRectSize.width() ) / canvasSize.width();
124 double sfy =
static_cast<double>( zoomRectSize.height() ) / canvasSize.height();
125 double sf = std::max( sfx, sfy );
144 void QgsMapToolZoom::setZoomMode(
bool zoomOut,
bool force )
146 if ( !force && zoomOut ==
mZoomOut )
155 if ( e->key() == Qt::Key_Alt )
166 if ( e->key() == Qt::Key_Alt )
Extends QApplication to provide access to QGIS specific resources such as theme paths, database paths etc.
void zoomWithCenter(int x, int y, bool zoomIn)
Zooms in/out with a given center.
void setToCanvasRectangle(QRect rect)
Sets this rubber band to a map canvas rectangle.
A class to represent a 2D point.
A QgsMapMouseEvent is the result of a user interaction with the mouse on a QgsMapCanvas.
const QgsMapSettings & mapSettings() const
Gets access to properties used for map rendering.
void refresh()
Repaints the canvas map.
Map canvas is a class for displaying all GIS data types on a canvas.
The QgsMapSettings class contains configuration for rendering of the map.
As part of the API refactoring and improvements which landed in the Processing API was substantially reworked from the x version This was done in order to allow much of the underlying Processing framework to be ported into c
Perform transforms between map coordinates and device coordinates.
QSize outputSize() const
Returns the size of the resulting map image.
A class for drawing transient features (e.g.
QgsPointXY toMapCoordinates(int x, int y) const
Transform device coordinates to map (world) coordinates.
void zoomByFactor(double scaleFactor, const QgsPointXY *center=nullptr)
Zoom with the factor supplied.
const QgsMapToPixel * getCoordinateTransform()
Gets the current coordinate transform.
void setColor(const QColor &color)
Sets the color for the rubberband.