Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkInteractorStyleUser Class Reference

#include <vtkInteractorStyleUser.h>

Inheritance diagram for vtkInteractorStyleUser:

vtkInteractorStyle vtkInteractorObserver vtkObject vtkObjectBase List of all members.

Detailed Description

provides customizable interaction routines

Date
2002/11/22 16:27:05
Revision
1.30

The most common way to customize user interaction is to write a subclass of vtkInteractorStyle: vtkInteractorStyleUser allows you to customize the interaction to without subclassing vtkInteractorStyle. This is particularly useful for setting up custom interaction modes in scripting languages such as Tcl and Python. This class allows you to hook into the MouseMove, ButtonPress/Release, KeyPress/Release, etc. events. If you want to hook into just a single mouse button, but leave the interaction modes for the others unchanged, you must use e.g. SetMiddleButtonPressMethod() instead of the more general SetButtonPressMethod().

Events:
vtkCommand::KeyPressEvent vtkCommand::ConfigureEvent vtkCommand::MiddleButtonPressEvent vtkCommand::KeyReleaseEvent vtkCommand::UserEvent vtkCommand::EnterEvent vtkCommand::MiddleButtonReleaseEvent vtkCommand::RightButtonPressEvent vtkCommand::CharEvent vtkCommand::MouseMoveEvent vtkCommand::ExposeEvent vtkCommand::TimerEvent vtkCommand::LeftButtonPressEvent vtkCommand::RightButtonReleaseEvent vtkCommand::LeaveEvent vtkCommand::LeftButtonReleaseEvent
Examples:
vtkInteractorStyleUser (Examples)

Definition at line 50 of file vtkInteractorStyleUser.h.

Public Types

typedef vtkInteractorStyle Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void OnTimer ()
void SetMouseMoveMethod (void(*f)(void *), void *arg)
void SetMouseMoveMethodArgDelete (void(*f)(void *))
void SetButtonPressMethod (void(*f)(void *), void *arg)
void SetButtonPressMethodArgDelete (void(*f)(void *))
void SetButtonReleaseMethod (void(*f)(void *), void *arg)
void SetButtonReleaseMethodArgDelete (void(*f)(void *))
void SetKeyPressMethod (void(*f)(void *), void *arg)
void SetKeyPressMethodArgDelete (void(*f)(void *))
void SetKeyReleaseMethod (void(*f)(void *), void *arg)
void SetKeyReleaseMethodArgDelete (void(*f)(void *))
void SetCharMethod (void(*f)(void *), void *arg)
void SetCharMethodArgDelete (void(*f)(void *))
void SetConfigureMethod (void(*f)(void *), void *arg)
void SetConfigureMethodArgDelete (void(*f)(void *))
void SetExposeMethod (void(*f)(void *), void *arg)
void SetExposeMethodArgDelete (void(*f)(void *))
void SetEnterMethod (void(*f)(void *), void *arg)
void SetEnterMethodArgDelete (void(*f)(void *))
void SetLeaveMethod (void(*f)(void *), void *arg)
void SetLeaveMethodArgDelete (void(*f)(void *))
void SetTimerMethod (void(*f)(void *), void *arg)
void SetTimerMethodArgDelete (void(*f)(void *))
void SetUserInteractionMethod (void(*f)(void *), void *arg)
void SetUserInteractionMethodArgDelete (void(*f)(void *))
void StartUserInteraction ()
void EndUserInteraction ()
virtual int * GetLastPos ()
virtual void GetLastPos (int &, int &)
virtual void GetLastPos (int[2])
virtual int * GetOldPos ()
virtual void GetOldPos (int &, int &)
virtual void GetOldPos (int[2])
virtual int GetShiftKey ()
virtual int GetCtrlKey ()
virtual int GetChar ()
virtual char * GetKeySym ()
virtual int GetButton ()
virtual void OnMouseMove ()
virtual void OnLeftButtonDown ()
virtual void OnLeftButtonUp ()
virtual void OnMiddleButtonDown ()
virtual void OnMiddleButtonUp ()
virtual void OnRightButtonDown ()
virtual void OnRightButtonUp ()
virtual void OnChar ()
virtual void OnKeyPress ()
virtual void OnKeyRelease ()
virtual void OnExpose ()
virtual void OnConfigure ()
virtual void OnEnter ()
virtual void OnLeave ()

