b3view/EventHandler.h

43 lines
787 B
C
Raw Normal View History

2010-04-21 07:48:36 -07:00
#ifndef EVENTHANDLER_H
#define EVENTHANDLER_H
#include <iostream>
#include <map>
#include <utility>
2019-03-07 08:12:09 -08:00
#include <irrlicht/irrlicht.h>
2010-04-21 07:48:36 -07:00
#include "Debug.h"
using std::cout;
using std::endl;
using std::map;
using std::make_pair;
enum EventReceiverType
{
ERT_USERINTERFACE = 1,
ERT_3DVIEW = 2
};
enum UserEventIdentifier
{
UEI_WINDOWSIZECHANGED = 1
};
class EventHandler : public irr::IEventReceiver
2010-04-21 07:48:36 -07:00
{
private:
irr::IrrlichtDevice *m_Device;
2010-04-21 07:48:36 -07:00
map<EventReceiverType, IEventReceiver*> *m_EventReceivers;
public:
EventHandler( irr::IrrlichtDevice *device );
2010-04-21 07:48:36 -07:00
~EventHandler();
bool addEventReceiver(EventReceiverType type, irr::IEventReceiver *receiver );
2010-04-21 07:48:36 -07:00
// IEventReceiver
virtual bool OnEvent( const irr::SEvent &event );
2010-04-21 07:48:36 -07:00
};
#endif // EVENTHANDLER_H