pub struct VButton { /* private fields */ }Expand description
A vertically stacked button view with customizable styling, including border, background, and box shadow. Suited for UI layouts where label and icon should be stacked top-to-bottom.
By default, VButton is configured with:
flex_direction:Columnjustify_content:Centeralign_items:Centerrow_gap:0.0
Implements styling traits such as BackgroundView, BorderView, BoxShadowView,
and layout behavior from PositionView and StackView.
§Example
ⓘ
commands.spawn(VButton::default()
.text("Submit")
.font(my_font)
.background_color(Color::ORANGE)
.border_radius(Val::Px(8.0)));Trait Implementations§
Source§impl BackgroundView for VButton
impl BackgroundView for VButton
Source§fn background_node(&mut self) -> &mut BackgroundStyle
fn background_node(&mut self) -> &mut BackgroundStyle
Returns a mutable reference to the current background style
Source§fn background_color(self, color: impl Into<Color>) -> Self
fn background_color(self, color: impl Into<Color>) -> Self
Sets a solid color as the background
Source§fn background_image(self, image: Handle<Image>) -> Self
fn background_image(self, image: Handle<Image>) -> Self
Sets an image as the background
Source§fn background_image_mode(self, image_mode: NodeImageMode) -> Self
fn background_image_mode(self, image_mode: NodeImageMode) -> Self
Sets background image mode
Source§impl BorderView for VButton
impl BorderView for VButton
Source§fn border_node(&mut self) -> &mut BorderStyle
fn border_node(&mut self) -> &mut BorderStyle
Returns a mutable reference to the current border style
Source§fn border_color(self, border_color: impl Into<Color>) -> Self
fn border_color(self, border_color: impl Into<Color>) -> Self
Sets the border color
Source§fn border_radius(self, border_radius: BorderRadius) -> Self
fn border_radius(self, border_radius: BorderRadius) -> Self
Sets the border radius
Source§impl BoxShadowView for VButton
impl BoxShadowView for VButton
Source§fn box_shadow_node(&mut self) -> &mut BoxShadow
fn box_shadow_node(&mut self) -> &mut BoxShadow
Returns a mutable reference to the internal shadow style list.
Source§fn shadow(self, shadows: Vec<ShadowStyle>) -> Self
fn shadow(self, shadows: Vec<ShadowStyle>) -> Self
Replaces all existing shadows with the provided list.
Source§fn add_shadow(self, shadow: ShadowStyle) -> Self
fn add_shadow(self, shadow: ShadowStyle) -> Self
Appends a new shadow to the current list.
Source§impl Bundle for VButton
impl Bundle for VButton
Source§fn get_component_ids(
components: &Components,
ids: &mut impl FnMut(Option<ComponentId>),
)
fn get_component_ids( components: &Components, ids: &mut impl FnMut(Option<ComponentId>), )
Source§fn register_required_components(
components: &mut ComponentsRegistrator<'_>,
required_components: &mut RequiredComponents,
)
fn register_required_components( components: &mut ComponentsRegistrator<'_>, required_components: &mut RequiredComponents, )
Registers components that are required by the components in this
Bundle.Source§impl DynamicBundle for VButton
impl DynamicBundle for VButton
Source§impl PositionView for VButton
impl PositionView for VButton
Source§fn top(self, y: Val) -> Self
fn top(self, y: Val) -> Self
Sets the top offset of the view in absolute positioning mode. Read more
Source§fn left(self, x: Val) -> Self
fn left(self, x: Val) -> Self
Sets the left offset of the view in absolute positioning mode. Read more
Source§fn right(self, x: Val) -> Self
fn right(self, x: Val) -> Self
Sets the right offset of the view in absolute positioning mode. Read more
Source§impl StackView for VButton
impl StackView for VButton
Source§fn from_justify_content(justify_content: JustifyContent) -> Self
fn from_justify_content(justify_content: JustifyContent) -> Self
Creates a new instance with a specified
JustifyContent alignment along the main axis. Read moreSource§fn from_align_items(align_items: AlignItems) -> Self
fn from_align_items(align_items: AlignItems) -> Self
Creates a new instance with a specified
AlignItems alignment along the cross axis. Read moreSource§fn flex_direction(self, direction: FlexDirection) -> Self
fn flex_direction(self, direction: FlexDirection) -> Self
Sets the direction of content flow within the stack (e.g. horizontal or vertical). Read more
Source§fn wrap(self, wrap: FlexWrap) -> Self
fn wrap(self, wrap: FlexWrap) -> Self
Sets the wrapping behavior of the flex container. Read more
Source§fn justify_content(self, justify: JustifyContent) -> Self
fn justify_content(self, justify: JustifyContent) -> Self
Defines how extra space along the main axis is distributed. Read more
Source§fn align_items(self, align_items: AlignItems) -> Self
fn align_items(self, align_items: AlignItems) -> Self
Defines how children are aligned along the cross axis. Read more
Source§fn row_gap(self, gap: Val) -> Self
fn row_gap(self, gap: Val) -> Self
Sets the vertical spacing between rows when wrapping is enabled. Read more
Source§fn column_gap(self, gap: Val) -> Self
fn column_gap(self, gap: Val) -> Self
Sets the horizontal spacing between columns when wrapping is enabled. Read more
Source§impl View for VButton
impl View for VButton
Source§fn name_node(&mut self) -> &mut Name
fn name_node(&mut self) -> &mut Name
Provides mutable access to the underlying
Name component. Read moreSource§fn node_node(&mut self) -> &mut Node
fn node_node(&mut self) -> &mut Node
Provides mutable access to the underlying
Node component. Read moreSource§fn from_name(name: impl Into<Cow<'static, str>>) -> Self
fn from_name(name: impl Into<Cow<'static, str>>) -> Self
Constructs a new instance and sets its
Name component. Read moreSource§fn name(self, name: impl Into<Cow<'static, str>>) -> Self
fn name(self, name: impl Into<Cow<'static, str>>) -> Self
Sets the
Name component of this instance. Read moreSource§fn padding(self, padding: UiRect) -> Self
fn padding(self, padding: UiRect) -> Self
Sets the padding (insets) around the content of the
Node. Read moreSource§fn frame(self, width: Val, height: Val) -> Self
fn frame(self, width: Val, height: Val) -> Self
Sets both the width and height of the
Node. Read moreSource§fn max_height(self, val: Val) -> Self
fn max_height(self, val: Val) -> Self
Sets the maximum height constraint of the
Node. Read moreSource§fn min_height(self, val: Val) -> Self
fn min_height(self, val: Val) -> Self
Sets the minimum height constraint of the
Node. Read moreSource§fn flex_shrink(self, shrink: f32) -> Self
fn flex_shrink(self, shrink: f32) -> Self
Source§fn grid_row(self, row: GridPlacement) -> Self
fn grid_row(self, row: GridPlacement) -> Self
Assigns this node to a specific grid row in a grid layout. Read more
Source§fn grid_column(self, column: GridPlacement) -> Self
fn grid_column(self, column: GridPlacement) -> Self
Assigns this node to a specific grid column in a grid layout. Read more
impl BundleFromComponents for VButton
Auto Trait Implementations§
impl Freeze for VButton
impl !RefUnwindSafe for VButton
impl Send for VButton
impl Sync for VButton
impl Unpin for VButton
impl !UnwindSafe for VButton
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
Return the
T ShaderType for self. When used in AsBindGroup
derives, it is safe to assume that all images in self exist.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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self using default().
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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