#include <OgreGLXInput.h>
Inheritance diagram for Ogre::GLXInput:
Public Methods | |
GLXInput () | |
virtual | ~GLXInput () |
void | initialise (RenderWindow *pWindow, bool useKeyboard=true, bool useMouse=true, bool useGameController=false) |
Initialise the input system. | |
void | capture () |
Captures the state of all the input devices. | |
virtual long | getMouseRelX () const |
Retrieves the relative (compared to the last input poll) mouse movement on the X (horizontal) axis. | |
virtual long | getMouseRelY () const |
Retrieves the relative (compared to the last input poll) mouse movement on the Y (vertical) axis. | |
virtual long | getMouseRelZ () const |
Retrieves the relative (compared to the last input poll) mouse movement on the Z (mouse wheel) axis. | |
virtual long | getMouseAbsX () const |
Retrieves the absolute mouse position on the X (horizontal) axis. | |
virtual long | getMouseAbsY () const |
Retrieves the absolute mouse position on the Y (vertical) axis. | |
virtual long | getMouseAbsZ () const |
Retrieves the absolute mouse position on the Z (mouse wheel) axis. | |
virtual void | getMouseState (MouseState &state) const |
Retrieves the current state of the mouse. | |
virtual bool | getMouseButton (uchar button) const |
Retrieves the state of a mouse button. | |
void | useBufferedInput (EventQueue *pEventQueue, bool keys=true, bool mouse=true) |
Tells the reader to use buffered input and update the passed in queue. | |
virtual void | setBufferedInput (bool keys, bool mouse) |
virtual bool | isKeyDown (KeyCode kc) const |
Determines if the specified key is currently depressed. | |
virtual long | getMouseRelativeX () const |
Retrieves the relative position of the mouse when capture was called relative to the last time. | |
virtual long | getMouseRelativeY () const |
Retrieves the relative position of the mouse when capture was called relative to the last time. | |
virtual long | getMouseRelativeZ () const |
Retrieves the relative position of the mouse when capture was called relative to the last time. | |
void | addCursorMoveListener (MouseMotionListener *c) |
Adds a mouse motion listener to the cursor object. | |
void | removeCursorMoveListener (MouseMotionListener *c) |
Remove a mouse motion listener to the cursor object. | |
Static Public Methods | |
char | getKeyChar (int keyCode, long modifiers=0) |
Protected Types | |
typedef std::set< KeyCode > | BufferedKeysDownSet |
Set of all the keys currently depressed based on buffered input events. | |
Protected Methods | |
void | mouseMoved () |
Creates mouse moved or dragged events depending if any button is pressed. | |
void | createMouseEvent (int id, int button) |
Creates a MouseEvent that first gets processed by the cursor, then gets pushed on the queue. | |
void | triggerMouseButton (int nMouseCode, bool mousePressed) |
Creates mouse pressed, released, and clicked events. | |
void | createKeyEvent (int id, int key) |
void | keyChanged (int key, bool down) |
void | setupKeyChars () |
Protected Attributes | |
long | mModifiers |
The modifiers are a binary flags that represent what buttons are pressed, and what key modifiers are down (e.g. | |
Cursor * | mCursor |
Internal Cursor object. | |
EventQueue * | mEventQueue |
EventQueue is used for buffered input support. | |
bool | mUseBufferedKeys |
Wether to use buffering input support - buffering support relies on using an EventQueue. | |
bool | mUseBufferedMouse |
Wether to use buffering input support - buffering support relies on using an EventQueue. | |
MouseState | mMouseState |
The mouse state in immediate mode. | |
BufferedKeysDownSet | mBufferedKeysDown |
Static Protected Attributes | |
bool | sKeysInitialised = false |
Private Types | |
typedef std::map< KeySym, KeyCode > | InputKeyMap |
typedef std::set< KeyCode > | KeyPressedSet |
Private Methods | |
void | GrabCursor (bool grab) |
bool | isKeyDownImmediate (KeyCode kc) const |
Return whether a key is down in immediate mode. | |
Private Attributes | |
float | mMouseSpeed |
CARD32 | mHiddenCursor |
InputKeyMap | _key_map |
KeyPressedSet | _key_pressed_set |
bool | captureMouse |
bool | warpMouse |
int | mouseLastX |
int | mouseLastY |
Display * | mDisplay |
Window | mWindow |
RenderWindow * | mRenderWindow |
Static Private Attributes | |
const unsigned int | mWheelStep = 100 |
|
Set of all the keys currently depressed based on buffered input events.
Definition at line 345 of file OgreInput.h. |
|
Definition at line 70 of file OgreGLXInput.h. |
|
Definition at line 74 of file OgreGLXInput.h. |
|
|
Definition at line 149 of file OgreGLXInput.cpp. References GrabCursor(), mDisplay, and mHiddenCursor. |
|
Adds a mouse motion listener to the cursor object. This keeps the Cursor object hidden. Definition at line 174 of file OgreInput.cpp. References Ogre::MouseMotionTarget::addMouseMotionListener(), and Ogre::InputReader::mCursor. Referenced by Ogre::EventProcessor::addCursorMoveListener(). |
|
|
Definition at line 152 of file OgreInput.cpp. References Ogre::InputReader::mEventQueue, Ogre::InputReader::mModifiers, and Ogre::EventQueue::push(). Referenced by Ogre::InputReader::keyChanged(). |
|
Creates a MouseEvent that first gets processed by the cursor, then gets pushed on the queue.
Definition at line 132 of file OgreInput.cpp. References Ogre::Cursor::getRelX(), Ogre::Cursor::getRelY(), Ogre::Cursor::getRelZ(), Ogre::Cursor::getX(), Ogre::Cursor::getY(), Ogre::Cursor::getZ(), Ogre::InputReader::mCursor, Ogre::InputReader::mEventQueue, Ogre::InputReader::mModifiers, Ogre::Cursor::processEvent(), and Ogre::EventQueue::push(). Referenced by Ogre::InputReader::mouseMoved(), and Ogre::InputReader::triggerMouseButton(). |
|
Definition at line 238 of file OgreInput.cpp. References Ogre::KEYCODE(), and Ogre::sKeyChars. |
|
Retrieves the absolute mouse position on the X (horizontal) axis.
Implements Ogre::InputReader. Definition at line 345 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState, and Ogre::MouseState::Xabs. |
|
Retrieves the absolute mouse position on the Y (vertical) axis.
Implements Ogre::InputReader. Definition at line 349 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState, and Ogre::MouseState::Yabs. |
|
Retrieves the absolute mouse position on the Z (mouse wheel) axis.
Implements Ogre::InputReader. Definition at line 353 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState, and Ogre::MouseState::Zabs. |
|
Retrieves the state of a mouse button.
Implements Ogre::InputReader. Definition at line 357 of file OgreGLXInput.cpp. References Ogre::MouseState::isButtonDown(), Ogre::InputReader::mMouseState, and Ogre::uchar. |
|
Retrieves the relative position of the mouse when capture was called relative to the last time.
Definition at line 272 of file OgreInput.h. |
|
Retrieves the relative position of the mouse when capture was called relative to the last time.
Definition at line 276 of file OgreInput.h. |
|
Retrieves the relative position of the mouse when capture was called relative to the last time.
Definition at line 280 of file OgreInput.h. |
|
Retrieves the relative (compared to the last input poll) mouse movement on the X (horizontal) axis.
Implements Ogre::InputReader. Definition at line 333 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState, and Ogre::MouseState::Xrel. |
|
Retrieves the relative (compared to the last input poll) mouse movement on the Y (vertical) axis.
Implements Ogre::InputReader. Definition at line 337 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState, and Ogre::MouseState::Yrel. |
|
Retrieves the relative (compared to the last input poll) mouse movement on the Z (mouse wheel) axis.
Implements Ogre::InputReader. Definition at line 341 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState, and Ogre::MouseState::Zrel. |
|
Retrieves the current state of the mouse.
Implements Ogre::InputReader. Definition at line 361 of file OgreGLXInput.cpp. References Ogre::InputReader::mMouseState. |
|
Definition at line 365 of file OgreGLXInput.cpp. References captureMouse, Ogre::RenderWindow::getMetrics(), mDisplay, mHiddenCursor, Ogre::InputReader::mMouseState, mouseLastX, mouseLastY, mRenderWindow, mWindow, warpMouse, Ogre::MouseState::Xabs, and Ogre::MouseState::Yabs. Referenced by capture(), initialise(), and ~GLXInput(). |
|
Initialise the input system.
Implements Ogre::InputReader. Definition at line 154 of file OgreGLXInput.cpp. References Ogre::MouseState::Buttons, captureMouse, Ogre::RenderTarget::getCustomAttribute(), Ogre::RenderWindow::getMetrics(), GrabCursor(), mDisplay, mHiddenCursor, Ogre::InputReader::mMouseState, mouseLastX, mouseLastY, mRenderWindow, mWindow, warpMouse, Ogre::MouseState::Xabs, Ogre::MouseState::Xrel, Ogre::MouseState::Yabs, Ogre::MouseState::Yrel, Ogre::MouseState::Zabs, and Ogre::MouseState::Zrel. |
|
Determines if the specified key is currently depressed.
Definition at line 370 of file OgreInput.cpp. References Ogre::InputReader::isKeyDownImmediate(), Ogre::KeyCode, and Ogre::InputReader::mBufferedKeysDown. Referenced by Ogre::Win32Input8::getKeyModifiers(). |
|
Return whether a key is down in immediate mode.
Implements Ogre::InputReader. Definition at line 329 of file OgreGLXInput.cpp. References _key_pressed_set, and Ogre::KeyCode. |
|
Definition at line 185 of file OgreInput.cpp. References Ogre::InputReader::createKeyEvent(), Ogre::KC_LCONTROL, Ogre::KC_LMENU, Ogre::KC_LSHIFT, Ogre::KC_RCONTROL, Ogre::KC_RMENU, Ogre::KC_RSHIFT, Ogre::InputReader::mBufferedKeysDown, and Ogre::InputReader::mModifiers. Referenced by capture(), Ogre::SDLInput::processBufferedKeyboard(), and Ogre::Win32Input8::readBufferedKeyboardData(). |
|
Creates mouse moved or dragged events depending if any button is pressed.
Definition at line 161 of file OgreInput.cpp. References Ogre::InputReader::createMouseEvent(), and Ogre::InputReader::mModifiers. Referenced by capture(), Ogre::SDLInput::processBufferedMouse(), and Ogre::Win32Input8::readBufferedMouseData(). |
|
Remove a mouse motion listener to the cursor object. This keeps the Cursor object hidden. Definition at line 179 of file OgreInput.cpp. References Ogre::InputReader::mCursor, and Ogre::MouseMotionTarget::removeMouseMotionListener(). Referenced by Ogre::EventProcessor::removeCursorMoveListener(). |
|
Reimplemented in Ogre::Win32Input8. Definition at line 71 of file OgreInput.cpp. References Ogre::InputReader::mUseBufferedKeys, and Ogre::InputReader::mUseBufferedMouse. |
|
|
Creates mouse pressed, released, and clicked events.
Definition at line 88 of file OgreInput.cpp. References Ogre::MouseState::Buttons, Ogre::InputReader::createMouseEvent(), Ogre::InputReader::mModifiers, and Ogre::InputReader::mMouseState. Referenced by capture(), Ogre::SDLInput::processBufferedMouse(), and Ogre::Win32Input8::readBufferedMouseData(). |
|
Tells the reader to use buffered input and update the passed in queue.
Definition at line 54 of file OgreInput.cpp. References Ogre::InputReader::mCursor, Ogre::InputReader::mEventQueue, Ogre::InputReader::mUseBufferedKeys, and Ogre::InputReader::mUseBufferedMouse. Referenced by Ogre::EventProcessor::initialise(). |
|
Definition at line 71 of file OgreGLXInput.h. |
|
Definition at line 75 of file OgreGLXInput.h. Referenced by capture(), and isKeyDownImmediate(). |
|
Definition at line 79 of file OgreGLXInput.h. Referenced by capture(), GrabCursor(), and initialise(). |
|
Definition at line 346 of file OgreInput.h. Referenced by Ogre::InputReader::isKeyDown(), and Ogre::InputReader::keyChanged(). |
|
Internal Cursor object.
Definition at line 331 of file OgreInput.h. Referenced by Ogre::InputReader::addCursorMoveListener(), capture(), Ogre::InputReader::createMouseEvent(), Ogre::InputReader::InputReader(), Ogre::SDLInput::processBufferedMouse(), Ogre::Win32Input8::readBufferedMouseData(), Ogre::InputReader::removeCursorMoveListener(), Ogre::InputReader::useBufferedInput(), and Ogre::InputReader::~InputReader(). |
|
Definition at line 85 of file OgreGLXInput.h. Referenced by capture(), GrabCursor(), initialise(), and ~GLXInput(). |
|
EventQueue is used for buffered input support.
Definition at line 334 of file OgreInput.h. Referenced by Ogre::InputReader::createKeyEvent(), Ogre::InputReader::createMouseEvent(), GLXInput(), Ogre::InputReader::InputReader(), Ogre::SDLInput::SDLInput(), Ogre::InputReader::useBufferedInput(), and Ogre::Win32Input8::Win32Input8(). |
|
Definition at line 67 of file OgreGLXInput.h. Referenced by GrabCursor(), initialise(), and ~GLXInput(). |
|
The modifiers are a binary flags that represent what buttons are pressed, and what key modifiers are down (e.g. shift/alt). Definition at line 321 of file OgreInput.h. Referenced by Ogre::Win32Input8::capture(), Ogre::InputReader::createKeyEvent(), Ogre::InputReader::createMouseEvent(), Ogre::Win32Input8::getKeyModifiers(), Ogre::InputReader::InputReader(), Ogre::InputReader::keyChanged(), Ogre::InputReader::mouseMoved(), and Ogre::InputReader::triggerMouseButton(). |
|
Definition at line 66 of file OgreGLXInput.h. Referenced by capture(). |
|
The mouse state in immediate mode.
Definition at line 342 of file OgreInput.h. Referenced by Ogre::SDLInput::capture(), capture(), Ogre::Win32Input8::captureMouse(), Ogre::Win32Input8::getMouseAbsX(), getMouseAbsX(), Ogre::Win32Input8::getMouseAbsY(), getMouseAbsY(), Ogre::Win32Input8::getMouseAbsZ(), getMouseAbsZ(), Ogre::Win32Input8::getMouseButton(), Ogre::SDLInput::getMouseButton(), getMouseButton(), Ogre::Win32Input8::getMouseRelX(), Ogre::SDLInput::getMouseRelX(), getMouseRelX(), Ogre::Win32Input8::getMouseRelY(), Ogre::SDLInput::getMouseRelY(), getMouseRelY(), Ogre::Win32Input8::getMouseRelZ(), Ogre::SDLInput::getMouseRelZ(), getMouseRelZ(), Ogre::Win32Input8::getMouseState(), Ogre::SDLInput::getMouseState(), getMouseState(), GrabCursor(), initialise(), Ogre::Win32Input8::initialiseImmediateMouse(), and Ogre::InputReader::triggerMouseButton(). |
|
Definition at line 82 of file OgreGLXInput.h. Referenced by capture(), GrabCursor(), and initialise(). |
|
Definition at line 82 of file OgreGLXInput.h. Referenced by capture(), GrabCursor(), and initialise(). |
|
Definition at line 87 of file OgreGLXInput.h. Referenced by GrabCursor(), and initialise(). |
|
Wether to use buffering input support - buffering support relies on using an EventQueue.
Definition at line 339 of file OgreInput.h. Referenced by Ogre::InputReader::InputReader(), Ogre::Win32Input8::setBufferedInput(), Ogre::InputReader::setBufferedInput(), and Ogre::InputReader::useBufferedInput(). |
|
Wether to use buffering input support - buffering support relies on using an EventQueue.
Definition at line 339 of file OgreInput.h. Referenced by capture(), Ogre::InputReader::InputReader(), Ogre::Win32Input8::setBufferedInput(), Ogre::InputReader::setBufferedInput(), and Ogre::InputReader::useBufferedInput(). |
|
Definition at line 89 of file OgreGLXInput.h. Referenced by capture(). |
|
Definition at line 86 of file OgreGLXInput.h. Referenced by capture(), GrabCursor(), and initialise(). |
|
Definition at line 37 of file OgreInput.cpp. Referenced by Ogre::InputReader::InputReader(). |
|
Definition at line 81 of file OgreGLXInput.h. Referenced by capture(), GrabCursor(), and initialise(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:50:14 2004