[][src]Struct druid::widget::ViewSwitcher

pub struct ViewSwitcher<T, U> { /* fields omitted */ }

Implementations

impl<T: Data, U: PartialEq> ViewSwitcher<T, U>[src]

pub fn new(
    child_picker: impl Fn(&T, &Env) -> U + 'static,
    child_builder: impl Fn(&U, &T, &Env) -> Box<dyn Widget<T>> + 'static
) -> Self
[src]

Create a new view switcher.

The child_picker closure is called every time the application data changes. If the value it returns is the same as the one it returned during the previous data change, nothing happens. If it returns a different value, then the child_builder closure is called with the new value.

The child_builder closure creates a new child widget based on the value passed to it.

Trait Implementations

impl<T: Data, U: PartialEq> Widget<T> for ViewSwitcher<T, U>[src]

Auto Trait Implementations

impl<T, U> !RefUnwindSafe for ViewSwitcher<T, U>

impl<T, U> !Send for ViewSwitcher<T, U>

impl<T, U> !Sync for ViewSwitcher<T, U>

impl<T, U> Unpin for ViewSwitcher<T, U> where
    T: Unpin,
    U: Unpin

impl<T, U> !UnwindSafe for ViewSwitcher<T, U>

Blanket Implementations

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

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

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

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

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

impl<T> RoundFrom<T> for T

impl<T, U> RoundInto<U> for T where
    U: RoundFrom<T>, 

impl<T> Same<T> for T

type Output = T

Should always be Self

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.