Struct taffy::tree::LayoutInput
source · pub struct LayoutInput {
pub run_mode: RunMode,
pub sizing_mode: SizingMode,
pub axis: RequestedAxis,
pub known_dimensions: Size<Option<f32>>,
pub parent_size: Size<Option<f32>>,
pub available_space: Size<AvailableSpace>,
pub vertical_margins_are_collapsible: Line<bool>,
}
Expand description
A struct containing the inputs constraints/hints for laying out a node, which are passed in by the parent
Fields§
§run_mode: RunMode
Whether we only need to know the Node’s size, or whe
sizing_mode: SizingMode
Whether a Node’s style sizes should be taken into account or ignored
axis: RequestedAxis
Which axis we need the size of
known_dimensions: Size<Option<f32>>
Known dimensions represent dimensions (width/height) which should be taken as fixed when performing layout. For example, if known_dimensions.width is set to Some(WIDTH) then this means something like:
“What would the height of this node be, assuming the width is WIDTH”
Layout functions will be called with both known_dimensions set for final layout. Where the meaning is:
“The exact size of this node is WIDTHxHEIGHT. Please lay out your children”
parent_size: Size<Option<f32>>
Parent size dimensions are intended to be used for percentage resolution.
available_space: Size<AvailableSpace>
Available space represents an amount of space to layout into, and is used as a soft constraint for the purpose of wrapping.
vertical_margins_are_collapsible: Line<bool>
Specific to CSS Block layout. Used for correctly computing margin collapsing. You probably want to set this to Line::FALSE
.
Implementations§
source§impl LayoutInput
impl LayoutInput
sourcepub const HIDDEN: LayoutInput = _
pub const HIDDEN: LayoutInput = _
A LayoutInput that can be used to request hidden layout
Trait Implementations§
source§impl Clone for LayoutInput
impl Clone for LayoutInput
source§fn clone(&self) -> LayoutInput
fn clone(&self) -> LayoutInput
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for LayoutInput
impl Debug for LayoutInput
impl Copy for LayoutInput
Auto Trait Implementations§
impl Freeze for LayoutInput
impl RefUnwindSafe for LayoutInput
impl Send for LayoutInput
impl Sync for LayoutInput
impl Unpin for LayoutInput
impl UnwindSafe for LayoutInput
Blanket Implementations§
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)