Skip to main content

LayoutState

Struct LayoutState 

Source
pub struct LayoutState { /* private fields */ }
Expand description

Retained layout state for a LayoutNode. This mirrors Jetpack Compose’s approach where each node stores its own measured size and placed position, eliminating the need for per-frame LayoutTree reconstruction.

Implementations§

Source§

impl LayoutState

Source

pub fn size(&self) -> Size

Source

pub fn position(&self) -> Point

Source

pub fn content_offset(&self) -> Point

Offset of the content box relative to the node origin (e.g. due to padding).

Source

pub fn set_content_offset(&mut self, offset: Point)

Writes the content offset, reporting an actual change to the semantics tree.

Source

pub fn at_origin(self) -> Self

The same state placed at the origin: what a window root’s own scene starts from, since the position its parent gave it belongs to the parent’s window.

Source

pub fn is_placed(&self) -> bool

Source

pub fn set_size(&mut self, size: Size)

Writes the measured size, self-reporting an actual change to the scene phase.

Source

pub fn place(&mut self, position: Point)

Writes the placed position and marks the node placed, self-reporting an actual move to the scene phase, and a placement of a node the scene does not draw: one the running pass did not find placed.

Source

pub fn clear_placed(&mut self)

Clears the placed flag at the start of a layout pass. Until its parent places it again the pass counts the node unplaced, and the pass names it to the scene phase if it ends that way.

Trait Implementations§

Source§

impl Clone for LayoutState

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for LayoutState

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for LayoutState

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.