Static Public Member Functions

static vtkInteractorStyleUserNew ()
static int IsTypeOf (const char *type)
static vtkInteractorStyleUserSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkInteractorStyleUser ()
 ~vtkInteractorStyleUser ()
void vtkSetOldCallback (unsigned long &tag, unsigned long event, void(*f)(void *), void *arg)
void vtkSetOldDelete (unsigned long tag, void(*f)(void *))

Protected Attributes

int LastPos [2]
int OldPos [2]
int ShiftKey
int CtrlKey
int Char
char * KeySym
int Button
unsigned long MouseMoveTag
unsigned long KeyPressTag
unsigned long KeyReleaseTag
unsigned long CharTag
unsigned long EnterTag
unsigned long LeaveTag
unsigned long ExposeTag
unsigned long ConfigureTag
unsigned long TimerTag
unsigned long UserTag


Member Typedef Documentation

typedef vtkInteractorStyle vtkInteractorStyleUser::Superclass
 

Reimplemented from vtkInteractorStyle.

Definition at line 54 of file vtkInteractorStyleUser.h.


Constructor & Destructor Documentation

vtkInteractorStyleUser::vtkInteractorStyleUser  )  [protected]
 

vtkInteractorStyleUser::~vtkInteractorStyleUser  )  [protected]
 


Member Function Documentation

static vtkInteractorStyleUser* vtkInteractorStyleUser::New  )  [static]
 

This class must be supplied with a vtkRenderWindowInteractor wrapper or parent. This class should not normally be instantiated by application programmers.

Reimplemented from vtkInteractorStyle.

virtual const char* vtkInteractorStyleUser::GetClassName  )  [virtual]
 

Reimplemented from vtkInteractorStyle.

static int vtkInteractorStyleUser::IsTypeOf const char *  type  )  [static]
 

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkInteractorStyle.

virtual int vtkInteractorStyleUser::IsA const char *  type  )  [virtual]
 

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkInteractorStyle.

static vtkInteractorStyleUser* vtkInteractorStyleUser::SafeDownCast vtkObject o  )  [static]
 

Reimplemented from vtkInteractorStyle.

void vtkInteractorStyleUser::PrintSelf ostream &  os,
vtkIndent  indent
[virtual]
 

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkInteractorStyle.

void vtkInteractorStyleUser::SetMouseMoveMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetMouseMoveMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetButtonPressMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetButtonPressMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetButtonReleaseMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetButtonReleaseMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetKeyPressMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetKeyPressMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetKeyReleaseMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetKeyReleaseMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetCharMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetCharMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetConfigureMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetConfigureMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetExposeMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetExposeMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetEnterMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetEnterMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetLeaveMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetLeaveMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetTimerMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetTimerMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetUserInteractionMethod void(*)(void *)  f,
void *  arg
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::SetUserInteractionMethodArgDelete void(*)(void *)  f  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::StartUserInteraction  ) 
 

For legacy compatibility. Do not use.

void vtkInteractorStyleUser::EndUserInteraction  ) 
 

For legacy compatibility. Do not use.

virtual int* vtkInteractorStyleUser::GetLastPos  )  [virtual]
 

Get the most recent mouse position during mouse motion. In your user interaction method, you must use this to track the mouse movement. Do not use GetEventPosition(), which records the last position where a mouse button was pressed.

virtual void vtkInteractorStyleUser::GetLastPos int &  ,
int & 
[virtual]
 

Get the most recent mouse position during mouse motion. In your user interaction method, you must use this to track the mouse movement. Do not use GetEventPosition(), which records the last position where a mouse button was pressed.

virtual void vtkInteractorStyleUser::GetLastPos int  [2]  )  [virtual]
 

Get the most recent mouse position during mouse motion. In your user interaction method, you must use this to track the mouse movement. Do not use GetEventPosition(), which records the last position where a mouse button was pressed.

virtual int* vtkInteractorStyleUser::GetOldPos  )  [virtual]
 

Get the previous mouse position during mouse motion, or after a key press. This can be used to calculate the relative displacement of the mouse.

