Struct conrod::UiCell
[−]
[src]
pub struct UiCell<'a, C: 'a> { // some fields omitted }
A wrapper around a Ui
that only exposes the functionality necessary for the Widget::update
method. Its primary role is to allow for widget designers to compose their own unique Widget
s
from other Widget
s by calling the Widget::set
method within their own Widget
's
update method. It also provides methods for accessing the Ui
's Theme
, GlyphCache
and
UserInput
via immutable reference.
BTW - if you have a better name for this type, please post an issue or PR! "Cell" was the best
I could come up with as it's kind of like a jail cell for the Ui
- restricting a user's
access to it.
Methods
impl<'a, C> UiCell<'a, C>
[src]
fn theme(&self) -> &Theme
A reference to the Theme
that is currently active within the Ui
.
fn glyph_cache(&self) -> &GlyphCache<C>
A reference to the Ui
's GlyphCache
.
fn input(&self) -> UserInput
A struct representing the user input that has occurred since the last update.
fn input_for<I: Into<Index>>(&self, idx: I) -> UserInput
A struct representing the user input that has occurred since the last update for the
Widget
with the given index..
fn new_unique_node_index(&mut self) -> NodeIndex
Generate a new, unique NodeIndex into a Placeholder node within the Ui
's widget graph.
This should only be called once for each unique widget needed to avoid unnecessary bloat
within the Ui
's widget graph.
When using this method in your Widget
's update
method, be sure to store the returned
NodeIndex somewhere within your Widget::State
so that it can be re-used on next update.