VTK  9.7.1
QQuickVTKPinchEvent.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
3 
9 #ifndef QQuickVTKPinchEvent_h
10 #define QQuickVTKPinchEvent_h
11 
12 #include "vtkGUISupportQtQuickModule.h" // For export macro
13 
14 // Qt includes
15 #include <QEvent>
16 #include <QPointF>
17 #include <QVector2D>
18 
19 VTK_ABI_NAMESPACE_BEGIN
20 
21 class VTKGUISUPPORTQTQUICK_EXPORT QQuickVTKPinchEvent : public QEvent
22 {
23 public:
25  {
26  QQUICKVTK_TRANSLATE = 0,
29  QQUICKVTK_NONE
30  };
31 
33 
34  explicit QQuickVTKPinchEvent(QEvent::Type type, PinchTypes pinchType, const QPointF& position,
35  const QVector2D& translation = QVector2D(0, 0), double scale = 1.0, double angle = 0.0);
36 
38 
41  virtual void setPinchEventType(PinchTypes t);
42  virtual PinchTypes pinchEventType();
44 
46 
49  virtual void setPosition(QPointF pos);
50  virtual QPointF position();
52 
54 
57  virtual void setTranslation(QVector2D trans);
58  virtual QVector2D translation();
60 
62 
65  virtual void setScale(double scale);
66  virtual double scale();
68 
70 
73  virtual void setAngle(double angle);
74  virtual double angle();
76 
77 private:
78  PinchTypes m_pinchEventType = QQUICKVTK_NONE;
79  QPointF m_position;
80  QVector2D m_translation;
81  double m_scale = 1.0;
82  double m_angle = 0.0;
83 };
84 
85 VTK_ABI_NAMESPACE_END
86 
87 #endif // end QQuickVTKPinchEvent_h
static const QEvent::Type QQuickVTKPinch
Custom multitouch pinch event handler for QML PinchHandler.