virtual void vtkInteractorStyleUser::GetOldPos int &  ,
int & 
[virtual]
 

Get the previous mouse position during mouse motion, or after a key press. This can be used to calculate the relative displacement of the mouse.

virtual void vtkInteractorStyleUser::GetOldPos int  [2]  )  [virtual]
 

Get the previous mouse position during mouse motion, or after a key press. This can be used to calculate the relative displacement of the mouse.

virtual int vtkInteractorStyleUser::GetShiftKey  )  [virtual]
 

Test whether modifiers were held down when mouse button or key was pressed

virtual int vtkInteractorStyleUser::GetCtrlKey  )  [virtual]
 

Test whether modifiers were held down when mouse button or key was pressed

virtual int vtkInteractorStyleUser::GetChar  )  [virtual]
 

Get the character for a Char event.

virtual char* vtkInteractorStyleUser::GetKeySym  )  [virtual]
 

Get the KeySym (in the same format as Tk KeySyms) for a KeyPress or KeyRelease method.

virtual int vtkInteractorStyleUser::GetButton  )  [virtual]
 

Get the mouse button that was last pressed inside the window (returns zero when the button is released).

virtual void vtkInteractorStyleUser::OnMouseMove  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnLeftButtonDown  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnLeftButtonUp  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnMiddleButtonDown  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnMiddleButtonUp  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnRightButtonDown  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnRightButtonUp  )  [virtual]
 

Generic event bindings

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnChar  )  [virtual]
 

Keyboard functions

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnKeyPress  )  [virtual]
 

Keyboard functions

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnKeyRelease  )  [virtual]
 

Keyboard functions

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnExpose  )  [virtual]
 

These are more esoteric events, but are useful in some cases.

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnConfigure  )  [virtual]
 

These are more esoteric events, but are useful in some cases.

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnEnter  )  [virtual]
 

These are more esoteric events, but are useful in some cases.

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnLeave  )  [virtual]
 

These are more esoteric events, but are useful in some cases.

Reimplemented from vtkInteractorStyle.

virtual void vtkInteractorStyleUser::OnTimer  )  [virtual]
 

OnTimer calls Rotate, Rotate etc which should be overridden by style subclasses.

Reimplemented from vtkInteractorStyle.

void vtkInteractorStyleUser::vtkSetOldCallback unsigned long &  tag,
unsigned long  event,
void(*)(void *)  f,
void *  arg
[protected]
 

void vtkInteractorStyleUser::vtkSetOldDelete unsigned long  tag,
void(*)(void *)  f
[protected]
 


Member Data Documentation

int vtkInteractorStyleUser::LastPos[2] [protected]
 

Definition at line 161 of file vtkInteractorStyleUser.h.

int vtkInteractorStyleUser::OldPos[2] [protected]
 

Definition at line 162 of file vtkInteractorStyleUser.h.

int vtkInteractorStyleUser::ShiftKey [protected]
 

Definition at line 164 of file vtkInteractorStyleUser.h.

int vtkInteractorStyleUser::CtrlKey [protected]
 

Definition at line 165 of file vtkInteractorStyleUser.h.

int vtkInteractorStyleUser::Char [protected]
 

Definition at line 166 of file vtkInteractorStyleUser.h.

char* vtkInteractorStyleUser::KeySym [protected]
 

Definition at line 167 of file vtkInteractorStyleUser.h.

int vtkInteractorStyleUser::Button [protected]
 

Definition at line 168 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::MouseMoveTag [protected]
 

Definition at line 170 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::KeyPressTag [protected]
 

Definition at line 171 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::KeyReleaseTag [protected]
 

Definition at line 172 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::CharTag [protected]
 

Definition at line 173 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::EnterTag [protected]
 

Definition at line 174 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::LeaveTag [protected]
 

Definition at line 175 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::ExposeTag [protected]
 

Definition at line 176 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::ConfigureTag [protected]
 

Definition at line 177 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::TimerTag [protected]
 

Definition at line 178 of file vtkInteractorStyleUser.h.

unsigned long vtkInteractorStyleUser::UserTag [protected]
 

Definition at line 179 of file vtkInteractorStyleUser.h.


The documentation for this class was generated from the following file: