Skip to main content

Row

Struct Row 

Source
pub struct Row<'a, Message, Theme = Theme, Renderer = Renderer> { /* private fields */ }
Expand description

A container that distributes its contents horizontally.

§Example

use iced::widget::{button, row};

#[derive(Debug, Clone)]
enum Message {
    // ...
}

fn view(state: &State) -> Element<'_, Message> {
    row![
        "I am to the left!",
        button("I am in the middle!"),
        "I am to the right!",
    ].into()
}

Implementations§

Source§

impl<'a, Message, Theme, Renderer> Row<'a, Message, Theme, Renderer>
where Renderer: Renderer,

Source

pub fn new() -> Self

Creates an empty Row.

Source

pub fn with_capacity(capacity: usize) -> Self

Creates a Row with the given capacity.

Source

pub fn with_children( children: impl IntoIterator<Item = Element<'a, Message, Theme, Renderer>>, ) -> Self

Creates a Row with the given elements.

Source

pub fn from_vec(children: Vec<Element<'a, Message, Theme, Renderer>>) -> Self

Creates a Row from an already allocated Vec.

Keep in mind that the Row will not inspect the Vec, which means it won’t automatically adapt to the sizing strategy of its contents.

If any of the children have a Length::Fill strategy, you will need to call Row::width or Row::height accordingly.

Source

pub fn spacing(self, amount: impl Into<Pixels>) -> Self

Sets the horizontal spacing between elements.

Custom margins per element do not exist in iced. You should use this method instead! While less flexible, it helps you keep spacing between elements consistent.

Source

pub fn padding<P: Into<Padding>>(self, padding: P) -> Self

Sets the Padding of the Row.

Source

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

Sets the width of the Row.

Source

pub fn height(self, height: impl Into<Length>) -> Self

Sets the height of the Row.

Source

pub fn align_y(self, align: impl Into<Vertical>) -> Self

Sets the vertical alignment of the contents of the Row .

Source

pub fn clip(self, clip: bool) -> Self

Sets whether the contents of the Row should be clipped on overflow.

Source

pub fn push( self, child: impl Into<Element<'a, Message, Theme, Renderer>>, ) -> Self

Adds an Element to the Row.

Source

pub fn extend( self, children: impl IntoIterator<Item = Element<'a, Message, Theme, Renderer>>, ) -> Self

Extends the Row with the given children.

Source

pub fn wrap(self) -> Wrapping<'a, Message, Theme, Renderer>

Turns the Row into a Wrapping row.

The original alignment of the Row is preserved per row wrapped.

Trait Implementations§

Source§

impl<Message, Renderer> Default for Row<'_, Message, Renderer>
where Renderer: Renderer,

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'a, Message, Theme, Renderer> From<Row<'a, Message, Theme, Renderer>> for Element<'a, Message, Theme, Renderer>
where Message: 'a, Theme: 'a, Renderer: Renderer + 'a,

Source§

fn from(row: Row<'a, Message, Theme, Renderer>) -> Self

Converts to this type from the input type.
Source§

impl<'a, Message, Theme, Renderer: Renderer> FromIterator<Element<'a, Message, Theme, Renderer>> for Row<'a, Message, Theme, Renderer>

Source§

fn from_iter<T: IntoIterator<Item = Element<'a, Message, Theme, Renderer>>>( iter: T, ) -> Self

Creates a value from an iterator. Read more
Source§

impl<Message, Theme, Renderer> Widget<Message, Theme, Renderer> for Row<'_, Message, Theme, Renderer>
where Renderer: Renderer,

Source§

fn children(&self) -> Vec<Tree>

Returns the state Tree of the children of the Widget.
Source§

fn diff(&self, tree: &mut Tree)

Reconciles the Widget with the provided Tree.
Source§

fn size(&self) -> Size<Length>

Returns the Size of the Widget in lengths.
Source§

fn layout( &mut self, tree: &mut Tree, renderer: &Renderer, limits: &Limits, ) -> Node

Returns the layout::Node of the Widget. Read more
Source§

fn operate( &mut self, tree: &mut Tree, layout: Layout<'_>, renderer: &Renderer, operation: &mut dyn Operation, )

Applies an Operation to the Widget.
Source§

fn update( &mut self, tree: &mut Tree, event: &Event, layout: Layout<'_>, cursor: Cursor, renderer: &Renderer, shell: &mut Shell<'_, Message>, viewport: &Rectangle, )

Processes a runtime Event. Read more
Source§

fn mouse_interaction( &self, tree: &Tree, layout: Layout<'_>, cursor: Cursor, viewport: &Rectangle, renderer: &Renderer, ) -> Interaction

Returns the current mouse::Interaction of the Widget. Read more
Source§

fn draw( &self, tree: &Tree, renderer: &mut Renderer, theme: &Theme, style: &Style, layout: Layout<'_>, cursor: Cursor, viewport: &Rectangle, )

Draws the Widget using the associated Renderer.
Source§

fn overlay<'b>( &'b mut self, tree: &'b mut Tree, layout: Layout<'b>, renderer: &Renderer, viewport: &Rectangle, translation: Vector, ) -> Option<Element<'b, Message, Theme, Renderer>>

Returns the overlay of the Widget, if there is any.
Source§

fn size_hint(&self) -> Size<Length>

Returns a Size hint for laying out the Widget. Read more
Source§

fn tag(&self) -> Tag

Returns the Tag of the Widget.
Source§

fn state(&self) -> State

Returns the State of the Widget.

Auto Trait Implementations§

§

impl<'a, Message, Theme, Renderer> Freeze for Row<'a, Message, Theme, Renderer>

§

impl<'a, Message, Theme = Theme, Renderer = Renderer> !RefUnwindSafe for Row<'a, Message, Theme, Renderer>

§

impl<'a, Message, Theme = Theme, Renderer = Renderer> !Send for Row<'a, Message, Theme, Renderer>

§

impl<'a, Message, Theme = Theme, Renderer = Renderer> !Sync for Row<'a, Message, Theme, Renderer>

§

impl<'a, Message, Theme, Renderer> Unpin for Row<'a, Message, Theme, Renderer>

§

impl<'a, Message, Theme, Renderer> UnsafeUnpin for Row<'a, Message, Theme, Renderer>

§

impl<'a, Message, Theme = Theme, Renderer = Renderer> !UnwindSafe for Row<'a, Message, Theme, Renderer>

Blanket Implementations§

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> 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<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> 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.