#include 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