[][src]Struct fui::cursive::views::Button

pub struct Button { /* fields omitted */ }

Simple text label with a callback when is pressed.

A button shows its content in a single line and has a fixed size.

Examples

let quit_button = Button::new("Quit", |s| s.quit());

Methods

impl Button[src]

pub fn new<F, S>(label: S, cb: F) -> Button where
    F: 'static + Fn(&mut Cursive),
    S: Into<String>, 
[src]

Creates a new button with the given content and callback.

pub fn new_raw<F, S>(label: S, cb: F) -> Button where
    F: 'static + Fn(&mut Cursive),
    S: Into<String>, 
[src]

Creates a new button without angle brackets.

pub fn set_callback<F>(&mut self, cb: F) where
    F: Fn(&mut Cursive) + 'static, 
[src]

Sets the function to be called when the button is pressed.

Replaces the previous callback.

pub fn disable(&mut self)[src]

Disables this view.

A disabled view cannot be selected.

pub fn disabled(self) -> Button[src]

Disables this view.

Chainable variant.

pub fn enable(&mut self)[src]

Re-enables this view.

pub fn set_enabled(&mut self, enabled: bool)[src]

Enable or disable this view.

pub fn is_enabled(&self) -> bool[src]

Returns true if this view is enabled.

pub fn label(&self) -> &str[src]

Returns the label for this button.

Includes brackets.

Examples

let button = Button::new("Quit", |s| s.quit());
assert_eq!(button.label(), "<Quit>");

pub fn set_label<S>(&mut self, label: S) where
    S: Into<String>, 
[src]

Sets the label to the given value.

This will include brackets.

pub fn set_label_raw<S>(&mut self, label: S) where
    S: Into<String>, 
[src]

Sets the label exactly to the given value.

This will not include brackets.

Trait Implementations

impl View for Button[src]

fn call_on_any(
    &mut self,
    &Selector,
    Box<dyn FnMut(&mut (dyn Any + 'static)) + 'a>
)
[src]

Runs a closure on the view identified by the given selector. Read more

fn focus_view(&mut self, &Selector) -> Result<(), ()>[src]

Moves the focus to the view identified by the given selector. Read more

Auto Trait Implementations

impl !Send for Button

impl !Sync for Button

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> With for T[src]

fn with<F>(self, f: F) -> Self where
    F: FnOnce(&mut Self), 
[src]

Calls the given closure on self.

fn try_with<E, F>(self, f: F) -> Result<Self, E> where
    F: FnOnce(&mut Self) -> Result<(), E>, 
[src]

Calls the given closure on self.

fn with_if<F>(self, condition: bool, f: F) -> Self where
    F: FnOnce(&mut Self), 
[src]

Calls the given closure if condition == true.

impl<T> Scrollable for T where
    T: View
[src]

fn scrollable(self) -> ScrollView<Self>[src]

Wraps self in a ScrollView.

impl<T> Identifiable for T where
    T: View
[src]

fn with_id<S>(self, id: S) -> IdView<Self> where
    S: Into<String>, 
[src]

Wraps this view into an IdView with the given id. Read more

impl<T> Boxable for T where
    T: View
[src]

fn boxed(self, width: SizeConstraint, height: SizeConstraint) -> BoxView<Self>[src]

Wraps self in a BoxView with the given size constraints.

fn fixed_size<S>(self, size: S) -> BoxView<Self> where
    S: Into<XY<usize>>, 
[src]

Wraps self into a fixed-size BoxView.

fn fixed_width(self, width: usize) -> BoxView<Self>[src]

Wraps self into a fixed-width BoxView.

fn fixed_height(self, height: usize) -> BoxView<Self>[src]

Wraps self into a fixed-width BoxView.

fn full_screen(self) -> BoxView<Self>[src]

Wraps self into a full-screen BoxView.

fn full_width(self) -> BoxView<Self>[src]

Wraps self into a full-width BoxView.

fn full_height(self) -> BoxView<Self>[src]

Wraps self into a full-height BoxView.

fn max_size<S>(self, size: S) -> BoxView<Self> where
    S: Into<XY<usize>>, 
[src]

Wraps self into a limited-size BoxView.

fn max_width(self, max_width: usize) -> BoxView<Self>[src]

Wraps self into a limited-width BoxView.

fn max_height(self, max_height: usize) -> BoxView<Self>[src]

Wraps self into a limited-height BoxView.

fn min_size<S>(self, size: S) -> BoxView<Self> where
    S: Into<XY<usize>>, 
[src]

Wraps self into a BoxView at least sized size.

fn min_width(self, min_width: usize) -> BoxView<Self>[src]

Wraps self in a BoxView at least min_width wide.

fn min_height(self, min_height: usize) -> BoxView<Self>[src]

Wraps self in a BoxView at least min_height tall.

impl<T> View for T where
    T: ViewWrapper
[src]

impl<T> Finder for T where
    T: View
[src]

fn call_on_id<V, F, R>(&mut self, id: &str, callback: F) -> Option<R> where
    F: FnOnce(&mut V) -> R,
    V: View + Any
[src]

Convenient method to use call_on with a view::Selector::Id.

fn find_id<V>(
    &mut self,
    id: &str
) -> Option<OwningHandle<OwningRef<Rc<RefCell<V>>, RefCell<V>>, RefMut<'static, V>>> where
    V: View + Any
[src]

Convenient method to find a view wrapped in an [IdView]. Read more

impl<T> AnyView for T where
    T: View
[src]

fn as_any(&self) -> &(dyn Any + 'static)[src]

Downcast self to a Any.

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)[src]

Downcast self to a mutable Any.

impl<T> IntoBoxedView for T where
    T: View
[src]

impl<T> Erased for T