pub struct Button { /* private fields */ }
Expand description
Simple text label with a callback when
A button shows its content in a single line and has a fixed size.
Examples
let quit_button = Button::new("Quit", |s| s.quit());
Implementations
sourceimpl Button
impl Button
sourcepub fn new<F, S>(label: S, cb: F) -> Selfwhere
F: 'static + Fn(&mut Cursive),
S: Into<String>,
pub fn new<F, S>(label: S, cb: F) -> Selfwhere
F: 'static + Fn(&mut Cursive),
S: Into<String>,
Creates a new button with the given content and callback.
sourcepub fn new_raw<F, S: Into<String>>(label: S, cb: F) -> Selfwhere
F: 'static + Fn(&mut Cursive),
pub fn new_raw<F, S: Into<String>>(label: S, cb: F) -> Selfwhere
F: 'static + Fn(&mut Cursive),
Creates a new button without angle brackets.
sourcepub fn set_callback<F>(&mut self, cb: F)where
F: Fn(&mut Cursive) + 'static,
pub fn set_callback<F>(&mut self, cb: F)where
F: Fn(&mut Cursive) + 'static,
Sets the function to be called when the button is pressed.
Replaces the previous callback.
sourcepub fn set_enabled(&mut self, enabled: bool)
pub fn set_enabled(&mut self, enabled: bool)
Enable or disable this view.
sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Returns true
if this view is enabled.
sourcepub fn label(&self) -> &str
pub fn label(&self) -> &str
Returns the label for this button.
Includes brackets.
Examples
let button = Button::new("Quit", |s| s.quit());
assert_eq!(button.label(), "<Quit>");
sourcepub fn set_label<S>(&mut self, label: S)where
S: Into<String>,
pub fn set_label<S>(&mut self, label: S)where
S: Into<String>,
Sets the label to the given value.
This will include brackets.
sourcepub fn set_label_raw<S>(&mut self, label: S)where
S: Into<String>,
pub fn set_label_raw<S>(&mut self, label: S)where
S: Into<String>,
Sets the label exactly to the given value.
This will not include brackets.
Trait Implementations
sourceimpl View for Button
impl View for Button
sourcefn draw(&self, printer: &Printer<'_, '_>)
fn draw(&self, printer: &Printer<'_, '_>)
Draws the view with the given printer (includes bounds) and focus. Read more
sourcefn layout(&mut self, size: Vec2)
fn layout(&mut self, size: Vec2)
Called once the size for this view has been decided. Read more
sourcefn required_size(&mut self, _: Vec2) -> Vec2
fn required_size(&mut self, _: Vec2) -> Vec2
Returns the minimum size the view requires with the given restrictions. Read more
sourcefn on_event(&mut self, event: Event) -> EventResult
fn on_event(&mut self, event: Event) -> EventResult
Called when an event is received (key press, mouse event, …). Read more
sourcefn take_focus(&mut self, _: Direction) -> bool
fn take_focus(&mut self, _: Direction) -> bool
This view is offered focus. Will it take it? Read more
sourcefn important_area(&self, view_size: Vec2) -> Rect
fn important_area(&self, view_size: Vec2) -> Rect
What part of the view is important and should be visible? Read more
sourcefn needs_relayout(&self) -> bool
fn needs_relayout(&self) -> bool
Returns
true
if the view content changed since last layout phase. Read moresourcefn call_on_any<'a>(&mut self, _: &Selector<'_>, _: AnyCb<'a>)
fn call_on_any<'a>(&mut self, _: &Selector<'_>, _: AnyCb<'a>)
Runs a closure on the view identified by the given selector. Read more
Auto Trait Implementations
impl !RefUnwindSafe for Button
impl !Send for Button
impl !Sync for Button
impl Unpin for Button
impl !UnwindSafe for Button
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more