pub struct UiStack {
pub id: Id,
pub info: UiStackInfo,
pub layout_direction: Direction,
pub min_rect: Rect,
pub max_rect: Rect,
pub parent: Option<Arc<Self>>,
}Expand description
Information about a crate::Ui and its parents.
UiStack serves to keep track of the current hierarchy of crate::Uis, such
that nested widgets or user code may adapt to the surrounding context or obtain layout information
from a crate::Ui that might be several steps higher in the hierarchy.
Note: since UiStack contains a reference to its parent, it is both a stack, and a node within
that stack. Most of its methods are about the specific node, but some methods walk up the
hierarchy to provide information about the entire stack.
Fields§
§id: Id§info: UiStackInfo§layout_direction: Direction§min_rect: Rect§max_rect: Rect§parent: Option<Arc<Self>>Implementations§
Source§impl UiStack
impl UiStack
pub fn kind(&self) -> Option<UiKind>
pub fn frame(&self) -> &Frame
User tags.
Sourcepub fn is_panel_ui(&self) -> bool
pub fn is_panel_ui(&self) -> bool
Is this crate::Ui a panel?
Sourcepub fn is_area_ui(&self) -> bool
pub fn is_area_ui(&self) -> bool
Is this crate::Ui an crate::Area?
Sourcepub fn is_root_ui(&self) -> bool
pub fn is_root_ui(&self) -> bool
Is this a root crate::Ui, i.e. created with crate::Ui::new()?
Sourcepub fn has_visible_frame(&self) -> bool
pub fn has_visible_frame(&self) -> bool
This this crate::Ui a crate::Frame with a visible stroke?
Sourcepub fn bg_color(&self) -> Color32
pub fn bg_color(&self) -> Color32
The background color of this crate::Ui.
This blend together all Frame::fill colors
up to the root.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for UiStack
impl !RefUnwindSafe for UiStack
impl Send for UiStack
impl Sync for UiStack
impl Unpin for UiStack
impl UnsafeUnpin for UiStack
impl !UnwindSafe for UiStack
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> 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