pub trait Component {
    // Required method
    fn render(&mut self, f: &mut Frame<'_>, rect: Rect);

    // Provided methods
    fn init(&mut self, tx: UnboundedSender<Action>) -> Result<()> { ... }
    fn handle_events(&mut self, event: Option<Event>) -> Action { ... }
    fn handle_key_events(&mut self, key: KeyEvent) -> Action { ... }
    fn handle_mouse_events(&mut self, mouse: MouseEvent) -> Action { ... }
    fn dispatch(&mut self, action: Action) -> Option<Action> { ... }
}

Required Methods§

source

fn render(&mut self, f: &mut Frame<'_>, rect: Rect)

Provided Methods§

source

fn init(&mut self, tx: UnboundedSender<Action>) -> Result<()>

source

fn handle_events(&mut self, event: Option<Event>) -> Action

source

fn handle_key_events(&mut self, key: KeyEvent) -> Action

source

fn handle_mouse_events(&mut self, mouse: MouseEvent) -> Action

source

fn dispatch(&mut self, action: Action) -> Option<Action>

Implementors§