# OgreKeyTarget.h

Go to the documentation of this file.

    00001 /*
    00002 -----------------------------------------------------------------------------
    00003 This source file is part of OGRE
    00004     (Object-oriented Graphics Rendering Engine)
    00005 For the latest info, see http://www.ogre3d.org/
    00006
    00007 Copyright (c) 2000-2005 The OGRE Team
    00008 Also see acknowledgements in Readme.html
    00009
    00010 This program is free software; you can redistribute it and/or modify it under
    00011 the terms of the GNU Lesser General Public License as published by the Free Software
    00012 Foundation; either version 2 of the License, or (at your option) any later
    00013 version.
    00014
    00015 This program is distributed in the hope that it will be useful, but WITHOUT
    00016 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
    00017 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
    00018
    00019 You should have received a copy of the GNU Lesser General Public License along with
    00020 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
    00021 Place - Suite 330, Boston, MA 02111-1307, USA, or go to
    00022 http://www.gnu.org/copyleft/lesser.txt.
    00023 -----------------------------------------------------------------------------
    00024 */
    00025 /***************************************************************************
    00026 OgreKeyTarget.h  -
    00027     Handles the adding and removing of KeyListeners.
    00028
    00029     Components that process the Key Event should subclass this class
    00030     and call processKeyEvent when that event is identified.
    00031
    00032 -------------------
    00033 begin                : Nov 19 2002
    00034 copyright            : (C) 2002 by Kenny Sabir
    00035 email                : kenny@sparksuit.com
    00036 ***************************************************************************/
    00037
    00038 #ifndef __KeyTarget_H__
    00039 #define __KeyTarget_H__
    00040
    00041 #include "OgrePrerequisites.h"
    00042 #include "OgreEventTarget.h"
    00043
    00044 namespace Ogre {
    00045
    00046     class _OgreExport KeyTarget : public EventTarget
    00047     {
    00048     private:
    00049         std::set<KeyListener*> mRemovedListeners;
    00050
    00051     protected:
    00052         std::set<KeyListener*> mKeyListeners;
    00053
    00054     public:
    00055         KeyTarget() { }
    00056         virtual ~KeyTarget() { }
    00057
    00058         void processKeyEvent(KeyEvent* e) ;
    00059         void addKeyListener(KeyListener* l) ;
    00060         void removeKeyListener(KeyListener* l) ;
    00061     };
    00062
    00063
    00064
    00065 }
    00066
    00067
    00068 #endif //__KeyTarget_H__
    00069

Copyright © 2000-2005 by The OGRE Team
Last modified Sun Nov 20 12:36:01 2005