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

osgGA::GUIEventAdapter Class Reference

Pure virtual base class for adapting platform specific events into generic keyboard and mouse events. More...

Inheritance diagram for osgGA::GUIEventAdapter:

Inheritance graph
[legend]
List of all members.

Public Types

enum  MouseButtonMask { LEFT_MOUSE_BUTTON = 1, MIDDLE_MOUSE_BUTTON = 2, RIGHT_MOUSE_BUTTON = 4 }
enum  EventType {
  NONE = 0, PUSH, RELEASE, DOUBLECLICK,
  DRAG, MOVE, KEYDOWN, KEYUP,
  FRAME, RESIZE, SCROLLUP, SCROLLDOWN,
  SCROLLLEFT, SCROLLRIGHT
}
enum  KeySymbol {
  KEY_Space = 0x20, KEY_BackSpace = 0xFF08, KEY_Tab = 0xFF09, KEY_Linefeed = 0xFF0A,
  KEY_Clear = 0xFF0B, KEY_Return = 0xFF0D, KEY_Pause = 0xFF13, KEY_Scroll_Lock = 0xFF14,
  KEY_Sys_Req = 0xFF15, KEY_Escape = 0xFF1B, KEY_Delete = 0xFFFF, KEY_Home = 0xFF50,
  KEY_Left = 0xFF51, KEY_Up = 0xFF52, KEY_Right = 0xFF53, KEY_Down = 0xFF54,
  KEY_Prior = 0xFF55, KEY_Page_Up = 0xFF55, KEY_Next = 0xFF56, KEY_Page_Down = 0xFF56,
  KEY_End = 0xFF57, KEY_Begin = 0xFF58, KEY_Select = 0xFF60, KEY_Print = 0xFF61,
  KEY_Execute = 0xFF62, KEY_Insert = 0xFF63, KEY_Undo = 0xFF65, KEY_Redo = 0xFF66,
  KEY_Menu = 0xFF67, KEY_Find = 0xFF68, KEY_Cancel = 0xFF69, KEY_Help = 0xFF6A,
  KEY_Break = 0xFF6B, KEY_Mode_switch = 0xFF7E, KEY_Script_switch = 0xFF7E, KEY_Num_Lock = 0xFF7F,
  KEY_KP_Space = 0xFF80, KEY_KP_Tab = 0xFF89, KEY_KP_Enter = 0xFF8D, KEY_KP_F1 = 0xFF91,
  KEY_KP_F2 = 0xFF92, KEY_KP_F3 = 0xFF93, KEY_KP_F4 = 0xFF94, KEY_KP_Home = 0xFF95,
  KEY_KP_Left = 0xFF96, KEY_KP_Up = 0xFF97, KEY_KP_Right = 0xFF98, KEY_KP_Down = 0xFF99,
  KEY_KP_Prior = 0xFF9A, KEY_KP_Page_Up = 0xFF9A, KEY_KP_Next = 0xFF9B, KEY_KP_Page_Down = 0xFF9B,
  KEY_KP_End = 0xFF9C, KEY_KP_Begin = 0xFF9D, KEY_KP_Insert = 0xFF9E, KEY_KP_Delete = 0xFF9F,
  KEY_KP_Equal = 0xFFBD, KEY_KP_Multiply = 0xFFAA, KEY_KP_Add = 0xFFAB, KEY_KP_Separator = 0xFFAC,
  KEY_KP_Subtract = 0xFFAD, KEY_KP_Decimal = 0xFFAE, KEY_KP_Divide = 0xFFAF, KEY_KP_0 = 0xFFB0,
  KEY_KP_1 = 0xFFB1, KEY_KP_2 = 0xFFB2, KEY_KP_3 = 0xFFB3, KEY_KP_4 = 0xFFB4,
  KEY_KP_5 = 0xFFB5, KEY_KP_6 = 0xFFB6, KEY_KP_7 = 0xFFB7, KEY_KP_8 = 0xFFB8,
  KEY_KP_9 = 0xFFB9, KEY_F1 = 0xFFBE, KEY_F2 = 0xFFBF, KEY_F3 = 0xFFC0,
  KEY_F4 = 0xFFC1, KEY_F5 = 0xFFC2, KEY_F6 = 0xFFC3, KEY_F7 = 0xFFC4,
  KEY_F8 = 0xFFC5, KEY_F9 = 0xFFC6, KEY_F10 = 0xFFC7, KEY_F11 = 0xFFC8,
  KEY_F12 = 0xFFC9, KEY_F13 = 0xFFCA, KEY_F14 = 0xFFCB, KEY_F15 = 0xFFCC,
  KEY_F16 = 0xFFCD, KEY_F17 = 0xFFCE, KEY_F18 = 0xFFCF, KEY_F19 = 0xFFD0,
  KEY_F20 = 0xFFD1, KEY_F21 = 0xFFD2, KEY_F22 = 0xFFD3, KEY_F23 = 0xFFD4,
  KEY_F24 = 0xFFD5, KEY_F25 = 0xFFD6, KEY_F26 = 0xFFD7, KEY_F27 = 0xFFD8,
  KEY_F28 = 0xFFD9, KEY_F29 = 0xFFDA, KEY_F30 = 0xFFDB, KEY_F31 = 0xFFDC,
  KEY_F32 = 0xFFDD, KEY_F33 = 0xFFDE, KEY_F34 = 0xFFDF, KEY_F35 = 0xFFE0,
  KEY_Shift_L = 0xFFE1, KEY_Shift_R = 0xFFE2, KEY_Control_L = 0xFFE3, KEY_Control_R = 0xFFE4,
  KEY_Caps_Lock = 0xFFE5, KEY_Shift_Lock = 0xFFE6, KEY_Meta_L = 0xFFE7, KEY_Meta_R = 0xFFE8,
  KEY_Alt_L = 0xFFE9, KEY_Alt_R = 0xFFEA, KEY_Super_L = 0xFFEB, KEY_Super_R = 0xFFEC,
  KEY_Hyper_L = 0xFFED, KEY_Hyper_R = 0xFFEE
}
enum  ModKeyMask {
  MODKEY_LEFT_SHIFT = 0x0001, MODKEY_RIGHT_SHIFT = 0x0002, MODKEY_LEFT_CTRL = 0x0040, MODKEY_RIGHT_CTRL = 0x0080,
  MODKEY_LEFT_ALT = 0x0100, MODKEY_RIGHT_ALT = 0x0200, MODKEY_LEFT_META = 0x0400, MODKEY_RIGHT_META = 0x0800,
  MODKEY_NUM_LOCK = 0x1000, MODKEY_CAPS_LOCK = 0x2000, MODKEY_CTRL = (MODKEY_LEFT_CTRL|MODKEY_RIGHT_CTRL), MODKEY_SHIFT = (MODKEY_LEFT_SHIFT|MODKEY_RIGHT_SHIFT),
  MODKEY_ALT = (MODKEY_LEFT_ALT|MODKEY_RIGHT_ALT), MODKEY_META = (MODKEY_LEFT_META|MODKEY_RIGHT_META)
}
enum  MouseYOrientation { Y_INCREASING_UPWARDS, Y_INCREASING_DOWNWARDS }

