Struct conrod::UpdateArgs [] [src]

pub struct UpdateArgs<'a, 'b: 'a, W, C: 'a> where W: Widget {
    pub idx: Index,
    pub maybe_parent_idx: Option<Index>,
    pub prev: &'a CommonState,
    pub state: &'a mut State<'b, W::State>,
    pub rect: Rect,
    pub style: &'a W::Style,
    pub ui: UiCell<'a, C>,
}

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

Fields

idx: Index

The Widget's unique index.

maybe_parent_idx: Option<Index>

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: UiCell<'a, C>

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.