MercuryInputSDL.h

Go to the documentation of this file.
00001 #include "MercuryInput.h"
00002 #include "MercuryMessages.h"
00003 
00005 class DeviceKeyboardSDL : public InputDevice
00006 {
00007 public:
00008     virtual void Init( MString Name );
00009     virtual bool IsButtonDown( int ButtonNumber );
00010     virtual int NumButtons();
00011     virtual void Update( ) ;
00012     virtual InputEvent PopLastEvent();
00013 private:
00014     long        m_iNumkeys;
00015     unsigned char* m_vKeys;
00016     bool        m_bAllKeys[512];
00017     MDeque < InputEvent > m_sEvents;
00018 };
00019 
00021 class SDLMouse: public CursorDevice
00022 {
00023 public: 
00024     SDLMouse( );
00025     ~SDLMouse( );
00026     virtual void GetPosition( int &x, int &y );
00027     virtual void Update(  );
00028     static void UpdateFocus( const MString &message, void * data, PStack& info );
00029 };
00030 
00031 /* 
00032  * Copyright (c) 2005-2006, Joshua Allen
00033  * All rights reserved.
00034  *
00035  * Redistribution and use in source and binary forms, with or
00036  * without modification, are permitted provided that the following
00037  * conditions are met:
00038  *  -   Redistributions of source code must retain the above
00039  *      copyright notice, this list of conditions and the following disclaimer.
00040  *  -   Redistributions in binary form must reproduce the above copyright
00041  *      notice, this list of conditions and the following disclaimer in
00042  *      the documentation and/or other materials provided with the distribution.
00043  *  -   Neither the name of the Mercury Engine nor the names of its
00044  *      contributors may be used to endorse or promote products derived from
00045  *      this software without specific prior written permission.
00046  *
00047  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00048  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00049  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00050  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
00051  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00052  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
00053  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00054  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
00055  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
00056  * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00057  */

Hosted by SourceForge.net Logo