pub trait EventHandler {
Show 16 methods fn update(&mut self, _ctx: &mut Context); fn draw(&mut self, _ctx: &mut Context); fn resize_event(&mut self, _ctx: &mut Context, _width: f32, _height: f32) { ... } fn mouse_motion_event(&mut self, _ctx: &mut Context, _x: f32, _y: f32) { ... } fn mouse_wheel_event(&mut self, _ctx: &mut Context, _x: f32, _y: f32) { ... } fn mouse_button_down_event(
        &mut self,
        _ctx: &mut Context,
        _button: MouseButton,
        _x: f32,
        _y: f32
    ) { ... } fn mouse_button_up_event(
        &mut self,
        _ctx: &mut Context,
        _button: MouseButton,
        _x: f32,
        _y: f32
    ) { ... } fn char_event(
        &mut self,
        _ctx: &mut Context,
        _character: char,
        _keymods: KeyMods,
        _repeat: bool
    ) { ... } fn key_down_event(
        &mut self,
        _ctx: &mut Context,
        _keycode: KeyCode,
        _keymods: KeyMods,
        _repeat: bool
    ) { ... } fn key_up_event(
        &mut self,
        _ctx: &mut Context,
        _keycode: KeyCode,
        _keymods: KeyMods
    ) { ... } fn touch_event(
        &mut self,
        ctx: &mut Context,
        phase: TouchPhase,
        _id: u64,
        x: f32,
        y: f32
    ) { ... } fn raw_mouse_motion(&mut self, _ctx: &mut Context, _dx: f32, _dy: f32) { ... } fn window_minimized_event(&mut self, _ctx: &mut Context) { ... } fn window_restored_event(&mut self, _ctx: &mut Context) { ... } fn quit_requested_event(&mut self, _ctx: &mut Context) { ... } fn files_dropped_event(&mut self, _ctx: &mut Context) { ... }
}
Expand description

A trait defining event callbacks.

Required Methods

On most platforms update() and draw() are called each frame, sequentially, draw right after update. But on Android (and maybe some other platforms in the future) update might be called without draw. When the app is in background, Android destroys the rendering surface, while app is still alive and can do some usefull calculations. Note that in this case drawing from update may lead to crashes.

Provided Methods

Default implementation emulates mouse clicks

Represents raw hardware mouse motion event Note that these events are delivered regardless of input focus and not in pixels, but in hardware units instead. And those units may be different from pixels depending on the target platform

Window has been minimized Right now is only implemented on Android, and is called on a Pause ndk callback

Window has been restored Right now is only implemented on Android, and is called on a Resume ndk callback

This event is sent when the userclicks the window’s close button or application code calls the ctx.request_quit() function. The event handler callback code can handle this event by calling ctx.cancel_quit() to cancel the quit. If the event is ignored, the application will quit as usual.

A file has been dropped over the application. Applications can request the number of dropped files with ctx.dropped_file_count(), path of an individual file with ctx.dropped_file_path(), and for wasm targets the file bytes can be requested with ctx.dropped_file_bytes().

Implementors