Module: ui.event

Source: ./ui/event.reef


Overview

ui/event.reef - Event types for UI system Part of reef-stdlib UI module

This module defines all event types used in the UI system: mouse events, keyboard events, focus events, and window events.


Types

MouseButton (enum)

Variants:

  • Left
  • Right
  • Middle
  • Button4
  • Button5

Modifiers

Fields:

Name Type
shift bool
ctrl bool
alt bool
meta bool

KeyCode (enum)

Variants:

  • None
  • Escape
  • Enter
  • Tab
  • Backspace
  • Delete
  • Left
  • Right
  • Up
  • Down
  • Home
  • End
  • PageUp
  • PageDown
  • Space
  • Char(char)
  • F1
  • F2
  • F3
  • F4
  • F5
  • F6
  • F7
  • F8
  • F9
  • F10
  • F11
  • F12

MouseEventKind (enum)

Variants:

  • Down
  • Up
  • Move
  • Enter
  • Leave
  • Click
  • DoubleClick
  • Scroll

MouseEvent

Fields:

Name Type
kind MouseEventKind
button MouseButton
x float
y float
scroll_dx float
scroll_dy float
mods Modifiers

KeyEventKind (enum)

Variants:

  • Down
  • Up
  • Press

KeyEvent

Fields:

Name Type
kind KeyEventKind
code KeyCode
character char
mods Modifiers

FocusEventKind (enum)

Variants:

  • In
  • Out

FocusEvent

Fields:

Name Type
kind FocusEventKind

WindowEventKind (enum)

Variants:

  • Resize
  • Close
  • Minimize
  • Maximize
  • Restore
  • Move
  • Expose

WindowEvent

Fields:

Name Type
kind WindowEventKind
width int
height int
x int
y int

EventKind (enum)

Variants:

  • Mouse
  • Key
  • Focus
  • Window

Event

Fields:

Name Type
kind EventKind
mouse MouseEvent
key KeyEvent
focus FocusEvent
window WindowEvent

Functions

fn mouse_button_left(): MouseButton

fn mouse_button_right(): MouseButton

fn mouse_button_middle(): MouseButton

fn no_modifiers(): Modifiers

fn modifiers(shift: bool, ctrl: bool, alt: bool, meta: bool): Modifiers

fn has_shift(m: Modifiers): bool

fn has_ctrl(m: Modifiers): bool

fn has_alt(m: Modifiers): bool

fn has_meta(m: Modifiers): bool

fn key_none(): KeyCode

fn key_escape(): KeyCode

fn key_enter(): KeyCode

fn key_tab(): KeyCode

fn key_backspace(): KeyCode

fn key_delete(): KeyCode

fn key_left(): KeyCode

fn key_right(): KeyCode

fn key_arrow_up(): KeyCode

fn key_arrow_down(): KeyCode

fn key_home(): KeyCode

fn key_end(): KeyCode

fn key_page_up(): KeyCode

fn key_page_down(): KeyCode

fn key_space(): KeyCode

fn key_char(c: char): KeyCode

fn key_f(n: int): KeyCode

fn mouse_down(button: MouseButton, x: float, y: float, mods: Modifiers): MouseEvent

fn mouse_up(button: MouseButton, x: float, y: float, mods: Modifiers): MouseEvent

fn mouse_move(x: float, y: float, mods: Modifiers): MouseEvent

fn mouse_enter(x: float, y: float): MouseEvent

fn mouse_leave(): MouseEvent

fn mouse_click(button: MouseButton, x: float, y: float, mods: Modifiers): MouseEvent

fn mouse_double_click(button: MouseButton, x: float, y: float, mods: Modifiers): MouseEvent

fn mouse_scroll(dx: float, dy: float, x: float, y: float, mods: Modifiers): MouseEvent

fn mouse_event_x(e: MouseEvent): float

fn mouse_event_y(e: MouseEvent): float

fn mouse_event_button(e: MouseEvent): MouseButton

fn mouse_event_modifiers(e: MouseEvent): Modifiers

fn key_down(code: KeyCode, mods: Modifiers): KeyEvent

fn key_up(code: KeyCode, mods: Modifiers): KeyEvent

fn key_press(c: char, mods: Modifiers): KeyEvent

fn key_event_code(e: KeyEvent): KeyCode

fn key_event_char(e: KeyEvent): char

fn key_event_modifiers(e: KeyEvent): Modifiers

fn focus_in(): FocusEvent

fn focus_out(): FocusEvent

fn window_resize(width: int, height: int): WindowEvent

fn window_close(): WindowEvent

fn window_minimize(): WindowEvent

fn window_maximize(): WindowEvent

fn window_restore(): WindowEvent

fn window_move(x: int, y: int): WindowEvent

fn window_expose(): WindowEvent

fn window_event_width(e: WindowEvent): int

fn window_event_height(e: WindowEvent): int

fn default_mouse_event(): MouseEvent

fn default_key_event(): KeyEvent

fn default_focus_event(): FocusEvent

fn default_window_event(): WindowEvent

fn event_mouse(e: MouseEvent): Event

fn event_key(e: KeyEvent): Event

fn event_focus(e: FocusEvent): Event

fn event_window(e: WindowEvent): Event

fn is_mouse_event(e: Event): bool

fn is_key_event(e: Event): bool

fn is_focus_event(e: Event): bool

fn is_window_event(e: Event): bool

fn get_mouse_event(e: Event): MouseEvent

fn get_key_event(e: Event): KeyEvent

fn get_focus_event(e: Event): FocusEvent

fn get_window_event(e: Event): WindowEvent


Generated by reefc doc