Struct tui::layout::Layout [−][src]
pub struct Layout { /* fields omitted */ }
Implementations
impl Layout
[src]
impl Layout
[src]pub fn constraints<C>(self, constraints: C) -> Layout where
C: Into<Vec<Constraint>>,
[src]
C: Into<Vec<Constraint>>,
pub fn margin(self, margin: u16) -> Layout
[src]
pub fn horizontal_margin(self, horizontal: u16) -> Layout
[src]
pub fn vertical_margin(self, vertical: u16) -> Layout
[src]
pub fn direction(self, direction: Direction) -> Layout
[src]
pub fn split(&self, area: Rect) -> Vec<Rect>
[src]
Wrapper function around the cassowary-rs solver to be able to split a given area into smaller ones based on the preferred widths or heights and the direction.
Examples
let chunks = Layout::default() .direction(Direction::Vertical) .constraints([Constraint::Length(5), Constraint::Min(0)].as_ref()) .split(Rect { x: 2, y: 2, width: 10, height: 10, }); assert_eq!( chunks, vec![ Rect { x: 2, y: 2, width: 10, height: 5 }, Rect { x: 2, y: 7, width: 10, height: 5 } ] ); let chunks = Layout::default() .direction(Direction::Horizontal) .constraints([Constraint::Ratio(1, 3), Constraint::Ratio(2, 3)].as_ref()) .split(Rect { x: 0, y: 0, width: 9, height: 2, }); assert_eq!( chunks, vec![ Rect { x: 0, y: 0, width: 3, height: 2 }, Rect { x: 3, y: 0, width: 6, height: 2 } ] );
Trait Implementations
impl StructuralEq for Layout
[src]
impl StructuralEq for Layout
[src]impl StructuralPartialEq for Layout
[src]
impl StructuralPartialEq for Layout
[src]Auto Trait Implementations
impl RefUnwindSafe for Layout
impl RefUnwindSafe for Layout
impl UnwindSafe for Layout
impl UnwindSafe for Layout