[−][src]Struct conrod_core::widget::State
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.
Implementations
impl<'a, T> State<'a, T>
[src]
pub fn update<F>(&mut self, f: F) where
F: FnOnce(&mut T),
[src]
F: FnOnce(&mut T),
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
Auto Trait Implementations
impl<'a, T> RefUnwindSafe for State<'a, T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<'a, T> Send for State<'a, T> where
T: Send,
T: Send,
impl<'a, T> Sync for State<'a, T> where
T: Sync,
T: Sync,
impl<'a, T> Unpin for State<'a, T>
impl<'a, T> !UnwindSafe for State<'a, T>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,