Struct cursive::views::Canvas
[−]
[src]
pub struct Canvas<T> { /* fields omitted */ }
A blank view that forwards calls to closures.
You can use this view to easily draw your own interface.
Methods
impl<T> Canvas<T>
[src]
fn new(state: T) -> Self
Creates a new, empty Canvas.
Examples
let canvas = Canvas::new(()) .with_draw(|printer, _| { // Print the view });
fn set_draw<F>(&mut self, f: F) where F: 'static + Fn(&Printer, &T)
Sets the closure for draw(&Printer)
fn with_draw<F>(self, f: F) -> Self where F: 'static + Fn(&Printer, &T)
Sets the closure for draw(&Printer)
Chainable variant.
fn set_on_event<F>(&mut self, f: F) where F: 'static + FnMut(Event, &mut T) -> EventResult
Sets the closure for on_event(Event)
fn with_on_event<F>(self, f: F) -> Self where F: 'static + FnMut(Event, &mut T) -> EventResult
Sets the closure for on_event(Event)
Chainable variant.
fn set_required_size<F>(&mut self, f: F) where F: 'static + FnMut(Vec2, &mut T) -> Vec2
Sets the closure for required_size(Vec2)
fn with_required_size<F>(self, f: F) -> Self where F: 'static + FnMut(Vec2, &mut T) -> Vec2
Sets the closure for required_size(Vec2)
Chainable variant.
fn set_layout<F>(&mut self, f: F) where F: 'static + FnMut(Vec2, &mut T)
Sets the closure for layout(Vec2)
fn with_layout<F>(self, f: F) -> Self where F: 'static + FnMut(Vec2, &mut T)
Sets the closure for layout(Vec2)
Chainable variant.
fn set_take_focus<F>(&mut self, f: F) where F: 'static + FnMut(Direction, &mut T) -> bool
Sets the closure for take_focus(Direction)
fn with_take_focus<F>(self, f: F) -> Self where F: 'static + FnMut(Direction, &mut T) -> bool
Sets the closure for take_focus(Direction)
Chainable variant.
Trait Implementations
impl<T> View for Canvas<T>
[src]
fn draw(&self, printer: &Printer)
Draws the view with the given printer (includes bounds) and focus.
fn on_event(&mut self, event: Event) -> EventResult
Called when a key was pressed. Read more
fn required_size(&mut self, constraint: Vec2) -> Vec2
Returns the minimum size the view requires with the given restrictions. Read more
fn layout(&mut self, size: Vec2)
Called once the size for this view has been decided, Read more
fn take_focus(&mut self, source: Direction) -> bool
This view is offered focus. Will it take it? Read more
fn needs_relayout(&self) -> bool
Returns true
if the view content changed since last layout phase. Read more
fn find_any(&mut self, &Selector) -> Option<&mut Any>
Finds the view pointed to by the given path. Read more