VTK
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 
35 #ifndef __vtkInteractorStyleUser_h
36 #define __vtkInteractorStyleUser_h
37 
38 #include "vtkInteractionStyleModule.h" // For export macro
39 #include "vtkInteractorStyle.h"
40 
41 // new motion flag
42 #define VTKIS_USERINTERACTION 8
43 
45 {
46 public:
47  static vtkInteractorStyleUser *New();
49  void PrintSelf(ostream& os, vtkIndent indent);
50 
52 
56  vtkGetVector2Macro(LastPos,int);
58 
60 
63  vtkGetVector2Macro(OldPos,int);
65 
67 
69  vtkGetMacro(ShiftKey,int);
70  vtkGetMacro(CtrlKey,int);
72 
74 
75  vtkGetMacro(Char,int);
77 
79 
81  vtkGetStringMacro(KeySym);
83 
85 
87  vtkGetMacro(Button,int);
89 
91 
92  virtual void OnMouseMove();
93  virtual void OnLeftButtonDown();
94  virtual void OnLeftButtonUp();
95  virtual void OnMiddleButtonDown();
96  virtual void OnMiddleButtonUp();
97  virtual void OnRightButtonDown();
98  virtual void OnRightButtonUp();
100 
102 
103  virtual void OnChar();
104  virtual void OnKeyPress();
105  virtual void OnKeyRelease();
107 
109 
110  virtual void OnExpose();
111  virtual void OnConfigure();
112  virtual void OnEnter();
113  virtual void OnLeave();
115 
116  virtual void OnTimer();
117 
118 protected:
119 
122 
123  int LastPos[2];
124  int OldPos[2];
125 
126  int ShiftKey;
127  int CtrlKey;
128  int Char;
129  char *KeySym;
130  int Button;
131 
132 private:
133  vtkInteractorStyleUser(const vtkInteractorStyleUser&); // Not implemented.
134  void operator=(const vtkInteractorStyleUser&); // Not implemented.
135 };
136 
137 #endif
virtual void OnLeftButtonDown()
virtual void OnMiddleButtonDown()
virtual void OnRightButtonDown()
virtual void OnLeftButtonUp()
static vtkInteractorStyle * New()
#define VTKINTERACTIONSTYLE_EXPORT
virtual void OnMiddleButtonUp()
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:83
virtual void OnKeyRelease()
virtual void OnKeyPress()
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:619
virtual void OnTimer()
virtual void OnEnter()
virtual void OnRightButtonUp()
virtual void OnExpose()
void PrintSelf(ostream &os, vtkIndent indent)
virtual void OnConfigure()
a simple class to control print indentation
Definition: vtkIndent.h:38
#define vtkGetStringMacro(name)
Definition: vtkSetGet.h:120
#define vtkGetVector2Macro(name, type)
Definition: vtkSetGet.h:260
virtual void OnChar()
provide event-driven interface to the rendering window (defines trackball mode)
virtual void OnLeave()
provides customizable interaction routines
virtual void OnMouseMove()