pub struct Button<W: Widget> {
pub inner: W,
/* private fields */
}Expand description
A push-button with a generic label
Default alignment of content is centered.
§Messages
kas::messages::Activate may be used to trigger the button.
Fields§
§inner: WImplementations§
Source§impl<W: Widget> Button<W>
impl<W: Widget> Button<W>
Sourcepub fn with(self, f: impl Fn(&mut EventCx<'_>, &W::Data) + 'static) -> Self
pub fn with(self, f: impl Fn(&mut EventCx<'_>, &W::Data) + 'static) -> Self
Call the handler f on press / activation
Sourcepub fn new_msg<M: Clone + Debug + 'static>(inner: W, msg: M) -> Self
pub fn new_msg<M: Clone + Debug + 'static>(inner: W, msg: M) -> Self
Construct a button with a given inner and payload msg
When the button is activated, a clone of msg is sent to the
parent widget. The parent (or an ancestor) should handle this using
Events::handle_messages.
Sourcepub fn with_access_key(self, key: Key) -> Self
pub fn with_access_key(self, key: Key) -> Self
Add access key (chain style)
Sourcepub fn with_background(self, bg: Background) -> Self
pub fn with_background(self, bg: Background) -> Self
Set the frame background color (inline)
The default background is Background::Default.
Source§impl Button<AccessLabel>
impl Button<AccessLabel>
Sourcepub fn label(label: impl Into<AccessString>) -> Self
pub fn label(label: impl Into<AccessString>) -> Self
Construct a button with the given label
This is a convenience method. It may be possible to merge this
functionality into Button::new once Rust has support for
overlapping trait implementations (not specialisation).
Sourcepub fn label_msg<M>(label: impl Into<AccessString>, msg: M) -> Self
pub fn label_msg<M>(label: impl Into<AccessString>, msg: M) -> Self
Construct a button with the given label and payload msg
This is a convenience method. It may be possible to merge this
functionality into Button::new_msg once Rust has support for
overlapping trait implementations (not specialisation).
Trait Implementations§
Source§impl<W: Widget> Events for Button<W>
impl<W: Widget> Events for Button<W>
Source§const REDRAW_ON_MOUSE_OVER: bool = true
const REDRAW_ON_MOUSE_OVER: bool = true
Source§fn handle_event(
&mut self,
cx: &mut EventCx<'_>,
data: &W::Data,
event: Event<'_>,
) -> IsUsed
fn handle_event( &mut self, cx: &mut EventCx<'_>, data: &W::Data, event: Event<'_>, ) -> IsUsed
Source§fn handle_messages(&mut self, cx: &mut EventCx<'_>, data: &W::Data)
fn handle_messages(&mut self, cx: &mut EventCx<'_>, data: &W::Data)
Source§fn mouse_over_icon(&self) -> Option<CursorIcon>
fn mouse_over_icon(&self) -> Option<CursorIcon>
Source§fn configure_recurse(&mut self, cx: &mut ConfigCx<'_>, data: &Self::Data)
fn configure_recurse(&mut self, cx: &mut ConfigCx<'_>, data: &Self::Data)
Source§fn update(&mut self, cx: &mut ConfigCx<'_>, data: &Self::Data)
fn update(&mut self, cx: &mut ConfigCx<'_>, data: &Self::Data)
Source§fn update_recurse(&mut self, cx: &mut ConfigCx<'_>, data: &Self::Data)
fn update_recurse(&mut self, cx: &mut ConfigCx<'_>, data: &Self::Data)
Source§impl<W: Widget> Layout for Button<W>
impl<W: Widget> Layout for Button<W>
Source§impl<W: Widget> MacroDefinedLayout for Button<W>
impl<W: Widget> MacroDefinedLayout for Button<W>
Source§impl<W: Widget> Tile for Button<W>
impl<W: Widget> Tile for Button<W>
Source§fn get_child(&self, index: usize) -> Option<&dyn Tile>
fn get_child(&self, index: usize) -> Option<&dyn Tile>
dyn Tile, if available Read moreSource§fn child_indices(&self) -> ChildIndices
fn child_indices(&self) -> ChildIndices
Source§fn role_child_properties(&self, cx: &mut dyn RoleCx, index: usize)
fn role_child_properties(&self, cx: &mut dyn RoleCx, index: usize)
index Read moreAuto Trait Implementations§
impl<W> Freeze for Button<W>where
W: Freeze,
impl<W> !RefUnwindSafe for Button<W>
impl<W> !Send for Button<W>
impl<W> !Sync for Button<W>
impl<W> Unpin for Button<W>where
W: Unpin,
impl<W> !UnwindSafe for Button<W>
Blanket Implementations§
Source§impl<W> AdaptWidget for Wwhere
W: Widget,
impl<W> AdaptWidget for Wwhere
W: Widget,
Source§fn pack(self, hints: AlignHints) -> Pack<Self>
fn pack(self, hints: AlignHints) -> Pack<Self>
Source§fn margins(self, dirs: Directions, style: MarginStyle) -> Margins<Self>
fn margins(self, dirs: Directions, style: MarginStyle) -> Margins<Self>
Source§fn on_configure<F>(self, f: F) -> AdaptEvents<Self>where
F: Fn(&mut AdaptConfigCx<'_, '_>, &mut Self) + 'static,
fn on_configure<F>(self, f: F) -> AdaptEvents<Self>where
F: Fn(&mut AdaptConfigCx<'_, '_>, &mut Self) + 'static,
Events::configure Read moreSource§fn on_update<F>(self, f: F) -> AdaptEvents<Self>
fn on_update<F>(self, f: F) -> AdaptEvents<Self>
Events::update Read moreSource§fn on_message<M, H>(self, handler: H) -> AdaptEvents<Self>
fn on_message<M, H>(self, handler: H) -> AdaptEvents<Self>
M Read moreSource§fn map_message<M, N, H>(self, handler: H) -> AdaptEvents<Self>
fn map_message<M, N, H>(self, handler: H) -> AdaptEvents<Self>
Source§fn on_messages<H>(self, handler: H) -> AdaptEvents<Self>
fn on_messages<H>(self, handler: H) -> AdaptEvents<Self>
Source§fn with_min_size_px(self, w: i32, h: i32) -> Reserve<Self>
fn with_min_size_px(self, w: i32, h: i32) -> Reserve<Self>
Source§fn with_min_size_em(self, w: f32, h: f32) -> Reserve<Self>
fn with_min_size_em(self, w: f32, h: f32) -> Reserve<Self>
Source§fn with_label<D, T>(self, direction: D, label: T) -> WithLabel<Self, D>
fn with_label<D, T>(self, direction: D, label: T) -> WithLabel<Self, D>
Source§impl<W> AdaptWidgetAny for W
impl<W> AdaptWidgetAny for W
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
Source§impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
Source§fn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
Source§fn cast_approx(self) -> T
fn cast_approx(self) -> T
Source§impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
Source§fn cast_trunc(self) -> T
fn cast_trunc(self) -> T
Source§fn cast_nearest(self) -> T
fn cast_nearest(self) -> T
Source§fn cast_floor(self) -> T
fn cast_floor(self) -> T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<W> TileExt for W
impl<W> TileExt for W
Source§fn is_strict_ancestor_of(&self, id: &Id) -> bool
fn is_strict_ancestor_of(&self, id: &Id) -> bool
id is not self and is a descendant Read more