[][src]Struct conrod_core::widget::UpdateArgs

pub struct UpdateArgs<'a, 'b: 'a, 'c, 'd: 'c, W> where
    W: Widget
{ pub id: Id, pub maybe_parent_id: Option<Id>, pub prev: &'a CommonState, pub state: &'a mut State<'b, W::State>, pub rect: Rect, pub style: &'a W::Style, pub ui: &'c mut UiCell<'d>, }

Arguments for the Widget::update method in a struct to simplify the method signature.

Fields

id: Id

The Widget's unique index.

maybe_parent_id: Option<Id>

The Widget's parent unique index, if there is one.

prev: &'a CommonState

The Widget's previous state. Specifically, the state that is common between all widgets, such as positioning, floatability, draggability, etc.

state: &'a mut State<'b, W::State>

A wrapper around the Widget's unique state, providing methods for both immutably viewing and mutably updating the state.

We wrap mutation in a method so that we can keep track of whether or not the unique state has been updated.

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

rect: Rect

The rectangle describing the Widget's area.

style: &'a W::Style

The Widget's current Widget::Style.

ui: &'c mut UiCell<'d>

Restricted access to the Ui.

Provides methods for immutably accessing the Ui's Theme and GlyphCache. Also allows calling Widget::set within the Widget::update method.

Auto Trait Implementations

impl<'a, 'b, 'c, 'd, W> !RefUnwindSafe for UpdateArgs<'a, 'b, 'c, 'd, W>

impl<'a, 'b, 'c, 'd, W> Send for UpdateArgs<'a, 'b, 'c, 'd, W> where
    <W as Widget>::State: Send,
    <W as Widget>::Style: Sync

impl<'a, 'b, 'c, 'd, W> !Sync for UpdateArgs<'a, 'b, 'c, 'd, W>

impl<'a, 'b, 'c, 'd, W> Unpin for UpdateArgs<'a, 'b, 'c, 'd, W> where
    'b: 'a,
    'd: 'c, 

impl<'a, 'b, 'c, 'd, W> !UnwindSafe for UpdateArgs<'a, 'b, 'c, 'd, W>

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, 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.