VTK  9.1.0
vtkInteractorStyleUser.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkInteractorStyleUser.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15
62#ifndef vtkInteractorStyleUser_h
63#define vtkInteractorStyleUser_h
64
65#include "vtkInteractionStyleModule.h" // For export macro
66#include "vtkInteractorStyle.h"
67
68// new motion flag
69#define VTKIS_USERINTERACTION 8
70
71class VTKINTERACTIONSTYLE_EXPORT vtkInteractorStyleUser : public vtkInteractorStyle
72{
73public:
76 void PrintSelf(ostream& os, vtkIndent indent) override;
77
79
85 vtkGetVector2Macro(LastPos, int);
87
89
94 vtkGetVector2Macro(OldPos, int);
96
98
102 vtkGetMacro(ShiftKey, int);
103 vtkGetMacro(CtrlKey, int);
105
107
110 vtkGetMacro(Char, int);
112
114
118 vtkGetStringMacro(KeySym);
120
122
126 vtkGetMacro(Button, int);
128
130
133 void OnMouseMove() override;
134 void OnLeftButtonDown() override;
135 void OnLeftButtonUp() override;
136 void OnMiddleButtonDown() override;
137 void OnMiddleButtonUp() override;
138 void OnRightButtonDown() override;
139 void OnRightButtonUp() override;
140 void OnMouseWheelForward() override;
141 void OnMouseWheelBackward() override;
143
145
148 void OnChar() override;
149 void OnKeyPress() override;
150 void OnKeyRelease() override;
152
154
157 void OnExpose() override;
158 void OnConfigure() override;
159 void OnEnter() override;
160 void OnLeave() override;
162
163 void OnTimer() override;
164
165protected:
168
169 int LastPos[2];
170 int OldPos[2];
171
174 int Char;
175 char* KeySym;
177
178private:
180 void operator=(const vtkInteractorStyleUser&) = delete;
181};
182
183#endif
a simple class to control print indentation
Definition: vtkIndent.h:113
provides customizable interaction routines
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.
provide event-driven interface to the rendering window (defines trackball mode)