QGIS API Documentation 3.99.0-Master (2fe06baccd8)
Loading...
Searching...
No Matches
qgsplotmouseevent.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsplotmouseevent.h
3 ---------------
4 begin : March 2022
5 copyright : (C) 2022 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17#ifndef QGSPLOTMOUSEEVENT_H
18#define QGSPLOTMOUSEEVENT_H
19
20#include "qgis_gui.h"
21#include "qgspointlocator.h"
22#include "qgspointxy.h"
23
24#include <QMouseEvent>
25
26class QgsPlotCanvas;
27
39class GUI_EXPORT QgsPlotMouseEvent : public QMouseEvent
40{
41#ifdef SIP_RUN
43 if ( dynamic_cast<QgsPlotMouseEvent *>( sipCpp ) )
44 sipType = sipType_QgsPlotMouseEvent;
45 else
46 sipType = 0;
48#endif
49
50 public:
57 QgsPlotMouseEvent( QgsPlotCanvas *canvas, QMouseEvent *event );
58
69 QgsPlotMouseEvent( QgsPlotCanvas *canvas, QEvent::Type type, QPoint pos, Qt::MouseButton button = Qt::NoButton, Qt::MouseButtons buttons = Qt::NoButton, Qt::KeyboardModifiers modifiers = Qt::NoModifier );
70
76 QgsPoint mapPoint() const;
77
84
88 bool isSnapped();
89
90 private:
92 QgsPlotCanvas *mCanvas = nullptr;
93
95 QgsPoint mMapPoint;
96
97 bool mHasCachedSnapResult = false;
98 QgsPointXY mSnappedPoint;
99 bool mIsSnapped = false;
100
101 void snapPoint();
102};
103
104#endif // QGSPLOTMOUSEEVENT_H
Plot canvas is a class for displaying interactive 2d charts and plots.
QgsPointXY snappedPoint()
Returns the point snapped to the plot, if possible.
QgsPoint mapPoint() const
Returns the point in map coordinates corresponding to the event.
bool isSnapped()
Returns true if the point can be snapped to the plot.
QgsPlotMouseEvent(QgsPlotCanvas *canvas, QMouseEvent *event)
Creates a new QgsPlotMouseEvent.
Represents a 2D point.
Definition qgspointxy.h:60
Point geometry type, with support for z-dimension and m-values.
Definition qgspoint.h:49
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)
Definition qgis_sip.h:199
#define SIP_END
Definition qgis_sip.h:216