[][src]Struct nannou::ui::prelude::widget::State

pub struct State<'a, T> where
    T: 'a, 
{ /* fields omitted */ }

A wrapper around a Widget's unique Widget::State.

This type is used to provide limited access to the Widget::State within the Widget::update method (to which it is passed via the UpdateArgs).

The type provides only two methods. One for viewing the state, the other for mutating it.

We do this so that we can keep track of whether or not the Widget::State has been mutated (using an internal has_updated flag). This allows us to know whether or not we need to re-draw the Widget, without having to compare the previous and new Widget::States.

Methods

impl<'a, T> State<'a, T>[src]

pub fn update<F>(&mut self, f: F) where
    F: FnOnce(&mut T), 
[src]

Mutate the internal widget state and set a flag notifying us that there has been a mutation.

If this method is not called, we assume that there has been no mutation and in turn we do not need to re-draw the Widget.

If this method is called, we assume that there has been some mutation and in turn will need to re-draw the Widget. Thus, it is recommended that you only call this method if you need to update the unique state in some way.

Trait Implementations

impl<'a, T> Deref for State<'a, T>[src]

type Target = T

The resulting type after dereferencing.

Auto Trait Implementations

impl<'a, T> RefUnwindSafe for State<'a, T> where
    T: RefUnwindSafe

impl<'a, T> Send for State<'a, T> where
    T: Send

impl<'a, T> Sync for State<'a, T> where
    T: Sync

impl<'a, T> Unpin for State<'a, T>

impl<'a, T> !UnwindSafe for State<'a, T>

Blanket Implementations

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
    D: AdaptFrom<S, Swp, Dwp, T>,
    Dwp: WhitePoint,
    Swp: WhitePoint,
    T: Component + Float
[src]

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, U> ConvertInto<U> for T where
    U: ConvertFrom<T>, 
[src]

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

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

impl<T> SetParameter for T

impl<T> SetParameter for T

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<V, T> VZip<V> for T where
    V: MultiLane<T>,