System/SystemEvent: Merge with Input/InputEvent into just Event.
This commit is contained in:
parent
858e721451
commit
10198484e7
12 changed files with 152 additions and 80 deletions
56
source/System/Event.cpp
Normal file
56
source/System/Event.cpp
Normal 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
|
||||
|
|
@ -21,12 +21,12 @@ MessageQueue::~MessageQueue()
|
|||
delete m_impl;
|
||||
}
|
||||
|
||||
void MessageQueue::postEvent(SysEvent event)
|
||||
void MessageQueue::postEvent(Event event)
|
||||
{
|
||||
m_queue.push_back(event);
|
||||
}
|
||||
|
||||
bool MessageQueue::pollEvent(SysEvent& event)
|
||||
bool MessageQueue::pollEvent(Event& event)
|
||||
{
|
||||
// Process platform events first.
|
||||
if (m_impl->poll(event)) {
|
||||
|
|
|
|||
|
|
@ -1,20 +0,0 @@
|
|||
|
||||
#include <Spectre/System/SystemEvent.h>
|
||||
|
||||
namespace sp {
|
||||
|
||||
SysEvent::SysEvent(Type type) :
|
||||
type (type)
|
||||
{
|
||||
}
|
||||
|
||||
SysEvent SysEvent::sizeEvent(Display *display, int width, int height)
|
||||
{
|
||||
SysEvent event(Size);
|
||||
event.size.display = display;
|
||||
event.size.width = width;
|
||||
event.size.height = height;
|
||||
return event;
|
||||
}
|
||||
|
||||
} // namespace sp
|
||||
Loading…
Add table
Add a link
Reference in a new issue