Trait Component
Source 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>) -> Vec<Action> { ... }
fn handle_key_events(&mut self, key: KeyEvent) -> Vec<Action> { ... }
fn handle_mouse_events(&mut self, mouse: MouseEvent) -> Vec<Action> { ... }
fn dispatch(&mut self, action: Action) -> Option<Action> { ... }
}