agnostic/platform/opentui/event
TUI event helpers for OpenTUI. These provide event handlers for TUI-specific events that map to @opentui/core event types.
Values
pub fn on_activate(msg: msg) -> vattr.Attribute(msg)
Listen for Enter or Space key presses — useful for “activating” a focused element.
pub fn on_change(
handler: fn(String) -> msg,
) -> vattr.Attribute(msg)
Listen for select/change events.
pub fn on_content_change(
handler: fn(String) -> msg,
) -> vattr.Attribute(msg)
Listen for content change events. The handler receives the current text.
pub fn on_cursor_change(
handler: fn(Int, Int) -> msg,
) -> vattr.Attribute(msg)
Listen for cursor change events. The handler receives the line and visual column position.
pub fn on_input(
handler: fn(String) -> msg,
) -> vattr.Attribute(msg)
Listen for input value changes. The handler receives the new value.
pub fn on_key_down(
handler: fn(effect.KeyEvent) -> msg,
) -> vattr.Attribute(msg)
Listen for key down events.
pub fn on_key_press(
handler: fn(effect.KeyEvent) -> msg,
) -> vattr.Attribute(msg)
Listen for key press events. The handler receives a KeyEvent containing
the key name and the state of the shift, ctrl, meta, and option modifiers.
pub fn on_key_up(
handler: fn(effect.KeyEvent) -> msg,
) -> vattr.Attribute(msg)
Listen for key up events.
pub fn on_mouse_down(msg: msg) -> vattr.Attribute(msg)
Listen for mouse down events.
pub fn on_mouse_drag(msg: msg) -> vattr.Attribute(msg)
Listen for mouse drag events.
pub fn on_mouse_drag_end(msg: msg) -> vattr.Attribute(msg)
Listen for mouse drag end events.
pub fn on_mouse_drop(msg: msg) -> vattr.Attribute(msg)
Listen for mouse drop events.
pub fn on_mouse_move(msg: msg) -> vattr.Attribute(msg)
Listen for mouse move events.
pub fn on_mouse_over(msg: msg) -> vattr.Attribute(msg)
Listen for mouse over events.
pub fn on_paste(
handler: fn(String) -> msg,
) -> vattr.Attribute(msg)
Listen for paste events. The handler receives the pasted text.
pub fn on_select(handler: fn(Int) -> msg) -> vattr.Attribute(msg)
Listen for item selection events (e.g. Enter in a select list). The handler receives the selected index.
pub fn on_selection_change(
handler: fn(Int) -> msg,
) -> vattr.Attribute(msg)
Listen for selection change events (e.g. navigating with j/k in a select list). The handler receives the newly highlighted index.
pub fn on_size_change(msg: msg) -> vattr.Attribute(msg)
Listen for size change events.
pub fn on_slider_change(
handler: fn(Float) -> msg,
) -> vattr.Attribute(msg)
Listen for slider value change events. The handler receives the new value.
pub fn on_submit(
handler: fn(String) -> msg,
) -> vattr.Attribute(msg)
Listen for submit events (e.g. pressing Enter in an input).