3 #include <QApplication> 11 _keep_aspect_ratio(true)
34 static QCursor zoom_cursor(QPixmap(
":/icons/resources/light/zoom_in.png"));
52 QApplication::setOverrideCursor(zoom_cursor);
59 QApplication::restoreOverrideCursor();
77 QApplication::restoreOverrideCursor();
82 QRect rect = QRect( pa[0], pa[
int( pa.count() ) - 1] );
98 const QRectF cr =
canvas()->contentsRect();
99 const double canvas_ratio = cr.width() / cr.height();
100 const double zoom_ratio = zoomRect.width() / zoomRect.height();
102 if( zoom_ratio < canvas_ratio )
104 double new_width = zoomRect.height() * canvas_ratio;
105 double increment = new_width - zoomRect.width();
106 rect.setWidth( new_width );
107 rect.moveLeft( rect.left() - 0.5*increment );
110 double new_height = zoomRect.width() / canvas_ratio;
111 double increment = new_height - zoomRect.height();
112 rect.setHeight( new_height );
113 rect.moveTop( rect.top() - 0.5*increment );
121 return QSizeF(
scaleRect().width() * 0.02,
A pattern for mouse events.
virtual void zoom(const QRectF &)
Zoom in.
virtual QSizeF minZoomSize() const override
Limit zooming by a minimum rectangle.
void setRubberBand(RubberBand)
void setTrackerMode(DisplayMode)
Set the display mode of the tracker.
QRectF invTransform(const QRect &) const
virtual void widgetMouseMoveEvent(QMouseEvent *)
bool mouseMatch(MousePatternCode, const QMouseEvent *) const
Compare a mouse event with an event pattern.
virtual bool accept(QPolygon &) const override
Check and correct a selected rectangle.
virtual void widgetMouseMoveEvent(QMouseEvent *event) override
QwtPlotZoomer provides stacked zooming for a plot widget.
A rectangle ( only for QwtPickerMachine::RectSelection )
virtual void zoom(const QRectF &rect) override
Zoom in.
virtual void widgetMouseReleaseEvent(QMouseEvent *)
virtual bool accept(QPolygon &) const override
Check and correct a selected rectangle.
virtual void widgetMouseReleaseEvent(QMouseEvent *event) override
const QVector< MousePattern > & mousePattern() const
virtual void widgetMousePressEvent(QMouseEvent *event) override
virtual void widgetMousePressEvent(QMouseEvent *)