Skip to main content

ButtonLike

Struct ButtonLike 

Source
pub struct ButtonLike { /* private fields */ }
Expand description

A button-like element that can be used to create a custom button when prebuilt buttons are not sufficient. Use this sparingly, as it is unconstrained and may make the UI feel less consistent.

This is also used to build the prebuilt buttons.

Implementations§

Source§

impl ButtonLike

Source

pub fn new(id: impl Into<ElementId>) -> Self

Source

pub fn new_rounded_left(id: impl Into<ElementId>) -> Self

Source

pub fn new_rounded_right(id: impl Into<ElementId>) -> Self

Source

pub fn new_rounded_all(id: impl Into<ElementId>) -> Self

Source

pub fn opacity(self, opacity: f32) -> Self

Source

pub fn height(self, height: DefiniteLength) -> Self

Source

pub fn on_right_click( self, handler: impl Fn(&ClickEvent, &mut Window, &mut App) + 'static, ) -> Self

Source

pub fn hoverable_tooltip( self, tooltip: impl Fn(&mut Window, &mut App) -> AnyView + 'static, ) -> Self

Trait Implementations§

Source§

impl ButtonCommon for ButtonLike

Source§

fn id(&self) -> &ElementId

A unique element ID to identify the button.
Source§

fn style(self, style: ButtonStyle) -> Self

The visual style of the button. Read more
Source§

fn size(self, size: ButtonSize) -> Self

The size of the button. Read more
Source§

fn tooltip( self, tooltip: impl Fn(&mut Window, &mut App) -> AnyView + 'static, ) -> Self

The tooltip that shows when a user hovers over the button. Read more
Source§

fn tab_index(self, tab_index: impl Into<isize>) -> Self

Source§

fn layer(self, elevation: ElevationIndex) -> Self

Source§

fn track_focus(self, focus_handle: &FocusHandle) -> Self

Source§

impl Clickable for ButtonLike

Source§

fn on_click( self, handler: impl Fn(&ClickEvent, &mut Window, &mut App) + 'static, ) -> Self

Sets the click handler that will fire whenever the element is clicked.
Source§

fn cursor_style(self, cursor_style: CursorStyle) -> Self

Sets the cursor style when hovering over the element.
Source§

impl Component for ButtonLike

Source§

fn scope() -> ComponentScope

Returns the scope of the component. Read more
Source§

fn sort_name() -> &'static str

Returns a name that the component should be sorted by. Read more
Source§

fn description() -> Option<&'static str>

An optional description of the component. Read more
Source§

fn preview(_window: &mut Window, _cx: &mut App) -> Option<AnyElement>

The component’s preview. Read more
Source§

fn id() -> ComponentId

The component’s unique identifier. Read more
Source§

fn status() -> ComponentStatus

The ready status of this component. Read more
Source§

fn name() -> &'static str

The name of the component. Read more
Source§

impl Disableable for ButtonLike

Source§

fn disabled(self, disabled: bool) -> Self

Sets whether the element is disabled.
Source§

impl Documented for ButtonLike

Source§

const DOCS: &'static str = "A button-like element that can be used to create a custom button when\nprebuilt buttons are not sufficient. Use this sparingly, as it is\nunconstrained and may make the UI feel less consistent.\n\nThis is also used to build the prebuilt buttons."

The static doc comments on this type.
Source§

impl FixedWidth for ButtonLike

Source§

fn width(self, width: impl Into<DefiniteLength>) -> Self

Sets the width of the element.
Source§

fn full_width(self) -> Self

Sets the element’s width to the full width of its container.
Source§

impl From<ButtonLike> for SplitButtonKind

Source§

fn from(button_like: ButtonLike) -> Self

Converts to this type from the input type.
Source§

impl IntoElement for ButtonLike

Source§

type Element = Component<ButtonLike>

The specific type of element into which the implementing type is converted. Useful for converting other types into elements automatically, like Strings
Source§

fn into_element(self) -> Self::Element

Convert self into a type that implements Element.
Source§

fn into_any_element(self) -> AnyElement

Convert self into a dynamically-typed AnyElement.
Source§

impl ParentElement for ButtonLike

Source§

fn extend(&mut self, elements: impl IntoIterator<Item = AnyElement>)

Extend this element’s children with the given child elements.
Source§

fn child(self, child: impl IntoElement) -> Self
where Self: Sized,

Add a single child element to this element.
Source§

fn children(self, children: impl IntoIterator<Item = impl IntoElement>) -> Self
where Self: Sized,

Add multiple child elements to this element.
Source§

impl RenderOnce for ButtonLike

Source§

fn render(self, _: &mut Window, cx: &mut App) -> impl IntoElement

Render this component into an element tree. Note that this method takes ownership of self, as compared to Render::render() method which takes a mutable reference.
Source§

impl SelectableButton for ButtonLike

Source§

fn selected_style(self, style: ButtonStyle) -> Self

Source§

impl Toggleable for ButtonLike

Source§

fn toggle_state(self, selected: bool) -> Self

Sets whether the element is selected.
Source§

impl VisibleOnHover for ButtonLike

Source§

fn visible_on_hover(self, group_name: impl Into<SharedString>) -> Self

Sets the element to only be visible when the specified group is hovered. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

Source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
Source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
Source§

impl<E> AnimationExt for E
where E: IntoElement + 'static,

Source§

fn with_animation( self, id: impl Into<ElementId>, animation: Animation, animator: impl Fn(Self, f32) -> Self + 'static, ) -> AnimationElement<Self>
where Self: Sized,

Render this component or element with an animation
Source§

fn with_animations( self, id: impl Into<ElementId>, animations: Vec<Animation>, animator: impl Fn(Self, usize, f32) -> Self + 'static, ) -> AnimationElement<Self>
where Self: Sized,

Render this component or element with a chain of animations
Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

Source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
Source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

Source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

Source§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CommonAnimationExt for T
where T: AnimationExt,

Source§

fn with_rotate_animation(self, duration: u64) -> AnimationElement<Self>
where Self: Transformable + Sized,

Render this component as rotating over the given duration. Read more
Source§

fn with_keyed_rotate_animation( self, id: impl Into<ElementId>, duration: u64, ) -> AnimationElement<Self>
where Self: Transformable + Sized,

Render this component as rotating with the given element ID over the given duration.
Source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

Source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
Source§

impl<T> FluentBuilder for T
where T: IntoElement,

Source§

fn map<U>(self, f: impl FnOnce(Self) -> U) -> U
where Self: Sized,

Imperatively modify self with the given closure.
Source§

fn when(self, condition: bool, then: impl FnOnce(Self) -> Self) -> Self
where Self: Sized,

Conditionally modify self with the given closure.
Source§

fn when_else( self, condition: bool, then: impl FnOnce(Self) -> Self, else_fn: impl FnOnce(Self) -> Self, ) -> Self
where Self: Sized,

Conditionally modify self with the given closure.
Source§

fn when_some<T>( self, option: Option<T>, then: impl FnOnce(Self, T) -> Self, ) -> Self
where Self: Sized,

Conditionally unwrap and modify self with the given closure, if the given option is Some.
Source§

fn when_none<T>( self, option: &Option<T>, then: impl FnOnce(Self) -> Self, ) -> Self
where Self: Sized,

Conditionally unwrap and modify self with the given closure, if the given option is None.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromAngle<T> for T

Source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
Source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

Source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> IntoAngle<U> for T
where U: FromAngle<T>,

Source§

fn into_angle(self) -> U

Performs a conversion into T.
Source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

Source§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

Source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
Source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

Source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoStimulus<T> for T

Source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PopoverTrigger for T
where T: IntoElement + Clickable + Toggleable + 'static,

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

Source§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
Source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

Source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
Source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

Source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
Source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

Source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more