Trait Delegate

Source
pub trait Delegate {
    // Required methods
    fn tick(
        &mut self,
        context: &mut ApplicationContext,
        key_manager: &KeyManager,
        mouse_state: &MouseState,
        delegate_spawner: &mut DelegateSpawner,
    );
    fn render(&self, graphics: &mut Graphics);

    // Provided methods
    fn on_spawn(&mut self, _delegate_spawner: &mut DelegateSpawner) { ... }
    fn render_order(&self) -> i32 { ... }
}
Expand description

Trait for defining an interface for objects receiving updates from the application.

The order of objects receiving updates is opaque and subject to change.

Required Methods§

Source

fn tick( &mut self, context: &mut ApplicationContext, key_manager: &KeyManager, mouse_state: &MouseState, delegate_spawner: &mut DelegateSpawner, )

The order in which tick is called is opaque, do not depend on it.

Source

fn render(&self, graphics: &mut Graphics)

Render the object, the order in which render is called depends on the render_order.

Provided Methods§

Source

fn on_spawn(&mut self, _delegate_spawner: &mut DelegateSpawner)

Optional method to do things on spawn

Source

fn render_order(&self) -> i32

Objects that have a higher render_order will be rendered on top of objects with a lower order. Changing the render_order after spawn is not yet supported.

Implementors§