Magnum::Platform::Sdl2Application::InputEvent class

Base for input events.

Derived classes

class KeyEvent
Key event.
class MouseEvent
Mouse event.
class MouseMoveEvent
Mouse move event.
class MouseScrollEvent
Mouse scroll event.

Public types

enum class Modifier: Uint16 { Shift = KMOD_SHIFT, Ctrl = KMOD_CTRL, Alt = KMOD_ALT, Super = KMOD_GUI, AltGr = KMOD_MODE, CapsLock = KMOD_CAPS, NumLock = KMOD_NUM }
Modifier.
using Modifiers = Containers::EnumSet<Modifier>
Set of modifiers.

Constructors, destructors, conversion operators

InputEvent(const InputEvent&) deleted
Copying is not allowed.
InputEvent(InputEvent&&) deleted
Moving is not allowed.

Public functions

auto operator=(const InputEvent&) -> InputEvent& deleted
Copying is not allowed.
auto operator=(InputEvent&&) -> InputEvent& deleted
Moving is not allowed.
auto isAccepted() const -> bool
Whether the event is accepted.
void setAccepted(bool accepted = true)
Set event as accepted.
auto event() const -> const SDL_Event&
Underlying SDL event.

Enum documentation

enum class Magnum::Platform::Sdl2Application::InputEvent::Modifier: Uint16

Modifier.

Enumerators
Shift

Shift

Ctrl

Ctrl

Alt

Alt

Super

Super key (Windows/⌘)

AltGr

AltGr

CapsLock

Caps lock

NumLock

Num lock

Typedef documentation

typedef Containers::EnumSet<Modifier> Magnum::Platform::Sdl2Application::InputEvent::Modifiers

Set of modifiers.

Function documentation

void Magnum::Platform::Sdl2Application::InputEvent::setAccepted(bool accepted = true)

Set event as accepted.

If the event is ignored (i.e., not set as accepted), it might be propagated elsewhere, for example to another screen when using ScreenedApplication. By default is each event ignored and thus propagated.

const SDL_Event& Magnum::Platform::Sdl2Application::InputEvent::event() const

Underlying SDL event.

Of type SDL_KEYDOWN / SDL_KEYUP for KeyEvent, SDL_MOUSEBUTTONUP / SDL_MOUSEBUTTONDOWN for MouseEvent, SDL_MOUSEWHEEL for MouseScrollEvent and SDL_MOUSEMOTION for MouseMoveEvent.