Files
SDLPongCPP/TrooperEngineDLL/TrooperEngine/EventEngine/cEvent.cpp
T
2018-08-15 22:04:06 -04:00

298 lines
6.5 KiB
C++

#include "cEvent.hpp"
using EventEngine::cEvent;
cEvent::cEvent()
{}
/*virtual*/ cEvent::~cEvent()
{
//Do nothing
}
/*virtual*/ void cEvent::OnEvent( const SDL_Event& event )
{
switch (event.type)
{
case SDL_WINDOWEVENT:
OnWindowsEvent(event);
break;
case SDL_KEYDOWN:
OnKeyDown(event.key.keysym.sym, event.key.keysym.mod);// , Event->key.keysym.unicode);
break;
case SDL_KEYUP:
OnKeyUp(event.key.keysym.sym, event.key.keysym.mod);//, Event->key.keysym.unicode);
break;
case SDL_MOUSEMOTION:
OnMouseMove(event.motion.x, event.motion.y, event.motion.xrel, event.motion.yrel, (event.motion.state&SDL_BUTTON(SDL_BUTTON_LEFT)) != 0, (event.motion.state&SDL_BUTTON(SDL_BUTTON_RIGHT)) != 0, (event.motion.state&SDL_BUTTON(SDL_BUTTON_MIDDLE)) != 0);
break;
case SDL_MOUSEBUTTONDOWN:
OnMouseButtonUp(event);
break;
case SDL_MOUSEBUTTONUP:
OnMouseButtonDown(event);
break;
case SDL_JOYAXISMOTION:
OnJoyAxis(event.jaxis.which, event.jaxis.axis, event.jaxis.value);
break;
case SDL_JOYBALLMOTION:
OnJoyBall(event.jball.which, event.jball.ball, event.jball.xrel, event.jball.yrel);
break;
case SDL_JOYHATMOTION:
OnJoyHat(event.jhat.which, event.jhat.hat, event.jhat.value);
break;
case SDL_JOYBUTTONDOWN:
OnJoyButtonDown(event.jbutton.which, event.jbutton.button);
break;
case SDL_JOYBUTTONUP:
OnJoyButtonUp(event.jbutton.which, event.jbutton.button);
break;
case SDL_QUIT:
OnExit();
break;
case SDL_SYSWMEVENT:
//Ignore
break;
default:
OnUser(event.user.type, event.user.code, event.user.data1, event.user.data2);
break;
}
}
/*virtual*/ void cEvent::OnInputFocus()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnInputBlur()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnKeyDown( SDL_Keycode sym, Uint16 mod )//, Uint16 unicode)
{
sym, mod;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnKeyUp( SDL_Keycode sym, Uint16 mod )//, Uint16 unicode)
{
sym, mod;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMouseFocus()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMouseBlur()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMouseMove( int mX, int mY, int relX, int relY, bool Left, bool Right, bool Middle )
{
mX, mY, relX, relY, Left, Right, Middle;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMouseWheel( bool Up, bool Down )
{
Up, Down;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnLButtonDown( int mX, int mY )
{
mX, mY;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnLButtonUp( int mX, int mY )
{
mX, mY;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnRButtonDown( int mX, int mY )
{
mX, mY;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnRButtonUp( int mX, int mY )
{
mX, mY;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMButtonDown( int mX, int mY )
{
mX, mY;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMButtonUp( int mX, int mY )
{
mX, mY;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnJoyAxis( SDL_JoystickID which, Uint8 axis, Sint16 value )
{
which, axis, value;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnJoyButtonDown( SDL_JoystickID which, Uint8 button )
{
which, button;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnJoyButtonUp( SDL_JoystickID which, Uint8 button )
{
which, button;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnJoyHat( SDL_JoystickID which, Uint8 hat, Uint8 value )
{
which, hat, value;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnJoyBall( SDL_JoystickID which, Uint8 ball, Sint16 xrel, Sint16 yrel )
{
which, ball, xrel, yrel;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnMinimize()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnRestore()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnResize( int w, int h )
{
w, h;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnExpose()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnExit()
{
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnUser( Uint32 type, int code, void* data1, void* data2 )
{
type, code, data1, data2;
//Pure virtual, do nothing
}
/*virtual*/ void cEvent::OnWindowsEvent( const SDL_Event& event )
{
switch (event.window.event)
{
case SDL_WINDOWEVENT_SHOWN:
SDL_Log("Window %d shown", event.window.windowID);
break;
case SDL_WINDOWEVENT_HIDDEN:
SDL_Log("Window %d hidden", event.window.windowID);
break;
case SDL_WINDOWEVENT_EXPOSED:
SDL_Log("Window %d exposed", event.window.windowID);
break;
case SDL_WINDOWEVENT_MOVED:
SDL_Log("Window %d moved to %d,%d",
event.window.windowID, event.window.data1,
event.window.data2);
break;
case SDL_WINDOWEVENT_RESIZED:
SDL_Log("Window %d resized to %dx%d",
event.window.windowID, event.window.data1,
event.window.data2);
break;
case SDL_WINDOWEVENT_SIZE_CHANGED:
SDL_Log("Window %d size changed to %dx%d",
event.window.windowID, event.window.data1,
event.window.data2);
break;
case SDL_WINDOWEVENT_MINIMIZED:
SDL_Log("Window %d minimized", event.window.windowID);
break;
case SDL_WINDOWEVENT_MAXIMIZED:
SDL_Log("Window %d maximized", event.window.windowID);
break;
case SDL_WINDOWEVENT_RESTORED:
SDL_Log("Window %d restored", event.window.windowID);
break;
case SDL_WINDOWEVENT_ENTER:
SDL_Log("Mouse entered window %d",
event.window.windowID);
break;
case SDL_WINDOWEVENT_LEAVE:
SDL_Log("Mouse left window %d", event.window.windowID);
break;
case SDL_WINDOWEVENT_FOCUS_GAINED:
SDL_Log("Window %d gained keyboard focus",
event.window.windowID);
break;
case SDL_WINDOWEVENT_FOCUS_LOST:
SDL_Log("Window %d lost keyboard focus",
event.window.windowID);
break;
case SDL_WINDOWEVENT_CLOSE:
SDL_Log("Window %d closed", event.window.windowID);
break;
default:
SDL_Log("Window %d got unknown event %d",
event.window.windowID, event.window.event);
break;
}
}
/*virtual*/ void cEvent::OnMouseButtonDown( const SDL_Event& event )
{
switch (event.button.button)
{
case SDL_BUTTON_LEFT:
OnLButtonDown(event.button.x, event.button.y);
break;
case SDL_BUTTON_RIGHT:
OnRButtonDown(event.button.x, event.button.y);
break;
case SDL_BUTTON_MIDDLE:
OnMButtonDown(event.button.x, event.button.y);
break;
}
}
/*virtual*/ void cEvent::OnMouseButtonUp( const SDL_Event& event )
{
switch (event.button.button)
{
case SDL_BUTTON_LEFT:
OnLButtonUp(event.button.x, event.button.y);
break;
case SDL_BUTTON_RIGHT:
OnRButtonUp(event.button.x, event.button.y);
break;
case SDL_BUTTON_MIDDLE:
OnMButtonUp(event.button.x, event.button.y);
break;
}
}