pub struct Button { /* private fields */ }Expand description
Creates a normal button
Implementations§
Source§impl Button
impl Button
Sourcepub fn set_compact(&mut self, flag: bool)
pub fn set_compact(&mut self, flag: bool)
Set whether a button is compact
Examples found in repository?
examples/calculator.rs (line 40)
37 pub fn new(title: &'static str) -> MyButton {
38 let mut b = Button::new(0, 0, 90, 0, title);
39 b.set_label_size(20);
40 b.set_compact(true);
41 match title {
42 "0" => {
43 b.resize(0, 0, 90 * 2, 0);
44 b.set_color(Color::Light3);
45 b.set_shortcut(Shortcut::None | '0');
46 }
47 "CE" => {
48 b.set_color(Color::Red);
49 b.set_shortcut(Shortcut::None | Key::Delete);
50 }
51 "x" | "/" | "+" | "-" | "=" | "C" | "@<-" => {
52 b.set_color(Color::Yellow);
53 let shortcut = if title == "x" {
54 '*'
55 } else {
56 title.chars().next().unwrap()
57 };
58 b.set_shortcut(Shortcut::None | shortcut);
59 if shortcut == '@' {
60 b.set_shortcut(Shortcut::None | Key::BackSpace);
61 }
62 if shortcut == '=' {
63 b.set_shortcut(Shortcut::None | Key::Enter);
64 }
65 }
66 _ => {
67 b.set_color(Color::Light3);
68 b.set_shortcut(Shortcut::None | title.chars().next().unwrap());
69 }
70 }
71 Self { b }
72 }Trait Implementations§
Source§impl ButtonExt for Button
impl ButtonExt for Button
Source§fn set_shortcut(&mut self, shortcut: Shortcut)
fn set_shortcut(&mut self, shortcut: Shortcut)
Sets the shortcut associated with a button
Source§fn clear(&mut self)
fn clear(&mut self)
Clears the value of the button.
Useful for round, radio, light, toggle and check buttons
Source§fn is_set(&self) -> bool
fn is_set(&self) -> bool
Returns whether a button is set or not.
Useful for round, radio, light, toggle and check buttons
Source§fn set(&mut self, flag: bool)
fn set(&mut self, flag: bool)
Sets whether a button is set or not.
Useful for round, radio, light, toggle and check buttons
Source§fn value(&self) -> bool
fn value(&self) -> bool
Returns whether a button is set or not.
Useful for round, radio, light, toggle and check buttons
Source§fn set_value(&mut self, flag: bool)
fn set_value(&mut self, flag: bool)
Sets whether a button is set or not.
Useful for round, radio, light, toggle and check buttons
Source§fn set_down_frame(&mut self, f: FrameType)
fn set_down_frame(&mut self, f: FrameType)
Set the
down_box of the widgetSource§fn down_frame(&self) -> FrameType
fn down_frame(&self) -> FrameType
Get the down frame type of the widget
Source§impl WidgetBase for Button
impl WidgetBase for Button
Source§fn new<'a, T: Into<Option<&'a str>>>(
x: i32,
y: i32,
width: i32,
height: i32,
title: T,
) -> Button
fn new<'a, T: Into<Option<&'a str>>>( x: i32, y: i32, width: i32, height: i32, title: T, ) -> Button
Creates a new widget, takes an x, y coordinates, as well as a width and height, plus a title Read more
Source§fn default_fill() -> Self
fn default_fill() -> Self
Constructs a widget with the size of its parent
Source§unsafe fn from_widget_ptr(ptr: *mut Fl_Widget) -> Self
unsafe fn from_widget_ptr(ptr: *mut Fl_Widget) -> Self
transforms a widget pointer to a Widget, for internal use Read more
Source§unsafe fn from_widget<W: WidgetExt>(w: W) -> Self
unsafe fn from_widget<W: WidgetExt>(w: W) -> Self
Get a widget from base widget Read more
Source§fn handle<F: FnMut(&mut Self, Event) -> bool + 'static>(&mut self, cb: F)
fn handle<F: FnMut(&mut Self, Event) -> bool + 'static>(&mut self, cb: F)
Set a custom handler, where events are managed manually, akin to
Fl_Widget::handle(int).
Handled or ignored events should return true, unhandled events should return false.
takes the widget as a closure argument.
The ability to handle an event might depend on handling other events, as explained hereSource§fn draw<F: FnMut(&mut Self) + 'static>(&mut self, cb: F)
fn draw<F: FnMut(&mut Self) + 'static>(&mut self, cb: F)
Set a custom draw method.
takes the widget as a closure argument.
macOS requires that
WidgetBase::draw actually calls drawing functionsSource§fn resize_callback<F: FnMut(&mut Self, i32, i32, i32, i32) + 'static>(
&mut self,
cb: F,
)
fn resize_callback<F: FnMut(&mut Self, i32, i32, i32, i32) + 'static>( &mut self, cb: F, )
Perform a callback on resize.
Avoid resizing the parent or the same widget to avoid infinite recursion
Source§unsafe fn assume_derived(&mut self)
unsafe fn assume_derived(&mut self)
Makes the widget derived Read more
Source§impl WidgetExt for Button
impl WidgetExt for Button
Source§fn with_label(self, title: &str) -> Self
fn with_label(self, title: &str) -> Self
Initialize with a label
Source§fn with_align(self, align: Align) -> Self
fn with_align(self, align: Align) -> Self
Initialize with alignment
Source§fn with_type<T: WidgetType>(self, typ: T) -> Self
fn with_type<T: WidgetType>(self, typ: T) -> Self
Initialize with type
Source§fn below_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
fn below_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
Initialize at bottom of another widget
Source§fn above_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
fn above_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
Initialize above of another widget
Source§fn right_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
fn right_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
Initialize right of another widget
Source§fn left_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
fn left_of<W: WidgetExt>(self, wid: &W, padding: i32) -> Self
Initialize left of another widget
Source§fn center_of_parent(self) -> Self
fn center_of_parent(self) -> Self
Initialize center of parent
Source§fn size_of_parent(self) -> Self
fn size_of_parent(self) -> Self
Initialize to the size of the parent
Source§fn set_label(&mut self, title: &str)
fn set_label(&mut self, title: &str)
Sets the widget’s label.
labels support special symbols preceded by an
@ sign.
and for the associated formatting.Source§fn measure_label(&self) -> (i32, i32)
fn measure_label(&self) -> (i32, i32)
Measures the label’s width and height
Source§fn as_widget_ptr(&self) -> *mut Fl_Widget
fn as_widget_ptr(&self) -> *mut Fl_Widget
transforms a widget to a base
Fl_Widget, for internal useSource§fn deactivate(&mut self)
fn deactivate(&mut self)
Deactivates the widget
Source§fn redraw_label(&mut self)
fn redraw_label(&mut self)
Redraws the label of the widget
Source§fn resize(&mut self, x: i32, y: i32, width: i32, height: i32)
fn resize(&mut self, x: i32, y: i32, width: i32, height: i32)
Resizes and/or moves the widget, takes x, y, width and height
Source§fn widget_resize(&mut self, x: i32, y: i32, width: i32, height: i32)
fn widget_resize(&mut self, x: i32, y: i32, width: i32, height: i32)
Does a simple resize ignoring class-specific resize functionality
Source§fn set_tooltip(&mut self, txt: &str)
fn set_tooltip(&mut self, txt: &str)
Sets the tooltip text
Source§fn label_color(&self) -> Color
fn label_color(&self) -> Color
Returns the widget label’s color
Source§fn set_label_color(&mut self, color: Color)
fn set_label_color(&mut self, color: Color)
Sets the widget label’s color
Source§fn label_font(&self) -> Font
fn label_font(&self) -> Font
Returns the widget label’s font
Source§fn set_label_font(&mut self, font: Font)
fn set_label_font(&mut self, font: Font)
Sets the widget label’s font
Source§fn label_size(&self) -> i32
fn label_size(&self) -> i32
Returns the widget label’s size
Source§fn set_label_size(&mut self, sz: i32)
fn set_label_size(&mut self, sz: i32)
Sets the widget label’s size
Source§fn label_type(&self) -> LabelType
fn label_type(&self) -> LabelType
Returns the widget label’s type
Source§fn set_label_type(&mut self, typ: LabelType)
fn set_label_type(&mut self, typ: LabelType)
Sets the widget label’s type
Source§fn set_changed(&mut self)
fn set_changed(&mut self)
Mark the widget as changed
Source§fn clear_changed(&mut self)
fn clear_changed(&mut self)
Clears the changed status of the widget
Source§fn set_trigger(&mut self, trigger: CallbackTrigger)
fn set_trigger(&mut self, trigger: CallbackTrigger)
Sets the default callback trigger for a widget, equivalent to
when()Source§fn trigger(&self) -> CallbackTrigger
fn trigger(&self) -> CallbackTrigger
Return the callback trigger, equivalent to
when()Source§fn selection_color(&self) -> Color
fn selection_color(&self) -> Color
Gets the selection color of the widget
Source§fn set_selection_color(&mut self, color: Color)
fn set_selection_color(&mut self, color: Color)
Sets the selection color of the widget
Source§fn do_callback(&mut self)
fn do_callback(&mut self)
Runs the already registered callback
Source§fn top_window(&self) -> Option<Box<dyn WindowExt>>
fn top_window(&self) -> Option<Box<dyn WindowExt>>
Returns the topmost window holding the widget
Source§fn takes_events(&self) -> bool
fn takes_events(&self) -> bool
Checks whether a widget is capable of taking events
Source§fn set_visible_focus(&mut self)
fn set_visible_focus(&mut self)
Set the widget to have visible focus
Source§fn clear_visible_focus(&mut self)
fn clear_visible_focus(&mut self)
Clear visible focus
Source§fn visible_focus(&mut self, v: bool)
fn visible_focus(&mut self, v: bool)
Set the visible focus using a flag
Source§fn has_visible_focus(&self) -> bool
fn has_visible_focus(&self) -> bool
Return whether the widget has visible focus
Source§fn was_deleted(&self) -> bool
fn was_deleted(&self) -> bool
Check if a widget was deleted
Source§fn set_damage(&mut self, flag: bool)
fn set_damage(&mut self, flag: bool)
Signal the widget as damaged and it should be redrawn in the next event loop cycle
Source§fn damage_type(&self) -> Damage
fn damage_type(&self) -> Damage
Return the damage mask
Source§fn set_damage_type(&mut self, mask: Damage)
fn set_damage_type(&mut self, mask: Damage)
Signal the type of damage a widget received
Source§fn set_damage_area(&mut self, mask: Damage, x: i32, y: i32, w: i32, h: i32)
fn set_damage_area(&mut self, mask: Damage, x: i32, y: i32, w: i32, h: i32)
Signal damage for an area inside the widget
Source§fn clear_damage(&mut self)
fn clear_damage(&mut self)
Clear the damaged flag
Source§fn as_window(&self) -> Option<Box<dyn WindowExt>>
fn as_window(&self) -> Option<Box<dyn WindowExt>>
Return the widget as a window if it’s a window
Source§fn as_group(&self) -> Option<Group>
fn as_group(&self) -> Option<Group>
Return the widget as a group widget if it’s a group widget
Source§fn inside<W: WidgetExt>(&self, wid: &W) -> bool
fn inside<W: WidgetExt>(&self, wid: &W) -> bool
Checks whether the self widget is inside another widget
Source§fn get_type<T: WidgetType>(&self) -> T
fn get_type<T: WidgetType>(&self) -> T
Returns the widget type when applicable
Source§fn set_type<T: WidgetType>(&mut self, typ: T)
fn set_type<T: WidgetType>(&mut self, typ: T)
Sets the widget type
Source§fn set_image_scaled<I: ImageExt>(&mut self, image: Option<I>)
fn set_image_scaled<I: ImageExt>(&mut self, image: Option<I>)
Sets the image of the widget scaled to the widget’s size
Source§unsafe fn image_mut(&self) -> Option<&mut Image>
unsafe fn image_mut(&self) -> Option<&mut Image>
Get a reference type of the widget’s image Read more
Source§fn set_deimage<I: ImageExt>(&mut self, image: Option<I>)
fn set_deimage<I: ImageExt>(&mut self, image: Option<I>)
Sets the deactivated image of the widget
Source§fn set_deimage_scaled<I: ImageExt>(&mut self, image: Option<I>)
fn set_deimage_scaled<I: ImageExt>(&mut self, image: Option<I>)
Sets the deactivated image of the widget scaled to the widget’s size
Source§fn deimage(&self) -> Option<Box<dyn ImageExt>>
fn deimage(&self) -> Option<Box<dyn ImageExt>>
Gets the deactivated image associated with the widget
Source§unsafe fn deimage_mut(&self) -> Option<&mut Image>
unsafe fn deimage_mut(&self) -> Option<&mut Image>
Get a reference type of the widget’s deactivated image Read more
Source§fn set_callback<F: FnMut(&mut Self) + 'static>(&mut self, cb: F)
fn set_callback<F: FnMut(&mut Self) + 'static>(&mut self, cb: F)
Sets the callback when the widget is triggered (clicks for example)
takes the widget as a closure argument
Source§fn emit<T: 'static + Clone + Send + Sync>(&mut self, sender: Sender<T>, msg: T)
fn emit<T: 'static + Clone + Send + Sync>(&mut self, sender: Sender<T>, msg: T)
Emits a message on callback using a sender
Source§unsafe fn into_widget<W: WidgetBase>(&self) -> W
unsafe fn into_widget<W: WidgetBase>(&self) -> W
Upcast a
WidgetExt to some widget type Read moreSource§fn visible_r(&self) -> bool
fn visible_r(&self) -> bool
Returns whether a widget or any of its parents are visible (recursively)
Source§fn is_same<W: WidgetExt>(&self, other: &W) -> bool
fn is_same<W: WidgetExt>(&self, other: &W) -> bool
Return whether two widgets object point to the same widget
Source§fn active_r(&self) -> bool
fn active_r(&self) -> bool
Returns whether a widget or any of its parents are active (recursively)
Source§fn handle_event(&mut self, event: Event) -> bool
fn handle_event(&mut self, event: Event) -> bool
Handle a specific event
Source§fn is_derived(&self) -> bool
fn is_derived(&self) -> bool
Check whether a widget is derived
Source§fn as_base_widget(&self) -> Widgetwhere
Self: Sized,
fn as_base_widget(&self) -> Widgetwhere
Self: Sized,
Upcast a
WidgetExt to a Widgetimpl Eq for Button
impl Send for Button
Available on non-crate feature
single-threaded only.impl Sync for Button
Available on non-crate feature
single-threaded only.Auto Trait Implementations§
impl Freeze for Button
impl RefUnwindSafe for Button
impl Unpin for Button
impl UnwindSafe for Button
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more