pub struct WorkbenchToolbarPanel { /* private fields */ }Expand description
The strip’s own state: the per-frame hit-rects, plus the button lists, which are derived from the kernel catalogues and so are rebuilt only when the workbench changes rather than re-walked every frame.
Implementations§
Source§impl WorkbenchToolbarPanel
impl WorkbenchToolbarPanel
pub fn new() -> Self
Sourcepub fn visible(state: &EngineState) -> bool
pub fn visible(state: &EngineState) -> bool
Whether the strip is drawn this frame: the setting is on AND no special mode owns the shell (a sketch has its own tool strip; reference selection hides the dock the new feature’s form would open in).
Sourcepub fn show(
&mut self,
ui: &mut Ui,
state: &EngineState,
) -> WorkbenchToolbarOutcome
pub fn show( &mut self, ui: &mut Ui, state: &EngineState, ) -> WorkbenchToolbarOutcome
Draw the strip as a top panel — called right AFTER the primary toolbar
so egui stacks it directly underneath. Draws nothing (and publishes no
hit-rects) when Self::visible is false, or when the active
workbench offers nothing to put on it (the placeholder workbenches).
Trait Implementations§
Source§impl Default for WorkbenchToolbarPanel
impl Default for WorkbenchToolbarPanel
Source§fn default() -> WorkbenchToolbarPanel
fn default() -> WorkbenchToolbarPanel
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for WorkbenchToolbarPanel
impl RefUnwindSafe for WorkbenchToolbarPanel
impl Send for WorkbenchToolbarPanel
impl Sync for WorkbenchToolbarPanel
impl Unpin for WorkbenchToolbarPanel
impl UnsafeUnpin for WorkbenchToolbarPanel
impl UnwindSafe for WorkbenchToolbarPanel
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for 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> ⓘ
Converts
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> ⓘ
Converts
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