pub struct PanelBuildContext<'a> { /* private fields */ }Expand description
Everything gpui_base::dock exports, so a consumer never has to depend
on the foundation crate directly to write a skin or read a container’s
state. Kept in step with base’s own list by
every_base_dock_export_is_reachable_from_here.
Two names are handled elsewhere and one is deliberately absent:
base’s Panel and PanelView arrive as BasePanel and BasePanelView
because this module’s Panel/PanelView are the presentation halves that
extend them, and base’s Dock — a plain state struct holding one dock’s
open, collapsible, size and resizing flags — is not re-exported at all,
because the name meant a panel container in every released version of this
crate and handing it back with a different meaning is worse than dropping
it. A skin reads a dock through DockContext.
Everything a panel builder needs to reconstruct a panel from persisted data.
Implementations§
Source§impl<'a> PanelBuildContext<'a>
impl<'a> PanelBuildContext<'a>
pub fn new( dock_area: WeakEntity<DockArea>, state: &'a PanelState, info: &'a PanelInfo, ) -> PanelBuildContext<'a>
pub fn dock_area(&self) -> WeakEntity<DockArea>
pub fn state(&self) -> &PanelState
pub fn info(&self) -> &PanelInfo
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for PanelBuildContext<'a>
impl<'a> !UnwindSafe for PanelBuildContext<'a>
impl<'a> Freeze for PanelBuildContext<'a>
impl<'a> Send for PanelBuildContext<'a>
impl<'a> Sync for PanelBuildContext<'a>
impl<'a> Unpin for PanelBuildContext<'a>
impl<'a> UnsafeUnpin for PanelBuildContext<'a>
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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