Changeset 861 for GTP/trunk/Lib/Illum/IBRBillboardCloudTrees/OGRE/src/IBRBillboardCloudTreeFrameListener.cpp
- Timestamp:
- 04/28/06 19:49:56 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Illum/IBRBillboardCloudTrees/OGRE/src/IBRBillboardCloudTreeFrameListener.cpp
r721 r861 2 2 #include "IBRBillboardCloudTreeFrameListener.h" 3 3 4 IBRBillboardCloudTreeFrameListener::IBRBillboardCloudTreeFrameListener(Ogre::RenderWindow *win, bool useBufferedInputKeys, bool useBufferedInputMouse) 5 : OgreFrameListener(win, useBufferedInputKeys, useBufferedInputMouse) 6 { 7 } 8 9 IBRBillboardCloudTreeFrameListener::~IBRBillboardCloudTreeFrameListener() 10 { 11 } 12 13 bool IBRBillboardCloudTreeFrameListener::frameStarted(const Ogre::FrameEvent& evt) 14 { 15 if (!mInputTypeSwitchingOn) 16 { 17 mInputDevice->capture(); 18 } 19 20 if ( !mUseBufferedInputMouse || !mUseBufferedInputKeys) 21 { 22 // one of the input modes is immediate, so setup what is needed for immediate mouse/key movement 23 if (mTimeUntilNextToggle >= 0) 24 { 25 mTimeUntilNextToggle -= evt.timeSinceLastFrame; 26 } 27 } 28 29 if (mUseBufferedInputKeys) 30 { 31 // no need to do any processing here, it is handled by event processor and 32 // you get the results as KeyEvents 33 } 34 else 35 { 36 if (processUnbufferedKeyInput(evt) == false) 37 { 38 return false; 39 } 40 } 41 42 //mWindow->setDebugText("P: " + mDefaultOgreFrameListenerMode->getSceneManager()->getName() + " -- " + Ogre::StringConverter::toString(mTimeUntilNextToggle)); 43 44 return mDefaultOgreFrameListenerMode->frameStarted(evt,mInputDevice); 45 } 46 47 bool IBRBillboardCloudTreeFrameListener::processUnbufferedKeyInput(const Ogre::FrameEvent& evt) 48 { 49 if( mInputDevice->isKeyDown(Ogre::KC_ESCAPE) ) 50 { 51 return false; 52 } 53 54 if (mInputDevice->isKeyDown(Ogre::KC_F1)) 55 { 56 mCurrentOgreFrameListenerMode = 0; 57 this->setEnabledFrameListenerMode(mCurrentOgreFrameListenerMode); 58 mWindow->setDebugText("P: " + mDefaultOgreFrameListenerMode->getSceneManager()->getName()); 59 60 //mTimeUntilNextToggle = 0.25; 61 } 62 63 if (mInputDevice->isKeyDown(Ogre::KC_F2)) 64 { 65 mCurrentOgreFrameListenerMode = 1; 66 this->setEnabledFrameListenerMode(mCurrentOgreFrameListenerMode); 67 mWindow->setDebugText("P: " + mDefaultOgreFrameListenerMode->getSceneManager()->getName()); 68 69 //mTimeUntilNextToggle = 0.25; 70 } 71 72 if (mInputDevice->isKeyDown(Ogre::KC_F3)) 73 { 74 mCurrentOgreFrameListenerMode = 2; 75 this->setEnabledFrameListenerMode(mCurrentOgreFrameListenerMode); 76 mWindow->setDebugText("P: " + mDefaultOgreFrameListenerMode->getSceneManager()->getName()); 77 78 //mTimeUntilNextToggle = 0.25; 79 } 80 81 if (mInputDevice->isKeyDown(Ogre::KC_F4)) 82 { 83 mCurrentOgreFrameListenerMode = 3; 84 this->setEnabledFrameListenerMode(mCurrentOgreFrameListenerMode); 85 mWindow->setDebugText("P: " + mDefaultOgreFrameListenerMode->getSceneManager()->getName()); 86 87 //mTimeUntilNextToggle = 0.25; 88 } 89 90 if (mInputDevice->isKeyDown(Ogre::KC_F5)) 91 { 92 mCurrentOgreFrameListenerMode = 4; 93 this->setEnabledFrameListenerMode(mCurrentOgreFrameListenerMode); 94 mWindow->setDebugText("P: " + mDefaultOgreFrameListenerMode->getSceneManager()->getName()); 95 96 //mTimeUntilNextToggle = 0.25; 97 } 98 99 // Return true to continue rendering 100 return true; 101 }
Note: See TracChangeset
for help on using the changeset viewer.