1
0
Fork 0

System/SystemEvent: Merge with Input/InputEvent into just Event.

This commit is contained in:
Henrik Hautakoski 2020-01-30 22:40:09 +01:00
parent 858e721451
commit 10198484e7
No known key found for this signature in database
GPG key ID: 96765B12FEAC4745
12 changed files with 152 additions and 80 deletions

56
source/System/Event.cpp Normal file
View file

@ -0,0 +1,56 @@
#include <Spectre/System/Event.h>
namespace sp {
Event::Event(Type type) :
type (type)
{
}
std::string Event::KeyEvent::getKeyName() const
{
return Keyboard::getKeyName(code);
}
std::string Event::MouseButtonEvent::getName() const
{
return Mouse::getButtonName(button);
}
// Helper methods
Event Event::createSize(Display *display, int width, int height)
{
Event event(Size);
event.size.display = display;
event.size.width = width;
event.size.height = height;
return event;
}
Event Event::createKey(Keyboard::Key code, bool pressed)
{
Event event(Key);
event.key.code = code;
event.key.pressed = pressed;
return event;
}
Event Event::createMouseButton(Mouse::Button button, bool pressed)
{
Event event(MouseButton);
event.mouseButton.button = button;
event.mouseButton.pressed = pressed;
return event;
}
Event Event::createMouseMove(unsigned int x, unsigned int y)
{
Event event(MouseMove);
event.mouseMove.x = x;
event.mouseMove.y = y;
return event;
}
} // namespace sp