Struct conrod::Button
[−]
[src]
pub struct Button<'a, F> { pub style: Style, // some fields omitted }
A pressable button widget whose reaction is triggered upon release.
Fields
style: Style
Unique styling for the Button.
Methods
impl<'a, F> Button<'a, F>
[src]
fn new() -> Button<'a, F>
Create a button context to be built upon.
fn react(self, reaction: F) -> Self
Set the reaction for the Button. The reaction will be triggered upon release of the button.
fn enabled(self, flag: bool) -> Self
If true, will allow user inputs. If false, will disallow user inputs.
Trait Implementations
impl<'a, F> Widget for Button<'a, F> where F: FnMut()
[src]
type State = State
State to be stored within the Ui
s widget cache. Take advantage of this type for any large allocations that you would like to avoid repeating between updates, or any calculations that you'd like to avoid repeating between calls to update
and draw
. Conrod will never clone the state, it will only ever be moved. Read more
type Style = Style
Styling used by the widget to construct an Element. Styling is useful to have in its own abstraction in order to making Theme serializing easier. Conrod doesn't yet support serializing non-internal widget styling with the Theme
type, but we hope to soon. Read more
fn common(&self) -> &CommonBuilder
Return a reference to a CommonBuilder struct owned by the Widget. This method allows us to do a blanket impl of Positionable and Sizeable for T: Widget. Read more
fn common_mut(&mut self) -> &mut CommonBuilder
Return a mutable reference to a CommonBuilder struct owned by the Widget. This method allows us to do a blanket impl of Positionable and Sizeable for T: Widget. Read more
fn unique_kind(&self) -> &'static str
Return the kind of the widget as a &'static str. Note that this must be unique from all other widgets' "unique kinds". This is used by conrod to help avoid WidgetId errors and to provide better messages for those that do occur. Read more
fn init_state(&self) -> State
Return the initial State
of the Widget. The Ui
will only call this once.
fn style(&self) -> Style
Return the styling of the widget. The Ui
will call this once prior to each update
. It does this so that it can check for differences in Style
in case a new Element
needs to be constructed. Read more
fn capture_mouse(prev: &State, new: &State) -> bool
Optionally override with the case that the widget should capture the mouse.
fn uncapture_mouse(prev: &State, new: &State) -> bool
Optionally override with the case that the widget should capture the mouse.
fn default_width<C: CharacterCache>(&self, theme: &Theme, _: &GlyphCache<C>) -> Scalar
The default width of the widget. A reference to the GlyphCache is provided in case the width should adjust to some text len. This method is only used if no width or dimensions are given. Read more
fn default_height(&self, theme: &Theme) -> Scalar
The default height of the widget. This method is only used if no height or dimensions are given. Read more
fn update<C>(self, args: UpdateArgs<Self, C>) -> Option<State> where C: CharacterCache
Update the state of the Button.
fn draw<C>(args: DrawArgs<Self, C>) -> Element where C: CharacterCache
Construct an Element from the given Button State.
fn default_position(&self, _theme: &Theme) -> Position
The default Position for the widget. This is used when no Position is explicitly given when instantiating the Widget. Read more
fn default_h_align(&self, theme: &Theme) -> HorizontalAlign
The default horizontal alignment for the widget. This is used when no HorizontalAlign is explicitly given when instantiating a Widget. Read more
fn default_v_align(&self, theme: &Theme) -> VerticalAlign
The default vertical alignment for the widget. This is used when no VerticalAlign is explicitly given when instantiating a Widget. Read more
fn capture_keyboard(_prev: &Self::State, _new: &Self::State) -> bool
Optionally override with the case that the widget should capture the mouse.
fn uncapture_keyboard(_prev: &Self::State, _new: &Self::State) -> bool
Optionally override with the case that the widget should capture the mouse.
fn drag_area(&self, _dim: Dimensions, _style: &Self::Style, _theme: &Theme) -> Option<Rect>
If the widget is draggable, implement this method and return the position an dimensions of the draggable space. The position should be relative to the center of the widget. Read more
fn kid_area<C: CharacterCache>(&self, args: KidAreaArgs<Self, C>) -> KidArea
The area on which child widgets will be placed when using the Place
Position
methods.
fn parent<I: Into<Index>>(self, maybe_parent_idx: Option<I>) -> Self
Set the parent widget for this Widget by passing the WidgetId of the parent. This will attach this Widget to the parent widget. Read more
fn floating(self, is_floating: bool) -> Self
Set whether or not the widget is floating (the default is false
). A typical example of a floating widget would be a pop-up or alert window. Read more
fn scrolling(self, scrollable: bool) -> Self
Set whether or not the widget's KidArea
is scrollable (the default is false). If a widget is scrollable and it has children widgets that fall outside of its KidArea
, the KidArea
will become scrollable. Read more
fn vertical_scrolling(self, scrollable: bool) -> Self
Set whether or not the widget's KidArea
is scrollable (the default is false). If a widget is scrollable and it has children widgets that fall outside of its KidArea
, the KidArea
will become scrollable. Read more
fn horizontal_scrolling(self, scrollable: bool) -> Self
Set whether or not the widget's KidArea
is scrollable (the default is false). If a widget is scrollable and it has children widgets that fall outside of its KidArea
, the KidArea
will become scrollable. Read more
fn set<I, U>(self, idx: I, ui: &mut U) where I: Into<Index>, U: UiRefMut
Note: There should be no need to override this method. Read more
impl<'a, F> Colorable for Button<'a, F>
[src]
fn color(self, color: Color) -> Self
Set the color of the widget.
fn rgba(self, r: f32, g: f32, b: f32, a: f32) -> Self
Set the color of the widget from rgba values.
fn rgb(self, r: f32, g: f32, b: f32) -> Self
Set the color of the widget from rgb values.
fn hsla(self, h: f32, s: f32, l: f32, a: f32) -> Self
Set the color of the widget from hsla values.
fn hsl(self, h: f32, s: f32, l: f32) -> Self
Set the color of the widget from hsl values.
impl<'a, F> Frameable for Button<'a, F>
[src]
fn frame(self, width: f64) -> Self
Set the width of the widget's frame.
fn frame_color(self, color: Color) -> Self
Set the color of the widget's frame.
fn frame_rgba(self, r: f32, g: f32, b: f32, a: f32) -> Self
Set the color of the widget's frame with rgba values.
fn frame_rgb(self, r: f32, g: f32, b: f32) -> Self
Set the color of the widget's frame with rgb values.
fn frame_hsla(self, h: f32, s: f32, l: f32, a: f32) -> Self
Set the color of the widget's frame with hsla values.
fn frame_hsl(self, h: f32, s: f32, l: f32) -> Self
Set the color of the widget's frame with hsl values.
impl<'a, F> Labelable<'a> for Button<'a, F>
[src]
fn label(self, text: &'a str) -> Self
Set the label for the widget.
fn label_color(self, color: Color) -> Self
Set the color of the widget's label.
fn label_font_size(self, size: FontSize) -> Self
Set the font size for the widget's label.
fn label_rgba(self, r: f32, g: f32, b: f32, a: f32) -> Self
Set the color of the widget's label from rgba values.
fn label_rgb(self, r: f32, g: f32, b: f32) -> Self
Set the color of the widget's label from rgb values.
fn label_hsla(self, h: f32, s: f32, l: f32, a: f32) -> Self
Set the color of the widget's label from hsla values.
fn label_hsl(self, h: f32, s: f32, l: f32) -> Self
Set the color of the widget's label from hsl values.
fn small_font<C>(self, ui: &Ui<C>) -> Self
Set a "small" font size for the widget's label.
fn medium_font<C>(self, ui: &Ui<C>) -> Self
Set a "medium" font size for the widget's label.
fn large_font<C>(self, ui: &Ui<C>) -> Self
Set a "large" font size for the widget's label.