Trait Layout

Source
pub trait Layout<Props: ?Sized>: DynClone {
    // Required methods
    fn get_props(&self) -> &Props;
    fn stage<'a>(
        &self,
        area: AbsRect,
        limits: AbsLimits,
        window: &mut WindowState,
    ) -> Box<dyn Staged + 'a>;
}

Required Methods§

Source

fn get_props(&self) -> &Props

Source

fn stage<'a>( &self, area: AbsRect, limits: AbsLimits, window: &mut WindowState, ) -> Box<dyn Staged + 'a>

Trait Implementations§

Source§

impl<U: ?Sized, T> Layout<U> for &dyn Layout<T>
where for<'a> &'a T: Into<&'a U>,

Source§

fn get_props(&self) -> &U

Source§

fn stage<'a>( &self, area: AbsRect, limits: AbsLimits, window: &mut WindowState, ) -> Box<dyn Staged + 'a>

Source§

impl<U: ?Sized, T> Layout<U> for Box<dyn Layout<T>>
where for<'a> &'a T: Into<&'a U>,

Source§

fn get_props(&self) -> &U

Source§

fn stage<'a>( &self, area: AbsRect, limits: AbsLimits, window: &mut WindowState, ) -> Box<dyn Staged + 'a>

Implementations on Foreign Types§

Source§

impl<U: ?Sized, T> Layout<U> for Box<dyn Layout<T>>
where for<'a> &'a T: Into<&'a U>,

Source§

fn get_props(&self) -> &U

Source§

fn stage<'a>( &self, area: AbsRect, limits: AbsLimits, window: &mut WindowState, ) -> Box<dyn Staged + 'a>

Implementors§

Source§

impl<T, D: Desc + ?Sized> Layout<T> for feather_ui::layout::Node<T, D>
where for<'a> &'a T: Into<&'a D::Props>,

Source§

impl<T: Padded> Layout<T> for feather_ui::layout::text::Node<T>

Source§

impl<U: ?Sized, T> Layout<U> for &dyn Layout<T>
where for<'a> &'a T: Into<&'a U>,