Public Member Functions

virtual EventType getEventType () const=0
 Get the EventType of the GUI event.

virtual int getKey () const=0
 key pressed, return -1 if inappr opriate for this event.

virtual int getButton () const=0
 button pressed/released, return -1 if inappropriate for this event.

void setMouseYOrientation (MouseYOrientation myo)
MouseYOrientation getMouseYOrientation () const
virtual float getXmin () const=0
 manimum x mouse position.

virtual float getXmax () const=0
 maximum x mouse position.

virtual float getYmin () const=0
 minimum y mouse position.

virtual float getYmax () const=0
 maximum y mouse position.

virtual float getX () const=0
 current mouse x position.

virtual float getY () const=0
 current mouse y position.

virtual unsigned int getButtonMask () const=0
 current mouse button state

virtual unsigned int getModKeyMask () const=0
 current modkey state

virtual double time () const=0
 time in seconds of event.

float getXnormalized () const
 return the getX() value normalised to the range of -1 to 1.

float getYnormalized () const
 return the getY() value normalised to the range of -1 to 1.


Protected Member Functions

 GUIEventAdapter (MouseYOrientation myo=Y_INCREASING_DOWNWARDS)
virtual ~GUIEventAdapter ()
 Force users to create on heap, so that multiple referencing is safe.


