Struct widgetry::widgets::panel::Panel [−][src]
pub struct Panel {
top_level: Widget,
cached_flexbox: Option<(Stretch, Vec<Node>, ScreenDims)>,
horiz: HorizontalAlignment,
vert: VerticalAlignment,
dims_x: PanelDims,
dims_y: PanelDims,
scrollable_x: bool,
scrollable_y: bool,
contents_dims: ScreenDims,
container_dims: ScreenDims,
clip_rect: Option<ScreenRectangle>,
}
Fields
top_level: Widget
cached_flexbox: Option<(Stretch, Vec<Node>, ScreenDims)>
horiz: HorizontalAlignment
vert: VerticalAlignment
dims_x: PanelDims
dims_y: PanelDims
scrollable_x: bool
scrollable_y: bool
contents_dims: ScreenDims
container_dims: ScreenDims
clip_rect: Option<ScreenRectangle>
Implementations
Returns an empty panel. event
and draw
will have no effect.
pub fn modify_spinner<T: 'static + SpinnerValue>(
&mut self,
ctx: &EventCtx<'_>,
name: &str,
delta: T
)
pub fn maybe_dropdown_value<T: 'static + PartialEq + Clone, I: AsRef<str>>(
&self,
name: I
) -> Option<T>
Consumes the autocomplete widget. It’s fine if the panel survives past this event; the autocomplete just needs to be interacted with again to produce more values.
Grab a stashed value, with the ability to pass it around and modify it.
Grab a stashed value and clone it.
pub(crate) fn swap_inner_content(
&mut self,
ctx: &EventCtx<'_>,
container_name: &str,
new_inner_content: &mut Widget
)
pub(crate) fn swap_inner_content(
&mut self,
ctx: &EventCtx<'_>,
container_name: &str,
new_inner_content: &mut Widget
)
Swap the inner content of a container
widget with new_inner_content
.
All margins/padding/etc from the previous widget are retained. The ID is set on the new widget; no need to do that yourself.
Removes a widget from the panel. Does not recalculate layout!
Auto Trait Implementations
impl !RefUnwindSafe for Panel
impl !UnwindSafe for Panel
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: 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
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub 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. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self