VTK  9.6.1
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
26
27#ifndef vtkInteractorStyleUser_h
28#define vtkInteractorStyleUser_h
29
30#include "vtkInteractionStyleModule.h" // For export macro
31#include "vtkInteractorStyle.h"
32#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
33
34// new motion flag
35#define VTKIS_USERINTERACTION 8
36
37VTK_ABI_NAMESPACE_BEGIN
38class VTKINTERACTIONSTYLE_EXPORT VTK_MARSHALAUTO vtkInteractorStyleUser : public vtkInteractorStyle
39{
40public:
43 void PrintSelf(ostream& os, vtkIndent indent) override;
44
46
52 vtkGetVector2Macro(LastPos, int);
54
56
61 vtkGetVector2Macro(OldPos, int);
63
65
69 vtkGetMacro(ShiftKey, int);
70 vtkGetMacro(CtrlKey, int);
72
74
77 vtkGetMacro(Char, int);
79
81
85 vtkGetStringMacro(KeySym);
87
89
93 vtkGetMacro(Button, int);
95
97
100 void OnMouseMove() override;
101 void OnLeftButtonDown() override;
102 void OnLeftButtonUp() override;
103 void OnMiddleButtonDown() override;
104 void OnMiddleButtonUp() override;
105 void OnRightButtonDown() override;
106 void OnRightButtonUp() override;
107 void OnMouseWheelForward() override;
108 void OnMouseWheelBackward() override;
110
112
115 void OnChar() override;
116 void OnKeyPress() override;
117 void OnKeyRelease() override;
119
121
124 void OnExpose() override;
125 void OnConfigure() override;
126 void OnEnter() override;
127 void OnLeave() override;
129
130 void OnTimer() override;
131
132protected:
135
136 int LastPos[2];
137 int OldPos[2];
138
141 int Char;
142 char* KeySym;
144
145private:
147 void operator=(const vtkInteractorStyleUser&) = delete;
148};
149
150VTK_ABI_NAMESPACE_END
151#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