VTK  9.5.2
vtkInteractorStyleUser.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
23
24#ifndef vtkInteractorStyleUser_h
25#define vtkInteractorStyleUser_h
26
27#include "vtkInteractionStyleModule.h" // For export macro
28#include "vtkInteractorStyle.h"
29#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
30
31// new motion flag
32#define VTKIS_USERINTERACTION 8
33
34VTK_ABI_NAMESPACE_BEGIN
35class VTKINTERACTIONSTYLE_EXPORT VTK_MARSHALAUTO vtkInteractorStyleUser : public vtkInteractorStyle
36{
37public:
40 void PrintSelf(ostream& os, vtkIndent indent) override;
41
43
49 vtkGetVector2Macro(LastPos, int);
51
53
58 vtkGetVector2Macro(OldPos, int);
60
62
66 vtkGetMacro(ShiftKey, int);
67 vtkGetMacro(CtrlKey, int);
69
71
74 vtkGetMacro(Char, int);
76
78
82 vtkGetStringMacro(KeySym);
84
86
90 vtkGetMacro(Button, int);
92
94
97 void OnMouseMove() override;
98 void OnLeftButtonDown() override;
99 void OnLeftButtonUp() override;
100 void OnMiddleButtonDown() override;
101 void OnMiddleButtonUp() override;
102 void OnRightButtonDown() override;
103 void OnRightButtonUp() override;
104 void OnMouseWheelForward() override;
105 void OnMouseWheelBackward() override;
107
109
112 void OnChar() override;
113 void OnKeyPress() override;
114 void OnKeyRelease() override;
116
118
121 void OnExpose() override;
122 void OnConfigure() override;
123 void OnEnter() override;
124 void OnLeave() override;
126
127 void OnTimer() override;
128
129protected:
132
133 int LastPos[2];
134 int OldPos[2];
135
138 int Char;
139 char* KeySym;
141
142private:
144 void operator=(const vtkInteractorStyleUser&) = delete;
145};
146
147VTK_ABI_NAMESPACE_END
148#endif
a simple class to control print indentation
Definition vtkIndent.h:29
void OnRightButtonUp() override
Generic event bindings.
void OnLeave() override
These are more esoteric events, but are useful in some cases.
void OnMouseWheelForward() override
Generic event bindings.
void OnRightButtonDown() override
Generic event bindings.
void OnKeyRelease() override
Keyboard functions.
~vtkInteractorStyleUser() override
void OnMiddleButtonUp() override
Generic event bindings.
void OnEnter() override
These are more esoteric events, but are useful in some cases.
static vtkInteractorStyleUser * New()
void OnMouseWheelBackward() override
Generic event bindings.
void OnExpose() override
These are more esoteric events, but are useful in some cases.
void OnChar() override
Keyboard functions.
void OnTimer() override
OnTimer calls Rotate, Rotate etc which should be overridden by style subclasses.
void OnLeftButtonDown() override
Generic event bindings.
void OnConfigure() override
These are more esoteric events, but are useful in some cases.
void OnKeyPress() override
Keyboard functions.
void OnMouseMove() override
Generic event bindings.
void OnLeftButtonUp() override
Generic event bindings.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void OnMiddleButtonDown() override
Generic event bindings.
#define VTK_MARSHALAUTO