[][src]Struct cursive::views::Canvas

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: 'static + View> Canvas<T>[src]

pub fn wrap(view: T) -> Self[src]

Creates a new Canvas around the given view.

By default, forwards all calls to the inner view.

impl<T> Canvas<T>[src]

pub fn new(state: T) -> Self[src]

Creates a new, empty Canvas.

Examples

let canvas = Canvas::new(())
                    .with_draw(|printer, _| {
                        // Print the view
                    });

pub fn state_mut(&mut self) -> &mut T[src]

Gets a mutable reference to the inner state.

pub fn set_draw<F>(&mut self, f: F) where
    F: 'static + Fn(&T, &Printer), 
[src]

Sets the closure for draw(&Printer).

pub fn with_draw<F>(self, f: F) -> Self where
    F: 'static + Fn(&T, &Printer), 
[src]

Sets the closure for draw(&Printer).

Chainable variant.

pub fn set_on_event<F>(&mut self, f: F) where
    F: 'static + FnMut(&mut T, Event) -> EventResult
[src]

Sets the closure for on_event(Event).

pub fn with_on_event<F>(self, f: F) -> Self where
    F: 'static + FnMut(&mut T, Event) -> EventResult
[src]

Sets the closure for on_event(Event).

Chainable variant.

pub fn set_required_size<F>(&mut self, f: F) where
    F: 'static + FnMut(&mut T, Vec2) -> Vec2
[src]

Sets the closure for required_size(Vec2).

pub fn with_required_size<F>(self, f: F) -> Self where
    F: 'static + FnMut(&mut T, Vec2) -> Vec2
[src]

Sets the closure for required_size(Vec2).

Chainable variant.

pub fn set_layout<F>(&mut self, f: F) where
    F: 'static + FnMut(&mut T, Vec2), 
[src]

Sets the closure for layout(Vec2).

pub fn with_layout<F>(self, f: F) -> Self where
    F: 'static + FnMut(&mut T, Vec2), 
[src]

Sets the closure for layout(Vec2).

Chainable variant.

pub fn set_take_focus<F>(&mut self, f: F) where
    F: 'static + FnMut(&mut T, Direction) -> bool
[src]

Sets the closure for take_focus(Direction).

pub fn with_take_focus<F>(self, f: F) -> Self where
    F: 'static + FnMut(&mut T, Direction) -> bool
[src]

Sets the closure for take_focus(Direction).

Chainable variant.

pub fn set_needs_relayout<F>(&mut self, f: F) where
    F: 'static + Fn(&T) -> bool
[src]

Sets the closure for needs_relayout().

pub fn with_needs_relayout<F>(self, f: F) -> Self where
    F: 'static + Fn(&T) -> bool
[src]

Sets the closure for needs_relayout().

Chainable variant.

pub fn set_call_on_any<F>(&mut self, f: F) where
    F: 'static + for<'a> FnMut(&mut T, &Selector, AnyCb<'a>), 
[src]

Sets the closure for call_on_any().

pub fn with_call_on_any<F>(self, f: F) -> Self where
    F: 'static + for<'a> FnMut(&mut T, &Selector, AnyCb<'a>), 
[src]

Sets the closure for call_on_any().

Chainable variant.

pub fn set_important_area<F>(&mut self, f: F) where
    F: 'static + Fn(&T, Vec2) -> Rect
[src]

Sets the closure for important_area().

pub fn with_important_area<F>(self, f: F) -> Self where
    F: 'static + Fn(&T, Vec2) -> Rect
[src]

Sets the closure for important_area().

Chainable variant.

pub fn set_focus_view<F>(&mut self, f: F) where
    F: 'static + FnMut(&mut T, &Selector) -> Result<(), ()>, 
[src]

Sets the closure for focus_view().

pub fn with_focus_view<F>(self, f: F) -> Self where
    F: 'static + FnMut(&mut T, &Selector) -> Result<(), ()>, 
[src]

Sets the closure for focus_view().

Chainable variant.

Trait Implementations

impl<T: 'static> View for Canvas<T>[src]

Auto Trait Implementations

impl<T> !Sync for Canvas<T>

impl<T> !Send for Canvas<T>

impl<T> Unpin for Canvas<T> where
    T: Unpin

impl<T> !RefUnwindSafe for Canvas<T>

impl<T> !UnwindSafe for Canvas<T>

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T[src]