Protected Attributes

MouseYOrientation _mouseYOrientation

Detailed Description

Pure virtual base class for adapting platform specific events into generic keyboard and mouse events.

Used as GUI toolkit-independent input into GUIEventAdapters. Viewer writers should subclass this base class to implement the functionality to translate one of their GUI events, e.g. a Qt Event or an MFC Event, as appropriate.


Member Enumeration Documentation

enum osgGA::GUIEventAdapter::EventType
 

Enumeration values:
NONE 
PUSH 
RELEASE 
DOUBLECLICK 
DRAG 
MOVE 
KEYDOWN 
KEYUP 
FRAME 
RESIZE 
SCROLLUP 
SCROLLDOWN 
SCROLLLEFT 
SCROLLRIGHT 

enum osgGA::GUIEventAdapter::KeySymbol
 

Enumeration values:
KEY_Space 
KEY_BackSpace 
KEY_Tab 
KEY_Linefeed 
KEY_Clear 
KEY_Return 
KEY_Pause 
KEY_Scroll_Lock 
KEY_Sys_Req 
KEY_Escape 
KEY_Delete 
KEY_Home 
KEY_Left 
KEY_Up 
KEY_Right 
KEY_Down 
KEY_Prior 
KEY_Page_Up 
KEY_Next 
KEY_Page_Down 
KEY_End 
KEY_Begin 
KEY_Select 
KEY_Print 
KEY_Execute 
KEY_Insert 
KEY_Undo 
KEY_Redo 
KEY_Menu 
KEY_Find 
KEY_Cancel 
KEY_Help 
KEY_Break 
KEY_Mode_switch 
KEY_Script_switch 
KEY_Num_Lock 
KEY_KP_Space 
KEY_KP_Tab 
KEY_KP_Enter 
KEY_KP_F1 
KEY_KP_F2 
KEY_KP_F3 
KEY_KP_F4 
KEY_KP_Home 
KEY_KP_Left 
KEY_KP_Up 
KEY_KP_Right 
KEY_KP_Down 
KEY_KP_Prior 
KEY_KP_Page_Up 
KEY_KP_Next 
KEY_KP_Page_Down 
KEY_KP_End 
KEY_KP_Begin 
KEY_KP_Insert 
KEY_KP_Delete 
KEY_KP_Equal 
KEY_KP_Multiply 
KEY_KP_Add 
KEY_KP_Separator 
KEY_KP_Subtract 
KEY_KP_Decimal 
KEY_KP_Divide 
KEY_KP_0 
KEY_KP_1 
KEY_KP_2 
KEY_KP_3 
KEY_KP_4 
KEY_KP_5 
KEY_KP_6 
KEY_KP_7 
KEY_KP_8 
KEY_KP_9 
KEY_F1 
KEY_F2 
KEY_F3 
KEY_F4 
KEY_F5 
KEY_F6 
KEY_F7 
KEY_F8 
KEY_F9 
KEY_F10 
KEY_F11 
KEY_F12 
KEY_F13 
KEY_F14 
KEY_F15 
KEY_F16 
KEY_F17 
KEY_F18 
KEY_F19 
KEY_F20 
KEY_F21 
KEY_F22 
KEY_F23 
KEY_F24 
KEY_F25 
KEY_F26 
KEY_F27 
KEY_F28 
KEY_F29 
KEY_F30 
KEY_F31 
KEY_F32 
KEY_F33 
KEY_F34 
KEY_F35 
KEY_Shift_L 
KEY_Shift_R 
KEY_Control_L 
KEY_Control_R 
KEY_Caps_Lock 
KEY_Shift_Lock 
KEY_Meta_L 
KEY_Meta_R 
KEY_Alt_L 
KEY_Alt_R 
KEY_Super_L 
KEY_Super_R 
KEY_Hyper_L 
KEY_Hyper_R 

enum osgGA::GUIEventAdapter::ModKeyMask
 

