ScummVM API documentation

Description

The types of events backends may generate.

Classes

struct  Common::JoystickState
 
struct  Common::Event
 
class  Common::EventSource
 
class  Common::ArtificialEventSource
 
class  Common::EventObserver
 
class  Common::EventMapper
 
class  Common::EventDispatcher
 
class  Common::EventManager
 

Typedefs

typedef uint32 Common::CustomEventType
 

Enumerations

enum  Common::EventType {
  EVENT_INVALID = 0, Common::EVENT_KEYDOWN = 1, Common::EVENT_KEYUP = 2, Common::EVENT_MOUSEMOVE = 3,
  EVENT_LBUTTONDOWN = 4, EVENT_LBUTTONUP = 5, EVENT_RBUTTONDOWN = 6, EVENT_RBUTTONUP = 7,
  EVENT_WHEELUP = 8, EVENT_WHEELDOWN = 9, EVENT_MBUTTONDOWN = 13, EVENT_MBUTTONUP = 14,
  EVENT_MAINMENU = 15, EVENT_RETURN_TO_LAUNCHER = 16, EVENT_MUTE = 17, EVENT_QUIT = 10,
  EVENT_SCREEN_CHANGED = 11, Common::EVENT_INPUT_CHANGED = 35, Common::EVENT_PREDICTIVE_DIALOG = 12, EVENT_CUSTOM_BACKEND_ACTION_START = 18,
  EVENT_CUSTOM_BACKEND_ACTION_END = 19, EVENT_CUSTOM_BACKEND_ACTION_AXIS = 34, EVENT_CUSTOM_ENGINE_ACTION_START = 20, EVENT_CUSTOM_ENGINE_ACTION_END = 21,
  EVENT_VIRTUAL_KEYBOARD = 22, EVENT_DROP_FILE = 23, EVENT_JOYAXIS_MOTION = 24, EVENT_JOYBUTTON_DOWN = 25,
  EVENT_JOYBUTTON_UP = 26, EVENT_CLIPBOARD_UPDATE = 27, EVENT_CUSTOM_BACKEND_HARDWARE = 28, EVENT_DEBUGGER = 29,
  Common::EVENT_X1BUTTONDOWN = 30, EVENT_X1BUTTONUP = 31, EVENT_X2BUTTONDOWN = 32, EVENT_X2BUTTONUP = 33,
  Common::EVENT_FOCUS_GAINED = 36, EVENT_FOCUS_LOST = 37, Common::EVENT_USER_FIRST_AVAILABLE = 1000, EVENT_USER_LAST_AVAILABLE = 9999
}
 
enum  Common::JoystickButton {
  JOYSTICK_BUTTON_INVALID, JOYSTICK_BUTTON_A, JOYSTICK_BUTTON_B, JOYSTICK_BUTTON_X,
  JOYSTICK_BUTTON_Y, JOYSTICK_BUTTON_BACK, JOYSTICK_BUTTON_GUIDE, JOYSTICK_BUTTON_START,
  JOYSTICK_BUTTON_LEFT_STICK, JOYSTICK_BUTTON_RIGHT_STICK, JOYSTICK_BUTTON_LEFT_SHOULDER, JOYSTICK_BUTTON_RIGHT_SHOULDER,
  JOYSTICK_BUTTON_DPAD_UP, JOYSTICK_BUTTON_DPAD_DOWN, JOYSTICK_BUTTON_DPAD_LEFT, JOYSTICK_BUTTON_DPAD_RIGHT,
  JOYSTICK_BUTTON_DPAD_CENTER
}
 
enum  Common::JoystickAxis {
  JOYSTICK_AXIS_LEFT_STICK_X, JOYSTICK_AXIS_LEFT_STICK_Y, JOYSTICK_AXIS_RIGHT_STICK_X, JOYSTICK_AXIS_RIGHT_STICK_Y,
  JOYSTICK_AXIS_LEFT_TRIGGER, JOYSTICK_AXIS_RIGHT_TRIGGER, JOYSTICK_AXIS_HAT_X, JOYSTICK_AXIS_HAT_Y
}
 
enum  Common::MouseButton {
  MOUSE_BUTTON_LEFT = 0, MOUSE_BUTTON_RIGHT = 1, MOUSE_BUTTON_MIDDLE = 2, MOUSE_WHEEL_UP = 3,
  MOUSE_WHEEL_DOWN = 4, MOUSE_BUTTON_X1 = 5, MOUSE_BUTTON_X2 = 6
}
 

Functions

bool Common::isMouseEvent (const Event &event)
 
EventSourceCommon::makeKeyboardRepeatingEventSource (EventSource *eventSource)
 

Variables

const int16 Common::JOYAXIS_MIN = -32768
 
const int16 Common::JOYAXIS_MAX = 32767
 

Typedef Documentation

◆ CustomEventType

Enumeration Type Documentation

◆ EventType

Enumerator
EVENT_KEYDOWN 

A key was pressed, details in Event::kbd.

EVENT_KEYUP 

A key was released, details in Event::kbd.

EVENT_MOUSEMOVE 

The mouse moved, details in Event::mouse.

EVENT_INPUT_CHANGED 

The input devices have changed, input-related configuration must be reapplied.

EVENT_PREDICTIVE_DIALOG 

The backend requests the AGI engine's predictive dialog to be shown.

EVENT_X1BUTTONDOWN 

Additional mouse events, details in Event::mouse.

Note that X1 and X2 are usually back and forward, however this cannot be guaranteed on all platforms.

EVENT_FOCUS_GAINED 

ScummVM has gained or lost focus.

EVENT_USER_FIRST_AVAILABLE 

We reserve some event ids for custom events.

This is used for example by Asylum and Bagel engines. Your custom event ids must be in this range. This also prevents compiler from using a too short datatype for storing this enum on some platforms.

◆ JoystickButton

The list of named buttons available from a joystick.

◆ JoystickAxis

The list of named axes available from a joystick.

◆ MouseButton

The list named buttons available from a mouse.

Function Documentation

◆ isMouseEvent()

bool Common::isMouseEvent ( const Event event)

Determine whether an event is a mouse event.

Mouse events have valid mouse coordinates.

◆ makeKeyboardRepeatingEventSource()

EventSource* Common::makeKeyboardRepeatingEventSource ( EventSource eventSource)

Wrap an event source so the key-down events are repeated while keys are held down.

Does not take ownership of the wrapped EventSource.