[][src]Struct split_controller::SplitLayoutController

pub struct SplitLayoutController {
    pub left: SplitController,
    pub right: SplitController,
    pub top: SplitController,
    pub bottom: SplitController,
    // some fields omitted
}

Stores information about split layout.

The layout is split into left, right, top and bottom panel.

Fields

left: SplitController

The left split controller.

right: SplitController

The right split controller.

top: SplitController

The top split controller.

bottom: SplitController

The bottom split controller.

Implementations

impl SplitLayoutController[src]

pub fn new(settings: &SplitLayoutSettings) -> SplitLayoutController[src]

Creates a new SplitLayoutController.

pub fn event<E: GenericEvent>(
    &mut self,
    rect: [f64; 4],
    transform: Matrix2x3<f64>,
    e: &E
)
[src]

Handles event.

pub fn left_right_layout(&self, purpose: SplitLayoutPurpose) -> SplitLayout[src]

Returns the left/right split layout.

The left/right split layout depends on whether your purpose is to draw something or handle events. When handling events, the rectangle overlaps with the top and bottom split.

pub fn top_bottom_layout(&self) -> SplitLayout[src]

Returns the top/bottom split layout.

pub fn rectangles(&self, rect: [f64; 4]) -> [[f64; 4]; 4][src]

Computes split rectangles for drawing [left, right, top, bottom].

pub fn states(&self) -> [SplitState; 4][src]

Returns the split controller states [left, right, top, bottom].

pub fn panel_rectangles(&self, rect: [f64; 4]) -> [[f64; 4]; 5][src]

Computes panel rectangles for layout [left, right, top, bottom, center].

pub fn min_size(&self) -> [f64; 2][src]

Computes the minimum size using current values in split controls.

The current values in the split controls are used instead of the minimum values, because the splits should appear visually with the same current value.

pub fn bounds(&self, rect: [f64; 4]) -> [f64; 4][src]

Computes the bounds from window bounds [x, y, w, h].

Does not get less in size than specified by min_size.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.