Struct LayoutOutput
pub struct LayoutOutput {
pub size: Size<f32>,
pub content_size: Size<f32>,
pub first_baselines: Point<Option<f32>>,
pub top_margin: CollapsibleMarginSet,
pub bottom_margin: CollapsibleMarginSet,
pub margins_can_collapse_through: bool,
}Expand description
A struct containing the result of laying a single node, which is returned up to the parent node
A baseline is the line on which text sits. Your node likely has a baseline if it is a text node, or contains
children that may be text nodes. See https://www.w3.org/TR/css-writing-modes-3/#intro-baselines for details.
If your node does not have a baseline (or you are unsure how to compute it), then simply return Point::NONE
for the first_baselines field
Fields§
§size: Size<f32>The size of the node
content_size: Size<f32>The size of the content within the node
first_baselines: Point<Option<f32>>The first baseline of the node in each dimension, if any
top_margin: CollapsibleMarginSetTop margin that can be collapsed with. This is used for CSS block layout and can be set to
CollapsibleMarginSet::ZERO for other layout modes that don’t support margin collapsing
bottom_margin: CollapsibleMarginSetBottom margin that can be collapsed with. This is used for CSS block layout and can be set to
CollapsibleMarginSet::ZERO for other layout modes that don’t support margin collapsing
margins_can_collapse_through: boolWhether margins can be collapsed through this node. This is used for CSS block layout and can
be set to false for other layout modes that don’t support margin collapsing
Implementations§
§impl LayoutOutput
impl LayoutOutput
pub const HIDDEN: LayoutOutput
pub const HIDDEN: LayoutOutput
An all-zero LayoutOutput for hidden nodes
pub const DEFAULT: LayoutOutput = Self::HIDDEN
pub const DEFAULT: LayoutOutput = Self::HIDDEN
A blank layout output
pub fn from_sizes_and_baselines(
size: Size<f32>,
content_size: Size<f32>,
first_baselines: Point<Option<f32>>,
) -> LayoutOutput
pub fn from_sizes_and_baselines( size: Size<f32>, content_size: Size<f32>, first_baselines: Point<Option<f32>>, ) -> LayoutOutput
Constructor to create a LayoutOutput from just the size and baselines
pub fn from_sizes(size: Size<f32>, content_size: Size<f32>) -> LayoutOutput
pub fn from_sizes(size: Size<f32>, content_size: Size<f32>) -> LayoutOutput
Construct a LayoutOutput from just the container and content sizes
pub fn from_outer_size(size: Size<f32>) -> LayoutOutput
pub fn from_outer_size(size: Size<f32>) -> LayoutOutput
Construct a LayoutOutput from just the container’s size.
Trait Implementations§
§impl Clone for LayoutOutput
impl Clone for LayoutOutput
§fn clone(&self) -> LayoutOutput
fn clone(&self) -> LayoutOutput
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for LayoutOutput
impl Debug for LayoutOutput
§impl PartialEq for LayoutOutput
impl PartialEq for LayoutOutput
impl Copy for LayoutOutput
impl StructuralPartialEq for LayoutOutput
Auto Trait Implementations§
impl Freeze for LayoutOutput
impl RefUnwindSafe for LayoutOutput
impl Send for LayoutOutput
impl Sync for LayoutOutput
impl Unpin for LayoutOutput
impl UnsafeUnpin for LayoutOutput
impl UnwindSafe for LayoutOutput
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more