Enumeration values:
MODKEY_LEFT_SHIFT 
MODKEY_RIGHT_SHIFT 
MODKEY_LEFT_CTRL 
MODKEY_RIGHT_CTRL 
MODKEY_LEFT_ALT 
MODKEY_RIGHT_ALT 
MODKEY_LEFT_META 
MODKEY_RIGHT_META 
MODKEY_NUM_LOCK 
MODKEY_CAPS_LOCK 
MODKEY_CTRL 
MODKEY_SHIFT 
MODKEY_ALT 
MODKEY_META 

enum osgGA::GUIEventAdapter::MouseButtonMask
 

Enumeration values:
LEFT_MOUSE_BUTTON 
MIDDLE_MOUSE_BUTTON 
RIGHT_MOUSE_BUTTON 

enum osgGA::GUIEventAdapter::MouseYOrientation
 

Enumeration values:
Y_INCREASING_UPWARDS 
Y_INCREASING_DOWNWARDS 


Constructor & Destructor Documentation

osgGA::GUIEventAdapter::GUIEventAdapter MouseYOrientation  myo = Y_INCREASING_DOWNWARDS  )  [inline, protected]
 

virtual osgGA::GUIEventAdapter::~GUIEventAdapter  )  [protected, virtual]
 

Force users to create on heap, so that multiple referencing is safe.


Member Function Documentation

virtual int osgGA::GUIEventAdapter::getButton  )  const [pure virtual]
 

button pressed/released, return -1 if inappropriate for this event.

Implemented in osgProducer::EventAdapter.

virtual unsigned int osgGA::GUIEventAdapter::getButtonMask  )  const [pure virtual]
 

current mouse button state

Implemented in osgProducer::EventAdapter.

virtual EventType osgGA::GUIEventAdapter::getEventType  )  const [pure virtual]
 

Get the EventType of the GUI event.

Implemented in osgProducer::EventAdapter.

virtual int osgGA::GUIEventAdapter::getKey  )  const [pure virtual]
 

key pressed, return -1 if inappr opriate for this event.

Implemented in osgProducer::EventAdapter.

virtual unsigned int osgGA::GUIEventAdapter::getModKeyMask  )  const [pure virtual]
 

current modkey state

Implemented in osgProducer::EventAdapter.

MouseYOrientation osgGA::GUIEventAdapter::getMouseYOrientation  )  const [inline]
 

virtual float osgGA::GUIEventAdapter::getX  )  const [pure virtual]
 

current mouse x position.

Implemented in osgProducer::EventAdapter.

virtual float osgGA::GUIEventAdapter::getXmax  )  const [pure virtual]
 

maximum x mouse position.

Implemented in osgProducer::EventAdapter.

virtual float osgGA::GUIEventAdapter::getXmin  )  const [pure virtual]
 

manimum x mouse position.

Implemented in osgProducer::EventAdapter.

float osgGA::GUIEventAdapter::getXnormalized  )  const [inline]
 

return the getX() value normalised to the range of -1 to 1.

-1 would be the left hand side of the window. 0.0 would be the middle of the window. +1 would be the right hand side of the window.

virtual float osgGA::GUIEventAdapter::getY  )  const [pure virtual]
 

current mouse y position.

Implemented in osgProducer::EventAdapter.

virtual float osgGA::GUIEventAdapter::getYmax  )  const [pure virtual]
 

maximum y mouse position.

Implemented in osgProducer::EventAdapter.

virtual float osgGA::GUIEventAdapter::getYmin  )  const [pure virtual]
 

minimum y mouse position.

Implemented in osgProducer::EventAdapter.

float osgGA::GUIEventAdapter::getYnormalized  )  const [inline]
 

return the getY() value normalised to the range of -1 to 1.

-1 would be the bottom of the window. 0.0 would be the middle of the window. +1 would be the top of the window.

void osgGA::GUIEventAdapter::setMouseYOrientation MouseYOrientation  myo  )  [inline]
 

virtual double osgGA::GUIEventAdapter::time  )  const [pure virtual]
 

time in seconds of event.

Implemented in osgProducer::EventAdapter.


Member Data Documentation

MouseYOrientation osgGA::GUIEventAdapter::_mouseYOrientation [protected]
 


The documentation for this class was generated from the following file:
Generated at Thu Nov 24 16:24:16 2005 for the OpenSceneGraph by doxygen 1.3.6.