Public Types | |
typedef std::list < osg::ref_ptr < GUIEventAdapter > > | Events |
Public Member Functions | |
EventQueue (GUIEventAdapter::MouseYOrientation mouseYOrientation=GUIEventAdapter::Y_INCREASING_DOWNWARDS) | |
void | setEvents (Events &events) |
Set events. | |
bool | takeEvents (Events &events) |
Take the entire event queue leaving the EventQueue' event queue empty. | |
bool | copyEvents (Events &events) const |
Take a copy the entire event queue leaving the EventQueue' event queue intact. | |
void | appendEvents (Events &events) |
Add events to end of event queue. | |
void | addEvent (GUIEventAdapter *event) |
Add an event to the end of the event queue. | |
void | setUseFixedMouseInputRange (bool useFixedMouseInputRange) |
Specify if mouse coordinates should be transformed into a pre defined input range, or whether they should be simply based on as local coordinates to the window that generated the mouse events. | |
bool | getUseFixedMouseInputRange () |
Get whether the mouse coordinates should be transformed into a pre defined input range. | |
void | setMouseInputRange (float xMin, float yMin, float xMax, float yMax) |
Set the mouse input range. | |
void | windowResize (int x, int y, int width, int height) |
Method for adapting window resize event, placing this event on the back of the event queue. | |
void | windowResize (int x, int y, int width, int height, double time) |
Method for adapting window resize event, placing this event on the back of the event queue, with specified time. | |
void | mouseScroll (GUIEventAdapter::ScrollingMotion sm) |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue. | |
void | mouseScroll (GUIEventAdapter::ScrollingMotion sm, double time) |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue, with specified time. | |
void | mouseScroll2D (float x, float y) |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue. | |
void | mouseScroll2D (float x, float y, double time) |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue. | |
void | penPressure (float pressure) |
Method for adapting pen pressure events, placing this event on the back of the event queue. | |
void | penPressure (float pressure, double time) |
Method for adapting pen pressure events, placing this event on the back of the event queue, with specified time. | |
void | penProximity (GUIEventAdapter::TabletPointerType pt, bool isEntering) |
Method for adapting pen proximity events, placing this event on the back of the event queue. | |
void | penProximity (GUIEventAdapter::TabletPointerType pt, bool isEntering, double time) |
Method for adapting pen proximity events, placing this event on the back of the event queue, with specified time. | |
void | mouseWarped (float x, float y) |
Method for updating in response to a mouse warp. | |
void | mouseMotion (float x, float y) |
Method for adapting mouse motion events, placing this event on the back of the event queue. | |
void | mouseMotion (float x, float y, double time) |
Method for adapting mouse motion events, placing this event on the back of the event queue, with specified time. | |
void | mouseButtonPress (float x, float y, unsigned int button) |
Method for adapting mouse button pressed events, placing this event on the back of the event queue. | |
void | mouseButtonPress (float x, float y, unsigned int button, double time) |
Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time. | |
void | mouseDoubleButtonPress (float x, float y, unsigned int button) |
Method for adapting mouse button pressed events, placing this event on the back of the event queue. | |
void | mouseDoubleButtonPress (float x, float y, unsigned int button, double time) |
Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time. | |
void | mouseButtonRelease (float x, float y, unsigned int button) |
Method for adapting mouse button release events, placing this event on the back of the event queue. | |
void | mouseButtonRelease (float x, float y, unsigned int button, double time) |
Method for adapting mouse button release events, placing this event on the back of the event queue, with specified time. | |
void | keyPress (int key) |
Method for adapting keyboard press events. | |
void | keyPress (int key, double time) |
Method for adapting keyboard press events. | |
void | keyRelease (int key) |
Method for adapting keyboard press events. | |
void | keyRelease (int key, double time) |
Method for adapting keyboard press events. | |
void | closeWindow () |
Method for adapting close window events. | |
void | closeWindow (double time) |
Method for adapting close window event with specified event time. | |
void | quitApplication () |
Method for adapting application quit events. | |
void | quitApplication (double time) |
Method for adapting application quit events with specified event time. | |
void | frame (double time) |
Method for adapting frame events. | |
void | setStartTick (osg::Timer_t tick) |
osg::Timer_t | getStartTick () const |
double | getTime () const |
GUIEventAdapter * | createEvent () |
convinience method for create an event ready to fill in. | |
void | setCurrentEventState (GUIEventAdapter *ea) |
GUIEventAdapter * | getCurrentEventState () |
const GUIEventAdapter * | getCurrentEventState () const |
void | userEvent (osg::Referenced *userEventData) |
Method for adapting user defined events. | |
void | userEvent (osg::Referenced *userEventData, double time) |
Method for adapting user defined events with specified event time. | |
Protected Member Functions | |
virtual | ~EventQueue () |
EventQueue & | operator= (const EventQueue &) |
Prevent unwanted copy operator. | |
Protected Attributes | |
osg::ref_ptr < GUIEventAdapter > | _accumulateEventState |
bool | _useFixedMouseInputRange |
osg::Timer_t | _startTick |
OpenThreads::Mutex | _eventQueueMutex |
Events | _eventQueue |
typedef std::list< osg::ref_ptr<GUIEventAdapter> > osgGA::EventQueue::Events |
osgGA::EventQueue::EventQueue | ( | GUIEventAdapter::MouseYOrientation | mouseYOrientation = GUIEventAdapter::Y_INCREASING_DOWNWARDS |
) |
virtual osgGA::EventQueue::~EventQueue | ( | ) | [protected, virtual] |
void osgGA::EventQueue::setEvents | ( | Events & | events | ) |
Set events.
bool osgGA::EventQueue::takeEvents | ( | Events & | events | ) |
Take the entire event queue leaving the EventQueue' event queue empty.
bool osgGA::EventQueue::copyEvents | ( | Events & | events | ) | const |
Take a copy the entire event queue leaving the EventQueue' event queue intact.
void osgGA::EventQueue::appendEvents | ( | Events & | events | ) |
Add events to end of event queue.
void osgGA::EventQueue::addEvent | ( | GUIEventAdapter * | event | ) |
Add an event to the end of the event queue.
void osgGA::EventQueue::setUseFixedMouseInputRange | ( | bool | useFixedMouseInputRange | ) | [inline] |
Specify if mouse coordinates should be transformed into a pre defined input range, or whether they should be simply based on as local coordinates to the window that generated the mouse events.
bool osgGA::EventQueue::getUseFixedMouseInputRange | ( | ) | [inline] |
Get whether the mouse coordinates should be transformed into a pre defined input range.
void osgGA::EventQueue::setMouseInputRange | ( | float | xMin, | |
float | yMin, | |||
float | xMax, | |||
float | yMax | |||
) | [inline] |
Set the mouse input range.
void osgGA::EventQueue::windowResize | ( | int | x, | |
int | y, | |||
int | width, | |||
int | height | |||
) | [inline] |
Method for adapting window resize event, placing this event on the back of the event queue.
void osgGA::EventQueue::windowResize | ( | int | x, | |
int | y, | |||
int | width, | |||
int | height, | |||
double | time | |||
) |
Method for adapting window resize event, placing this event on the back of the event queue, with specified time.
void osgGA::EventQueue::mouseScroll | ( | GUIEventAdapter::ScrollingMotion | sm | ) | [inline] |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
void osgGA::EventQueue::mouseScroll | ( | GUIEventAdapter::ScrollingMotion | sm, | |
double | time | |||
) |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue, with specified time.
void osgGA::EventQueue::mouseScroll2D | ( | float | x, | |
float | y | |||
) | [inline] |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
void osgGA::EventQueue::mouseScroll2D | ( | float | x, | |
float | y, | |||
double | time | |||
) |
Method for adapting mouse scroll wheel events, placing this event on the back of the event queue.
void osgGA::EventQueue::penPressure | ( | float | pressure | ) | [inline] |
Method for adapting pen pressure events, placing this event on the back of the event queue.
void osgGA::EventQueue::penPressure | ( | float | pressure, | |
double | time | |||
) |
Method for adapting pen pressure events, placing this event on the back of the event queue, with specified time.
void osgGA::EventQueue::penProximity | ( | GUIEventAdapter::TabletPointerType | pt, | |
bool | isEntering | |||
) | [inline] |
Method for adapting pen proximity events, placing this event on the back of the event queue.
void osgGA::EventQueue::penProximity | ( | GUIEventAdapter::TabletPointerType | pt, | |
bool | isEntering, | |||
double | time | |||
) |
Method for adapting pen proximity events, placing this event on the back of the event queue, with specified time.
void osgGA::EventQueue::mouseWarped | ( | float | x, | |
float | y | |||
) |
Method for updating in response to a mouse warp.
Note, just moves the mouse position without creating a new event for it.
void osgGA::EventQueue::mouseMotion | ( | float | x, | |
float | y | |||
) | [inline] |
Method for adapting mouse motion events, placing this event on the back of the event queue.
void osgGA::EventQueue::mouseMotion | ( | float | x, | |
float | y, | |||
double | time | |||
) |
Method for adapting mouse motion events, placing this event on the back of the event queue, with specified time.
void osgGA::EventQueue::mouseButtonPress | ( | float | x, | |
float | y, | |||
unsigned int | button | |||
) | [inline] |
Method for adapting mouse button pressed events, placing this event on the back of the event queue.
Button numbering is 1 for left mouse button, 2 for middle, 3 for right.
void osgGA::EventQueue::mouseButtonPress | ( | float | x, | |
float | y, | |||
unsigned int | button, | |||
double | time | |||
) |
Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time.
Button numbering is 1 for left mouse button, 2 for middle, 3 for right.
void osgGA::EventQueue::mouseDoubleButtonPress | ( | float | x, | |
float | y, | |||
unsigned int | button | |||
) | [inline] |
Method for adapting mouse button pressed events, placing this event on the back of the event queue.
Button numbering is 1 for left mouse button, 2 for middle, 3 for right.
void osgGA::EventQueue::mouseDoubleButtonPress | ( | float | x, | |
float | y, | |||
unsigned int | button, | |||
double | time | |||
) |
Method for adapting mouse button pressed events, placing this event on the back of the event queue, with specified time.
Button numbering is 1 for left mouse button, 2 for middle, 3 for right.
void osgGA::EventQueue::mouseButtonRelease | ( | float | x, | |
float | y, | |||
unsigned int | button | |||
) | [inline] |
Method for adapting mouse button release events, placing this event on the back of the event queue.
Button numbering is 1 for left mouse button, 2 for middle, 3 for right.
void osgGA::EventQueue::mouseButtonRelease | ( | float | x, | |
float | y, | |||
unsigned int | button, | |||
double | time | |||
) |
Method for adapting mouse button release events, placing this event on the back of the event queue, with specified time.
Button numbering is 1 for left mouse button, 2 for middle, 3 for right.
void osgGA::EventQueue::keyPress | ( | int | key | ) | [inline] |
Method for adapting keyboard press events.
Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings.
void osgGA::EventQueue::keyPress | ( | int | key, | |
double | time | |||
) |
Method for adapting keyboard press events.
Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time.
void osgGA::EventQueue::keyRelease | ( | int | key | ) | [inline] |
Method for adapting keyboard press events.
Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings.
void osgGA::EventQueue::keyRelease | ( | int | key, | |
double | time | |||
) |
Method for adapting keyboard press events.
Note, special keys such as Ctrl/Function keys should be adapted to GUIEventAdapter::KeySymbol mappings, with specified time.
void osgGA::EventQueue::closeWindow | ( | ) | [inline] |
Method for adapting close window events.
void osgGA::EventQueue::closeWindow | ( | double | time | ) |
Method for adapting close window event with specified event time.
void osgGA::EventQueue::quitApplication | ( | ) | [inline] |
Method for adapting application quit events.
void osgGA::EventQueue::quitApplication | ( | double | time | ) |
Method for adapting application quit events with specified event time.
void osgGA::EventQueue::frame | ( | double | time | ) |
Method for adapting frame events.
void osgGA::EventQueue::setStartTick | ( | osg::Timer_t | tick | ) | [inline] |
osg::Timer_t osgGA::EventQueue::getStartTick | ( | ) | const [inline] |
double osgGA::EventQueue::getTime | ( | ) | const [inline] |
GUIEventAdapter* osgGA::EventQueue::createEvent | ( | ) |
convinience method for create an event ready to fill in.
Clones the getCurrentEventState() to produce a up to date event state.
void osgGA::EventQueue::setCurrentEventState | ( | GUIEventAdapter * | ea | ) | [inline] |
GUIEventAdapter* osgGA::EventQueue::getCurrentEventState | ( | ) | [inline] |
const GUIEventAdapter* osgGA::EventQueue::getCurrentEventState | ( | ) | const [inline] |
void osgGA::EventQueue::userEvent | ( | osg::Referenced * | userEventData | ) | [inline] |
Method for adapting user defined events.
void osgGA::EventQueue::userEvent | ( | osg::Referenced * | userEventData, | |
double | time | |||
) |
Method for adapting user defined events with specified event time.
EventQueue& osgGA::EventQueue::operator= | ( | const EventQueue & | ) | [inline, protected] |
Prevent unwanted copy operator.
bool osgGA::EventQueue::_useFixedMouseInputRange [protected] |
osg::Timer_t osgGA::EventQueue::_startTick [protected] |
OpenThreads::Mutex osgGA::EventQueue::_eventQueueMutex [mutable, protected] |
Events osgGA::EventQueue::_eventQueue [protected] |