pub trait Program<Message, Theme = Theme, Renderer = Renderer<Renderer, Renderer>>where
Renderer: Renderer,{
type State: Default + 'static;
// Required method
fn draw(
&self,
state: &Self::State,
renderer: &Renderer,
theme: &Theme,
bounds: Rectangle,
cursor: Cursor
) -> Vec<<Renderer as Renderer>::Geometry>;
// Provided methods
fn update(
&self,
_state: &mut Self::State,
_event: Event,
_bounds: Rectangle,
_cursor: Cursor
) -> (Status, Option<Message>) { ... }
fn mouse_interaction(
&self,
_state: &Self::State,
_bounds: Rectangle,
_cursor: Cursor
) -> Interaction { ... }
}
Available on crate feature
canvas
only.