pub const VSyncMode = enum { /// Potential screen tearing. /// No synchronization with monitor, render frames as fast as possible. /// /// Not available on WASM, fallback to double none, /// No tearing, synchronizes rendering with monitor refresh rate, rendering frames when ready. /// /// Tries to stay one frame ahead of the monitor, so when it's ready for the next frame it is /// already prepared. double, /// No tearing, synchronizes rendering with monitor refresh rate, rendering frames when ready. /// /// Tries to stay two frames ahead of the monitor, so when it's ready for the next frame it is /// already prepared. /// /// Not available on WASM, fallback to double triple, }; pub const MouseCursor = enum { arrow, ibeam, crosshair, pointing_hand, resize_ew, resize_ns, resize_nwse, resize_nesw, resize_all, not_allowed, }; pub const CursorMode = enum { /// Makes the cursor visible and behaving normally. normal, /// Makes the cursor invisible when it is over the content area of the window but does not /// restrict it from leaving. hidden, /// Hides and grabs the cursor, providing virtual and unlimited cursor movement. This is useful /// for implementing for example 3D camera controls. disabled, }; pub const MouseButton = enum { left, right, middle, four, five, six, seven, eight, }; pub const Key = enum { a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, zero, one, two, three, four, five, six, seven, eight, nine, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, f13, f14, f15, f16, f17, f18, f19, f20, f21, f22, f23, f24, f25, kp_divide, kp_multiply, kp_subtract, kp_add, kp_0, kp_1, kp_2, kp_3, kp_4, kp_5, kp_6, kp_7, kp_8, kp_9, kp_decimal, kp_equal, kp_enter, enter, escape, tab, left_shift, right_shift, left_control, right_control, left_alt, right_alt, left_super, right_super, menu, num_lock, caps_lock, print, scroll_lock, pause, delete, home, end, page_up, page_down, insert, left, right, up, down, backspace, space, minus, equal, left_bracket, right_bracket, backslash, semicolon, apostrophe, comma, period, slash, grave, unknown, };