1#ifndef PATCHWORK_EVENT_H
2#define PATCHWORK_EVENT_H 1
15#if defined(__cplusplus)
82#define EVENT_SCREEN_INFO 0
83#define EVENT_SURFACE_NEW 1
87#define EVENT_CURSOR_ENTER 5
88#define EVENT_CURSOR_LEAVE 6
91#define EVENT_GLOBAL_ATTACH 128
92#define EVENT_GLOBAL_DETACH 129
93#define EVENT_GLOBAL_REPORT 130
94#define EVENT_GLOBAL_KBD 131
95#define EVENT_GLOBAL_MOUSE 132
97#define DWM_MAX_EVENT 256
99#define EVENT_LIB_INIT 256
100#define EVENT_LIB_DEINIT 257
101#define EVENT_LIB_REDRAW 258
102#define EVENT_LIB_ACTION 259
103#define EVENT_LIB_QUIT 260
104#define EVENT_LIB_FORCE_ACTION 261
106#define EVENT_LIB_INTERNAL_WAKE 512
108#define EVENT_USER_START 1024
109#define EVENT_USER_END 65535
263#define EVENT_MAX_DATA 128
295static_assert(
sizeof(
event_t) == 144,
"invalid event_t size");
300#if defined(__cplusplus)
uint64_t element_id_t
Element identifier type.
event_mouse_t event_cursor_leave_t
Cursor Leave event.
event_mouse_t event_global_mouse_t
Global Mouse event.
report_flags_t
Report flags.
#define EVENT_MAX_DATA
Maximum size of event data.
uint64_t event_bitmask_t[4]
Event bitmask type.
event_report_t event_global_report_t
Global Report event.
action_type_t
Action type.
uint16_t event_type_t
Event type.
event_mouse_t event_cursor_enter_t
Cursor Enter event.
event_kbd_t event_global_kbd_t
Global Keyboard event.
keycode_t
Keyboard keycode type.
kbd_mods_t
Keyboard modifiers type.
kbd_event_type_t
Keyboard event type.
mouse_buttons_t
Mouse buttons enum.
Library Force Action event.
bool shouldPropagate
Whether the redraw event should be propagated to child elements.
key_t shmemKey
Key that can be claim()ed to access the surface's shared memory.
event_global_detach_t globalDetach
event_lib_action_t libAction
event_global_mouse_t globalMouse
event_lib_redraw_t libRedraw
event_surface_new_t surfaceNew
event_cursor_leave_t cursorLeave
event_cursor_enter_t cursorEnter
event_global_attach_t globalAttach
event_lib_force_action_t libForceAction
event_global_report_t globalReport
event_global_kbd_t globalKbd
event_screen_info_t screenInfo