Ignore:
Timestamp:
04/28/06 19:49:56 (18 years ago)
Author:
igarcia
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Illum/IBRBillboardCloudTrees/OGRE/src/IBRBillboardCloudTreeFrameListener.cpp

    r721 r861  
    22#include "IBRBillboardCloudTreeFrameListener.h" 
    33 
     4IBRBillboardCloudTreeFrameListener::IBRBillboardCloudTreeFrameListener(Ogre::RenderWindow *win, bool useBufferedInputKeys, bool useBufferedInputMouse) 
     5    : OgreFrameListener(win, useBufferedInputKeys, useBufferedInputMouse) 
     6{ 
     7} 
     8 
     9IBRBillboardCloudTreeFrameListener::~IBRBillboardCloudTreeFrameListener()         
     10{ 
     11} 
     12 
     13bool 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 
     47bool 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.