Struct cushy::widget::WidgetInstance
source · pub struct WidgetInstance { /* private fields */ }
Expand description
An instance of a Widget
.
Implementations§
source§impl WidgetInstance
impl WidgetInstance
sourcepub fn with_id<W>(widget: W, id: WidgetTag) -> Selfwhere
W: Widget,
pub fn with_id<W>(widget: W, id: WidgetTag) -> Selfwhere
W: Widget,
Returns a new instance containing widget
that is assigned the unique
id
provided.
sourcepub fn with_next_focus(
self,
next_focus: impl IntoValue<Option<WidgetId>>,
) -> WidgetInstance
pub fn with_next_focus( self, next_focus: impl IntoValue<Option<WidgetId>>, ) -> WidgetInstance
Sets the widget that should be focused next.
Cushy automatically determines reverse tab order by using this same relationship.
§Panics
This function can only be called when one instance of the widget exists. If any clones exist, a panic will occur.
sourcepub fn with_enabled(self, enabled: impl IntoValue<bool>) -> WidgetInstance
pub fn with_enabled(self, enabled: impl IntoValue<bool>) -> WidgetInstance
Sets this widget to be enabled/disabled based on enabled
and returns
self.
If this widget is disabled, all children widgets will also be disabled.
§Panics
This function can only be called when one instance of the widget exists. If any clones exist, a panic will occur.
sourcepub fn into_default(self) -> WidgetInstance
pub fn into_default(self) -> WidgetInstance
Sets this widget as a “default” widget.
Default widgets are automatically activated when the user signals they are ready for the default action to occur.
Example widgets this is used for are:
- Submit buttons on forms
- Ok buttons
§Panics
This function can only be called when one instance of the widget exists. If any clones exist, a panic will occur.
sourcepub fn into_escape(self) -> WidgetInstance
pub fn into_escape(self) -> WidgetInstance
Sets this widget as an “escape” widget.
Escape widgets are automatically activated when the user signals they are ready to escape their current situation.
Example widgets this is used for are:
- Close buttons
- Cancel buttons
§Panics
This function can only be called when one instance of the widget exists. If any clones exist, a panic will occur.
sourcepub fn lock(&self) -> WidgetGuard<'_>
pub fn lock(&self) -> WidgetGuard<'_>
Locks the widget for exclusive access. Locking widgets should only be done for brief moments of time when you are certain no deadlocks can occur due to other widget locks being held.
sourcepub fn next_focus(&self) -> Option<WidgetId>
pub fn next_focus(&self) -> Option<WidgetId>
Returns the id of the widget that should receive focus after this widget.
This value comes from MakeWidget::with_next_focus()
.
sourcepub fn is_default(&self) -> bool
pub fn is_default(&self) -> bool
Returns true if this is a default widget.
See MakeWidget::into_default()
for more information.
sourcepub fn is_escape(&self) -> bool
pub fn is_escape(&self) -> bool
Returns true if this is an escape widget.
See MakeWidget::into_escape()
for more information.
Trait Implementations§
source§impl AsRef<WidgetId> for WidgetInstance
impl AsRef<WidgetId> for WidgetInstance
source§impl Clone for WidgetInstance
impl Clone for WidgetInstance
source§fn clone(&self) -> WidgetInstance
fn clone(&self) -> WidgetInstance
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for WidgetInstance
impl Debug for WidgetInstance
source§impl From<WidgetInstance> for WidgetRef
impl From<WidgetInstance> for WidgetRef
source§fn from(value: WidgetInstance) -> Self
fn from(value: WidgetInstance) -> Self
source§impl MakeWidget for WidgetInstance
impl MakeWidget for WidgetInstance
source§fn make_widget(self) -> WidgetInstance
fn make_widget(self) -> WidgetInstance
source§fn into_window(self) -> Window
fn into_window(self) -> Window
self
as the root widget.source§fn build_standalone_window(self) -> StandaloneWindowBuilder
fn build_standalone_window(self) -> StandaloneWindowBuilder
source§fn build_recorder(self) -> VirtualRecorderBuilder<Rgb8>
fn build_recorder(self) -> VirtualRecorderBuilder<Rgb8>
VirtualRecorder
source§fn with_styles(self, styles: impl IntoValue<Styles>) -> Stylewhere
Self: Sized,
fn with_styles(self, styles: impl IntoValue<Styles>) -> Stylewhere
Self: Sized,
styles
with this widget. Read moresource§fn with<C: ComponentDefinition>(
self,
name: &C,
component: impl IntoValue<C::ComponentType>,
) -> Style
fn with<C: ComponentDefinition>( self, name: &C, component: impl IntoValue<C::ComponentType>, ) -> Style
self
.source§fn with_local<C: ComponentDefinition>(
self,
name: &C,
component: impl IntoValue<C::ComponentType>,
) -> Style
fn with_local<C: ComponentDefinition>( self, name: &C, component: impl IntoValue<C::ComponentType>, ) -> Style
self
, ensuring that no child widgets
inherit this component.source§fn with_dynamic<C: ComponentDefinition>(
self,
name: &C,
dynamic: impl IntoDynamicComponentValue,
) -> Stylewhere
C::ComponentType: IntoComponentValue,
fn with_dynamic<C: ComponentDefinition>(
self,
name: &C,
dynamic: impl IntoDynamicComponentValue,
) -> Stylewhere
C::ComponentType: IntoComponentValue,
self
, resolving its value using
dynamic
at runtime.source§fn with_local_dynamic<C: ComponentDefinition>(
self,
name: &C,
dynamic: impl IntoDynamicComponentValue,
) -> Stylewhere
C::ComponentType: IntoComponentValue,
fn with_local_dynamic<C: ComponentDefinition>(
self,
name: &C,
dynamic: impl IntoDynamicComponentValue,
) -> Stylewhere
C::ComponentType: IntoComponentValue,
self
, resolving its value using
dynamic
at runtime. This component will not be inherited to child
widgets.source§fn with_shortcut<F>(
self,
key: impl Into<ShortcutKey>,
modifiers: ModifiersState,
callback: F,
) -> Shortcuts
fn with_shortcut<F>( self, key: impl Into<ShortcutKey>, modifiers: ModifiersState, callback: F, ) -> Shortcuts
source§fn with_repeating_shortcut<F>(
self,
key: impl Into<ShortcutKey>,
modifiers: ModifiersState,
callback: F,
) -> Shortcuts
fn with_repeating_shortcut<F>( self, key: impl Into<ShortcutKey>, modifiers: ModifiersState, callback: F, ) -> Shortcuts
callback
when key
is pressed while modifiers
are pressed.
If the shortcut is held, the callback will be invoked on repeat events. Read moresource§fn xxxx_large(self) -> Style
fn xxxx_large(self) -> Style
self
with the largest text size.source§fn default_size(self) -> Style
fn default_size(self) -> Style
self
with the third smallest text size.source§fn with_hint(self, hint: impl MakeWidget) -> Stack
fn with_hint(self, hint: impl MakeWidget) -> Stack
source§fn with_next_focus(
self,
next_focus: impl IntoValue<Option<WidgetId>>,
) -> WidgetInstance
fn with_next_focus( self, next_focus: impl IntoValue<Option<WidgetId>>, ) -> WidgetInstance
source§fn with_enabled(self, enabled: impl IntoValue<bool>) -> WidgetInstance
fn with_enabled(self, enabled: impl IntoValue<bool>) -> WidgetInstance
enabled
and returns
self. Read moresource§fn into_default(self) -> WidgetInstance
fn into_default(self) -> WidgetInstance
source§fn into_escape(self) -> WidgetInstance
fn into_escape(self) -> WidgetInstance
source§fn and(self, other: impl MakeWidget) -> WidgetList
fn and(self, other: impl MakeWidget) -> WidgetList
self
and other
.source§fn chain<W: MakeWidget>(self, others: impl IntoIterator<Item = W>) -> WidgetList
fn chain<W: MakeWidget>(self, others: impl IntoIterator<Item = W>) -> WidgetList
source§fn expand_weighted(self, weight: u8) -> Expand
fn expand_weighted(self, weight: u8) -> Expand
self
to grow to fill its parent proportionally with other
weighted siblings.source§fn expand_horizontally(self) -> Expand
fn expand_horizontally(self) -> Expand
self
to grow to fill its parent horizontally.source§fn expand_vertically(self) -> Expand
fn expand_vertically(self) -> Expand
self
to grow to fill its parent vertically.source§fn into_checkbox(self, value: impl IntoDynamic<CheckboxState>) -> Checkbox
fn into_checkbox(self, value: impl IntoDynamic<CheckboxState>) -> Checkbox
source§fn to_checkbox(&self, value: impl IntoDynamic<CheckboxState>) -> Checkboxwhere
Self: Clone,
fn to_checkbox(&self, value: impl IntoDynamic<CheckboxState>) -> Checkboxwhere
Self: Clone,
source§fn align_left(self) -> Align
fn align_left(self) -> Align
self
to the left.source§fn align_right(self) -> Align
fn align_right(self) -> Align
self
to the right.source§fn align_bottom(self) -> Align
fn align_bottom(self) -> Align
self
to the bottom.source§fn fit_horizontally(self) -> Align
fn fit_horizontally(self) -> Align
self
horizontally within its parent.source§fn fit_vertically(self) -> Align
fn fit_vertically(self) -> Align
self
vertically within its parent.source§fn vertical_scroll(self) -> Scroll
fn vertical_scroll(self) -> Scroll
self
vertically.source§fn horizontal_scroll(self) -> Scroll
fn horizontal_scroll(self) -> Scroll
self
horizontally.source§fn contain_level(self, level: impl IntoValue<ContainerLevel>) -> Container
fn contain_level(self, level: impl IntoValue<ContainerLevel>) -> Container
self
in a Container
with the specified level.source§fn background_color(self, color: impl IntoValue<Color>) -> Container
fn background_color(self, color: impl IntoValue<Color>) -> Container
color
behind self
.source§fn pad_by(self, padding: impl IntoValue<Edges<Dimension>>) -> Container
fn pad_by(self, padding: impl IntoValue<Edges<Dimension>>) -> Container
self
with the specified padding.source§fn themed(self, theme: impl IntoValue<ThemePair>) -> Themed
fn themed(self, theme: impl IntoValue<ThemePair>) -> Themed
theme
to self
and its children.source§fn themed_mode(self, mode: impl IntoValue<ThemeMode>) -> ThemedMode
fn themed_mode(self, mode: impl IntoValue<ThemeMode>) -> ThemedMode
mode
to self
and its children.source§fn collapse_horizontally(
self,
collapse_when: impl IntoDynamic<bool>,
) -> Collapse
fn collapse_horizontally( self, collapse_when: impl IntoDynamic<bool>, ) -> Collapse
self
horizontally based on the dynamic boolean value. Read moresource§fn collapse_vertically(self, collapse_when: impl IntoDynamic<bool>) -> Collapse
fn collapse_vertically(self, collapse_when: impl IntoDynamic<bool>) -> Collapse
self
vertically based on the dynamic
boolean value. Read moresource§fn validation(self, validation: impl IntoDynamic<Validation>) -> Validated
fn validation(self, validation: impl IntoDynamic<Validation>) -> Validated
source§fn tooltip(self, layer: &OverlayLayer, tip: impl MakeWidget) -> Tooltipped
fn tooltip(self, layer: &OverlayLayer, tip: impl MakeWidget) -> Tooltipped
tip
on layer
when self
is hovered.source§impl ManageWidget for WidgetInstance
impl ManageWidget for WidgetInstance
source§type Managed = Option<MountedWidget>
type Managed = Option<MountedWidget>
Option<MountedWidget>
or
MountedWidget
.source§fn manage(&self, context: &WidgetContext<'_>) -> Self::Managed
fn manage(&self, context: &WidgetContext<'_>) -> Self::Managed
self
into a MountedWidget
.source§impl PartialEq<WidgetInstance> for MountedWidget
impl PartialEq<WidgetInstance> for MountedWidget
source§impl PartialEq for WidgetInstance
impl PartialEq for WidgetInstance
source§impl WindowBehavior for WidgetInstance
impl WindowBehavior for WidgetInstance
source§type Context = WidgetInstance
type Context = WidgetInstance
source§fn initialize(
_window: &mut RunningWindow<Window<'_, WindowCommand>>,
context: Self::Context,
) -> Self
fn initialize( _window: &mut RunningWindow<Window<'_, WindowCommand>>, context: Self::Context, ) -> Self
context
.source§fn make_root(&mut self) -> WidgetInstance
fn make_root(&mut self) -> WidgetInstance
source§fn initialized<W>(&mut self, window: &mut W)where
W: PlatformWindow,
fn initialized<W>(&mut self, window: &mut W)where
W: PlatformWindow,
source§fn close_requested<W>(&self, window: &mut W) -> boolwhere
W: PlatformWindow,
fn close_requested<W>(&self, window: &mut W) -> boolwhere
W: PlatformWindow,
impl Eq for WidgetInstance
impl<T> MenuItemContents<T> for WidgetInstance
Auto Trait Implementations§
impl Freeze for WidgetInstance
impl !RefUnwindSafe for WidgetInstance
impl Send for WidgetInstance
impl Sync for WidgetInstance
impl Unpin for WidgetInstance
impl !UnwindSafe for WidgetInstance
Blanket Implementations§
source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
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<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters
when converting.source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.§impl<A> Cast for A
impl<A> Cast for A
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle
.source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other
into Self
, while performing the appropriate scaling,
rounding and clamping.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
source§fn into_angle(self) -> U
fn into_angle(self) -> U
T
.source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters
when converting.source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
source§fn into_color(self) -> U
fn into_color(self) -> U
source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
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 moresource§impl<T> IntoReadOnly<T> for T
impl<T> IntoReadOnly<T> for T
source§fn into_read_only(self) -> ReadOnly<T>
fn into_read_only(self) -> ReadOnly<T>
self
as a ReadOnly
.source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self
into T
, while performing the appropriate scaling,
rounding and clamping.source§impl<T> IntoValue<T> for T
impl<T> IntoValue<T> for T
source§fn into_value(self) -> Value<T>
fn into_value(self) -> Value<T>
Value
.source§impl<T> MakeWindow for Twhere
T: MakeWidget,
impl<T> MakeWindow for Twhere
T: MakeWidget,
source§type Behavior = WidgetInstance
type Behavior = WidgetInstance
source§fn make_window(self) -> Window<<T as MakeWindow>::Behavior>
fn make_window(self) -> Window<<T as MakeWindow>::Behavior>
self
.source§fn open_centered<App>(self, app: &mut App) -> Result<WindowHandle>
fn open_centered<App>(self, app: &mut App) -> Result<WindowHandle>
self
in the center of the monitor the window initially appears
on.source§fn run_centered(self) -> Resultwhere
Self: Sized,
fn run_centered(self) -> Resultwhere
Self: Sized,
self
in the center of the monitor the window
initially appears on.source§fn run_centered_in(self, app: PendingApp) -> Resultwhere
Self: Sized,
fn run_centered_in(self, app: PendingApp) -> Resultwhere
Self: Sized,
app
after opening self
in the center of the monitor the window
initially appears on.source§impl<T> Open for Twhere
T: MakeWindow,
impl<T> Open for Twhere
T: MakeWindow,
source§fn open<App>(self, app: &mut App) -> Result<WindowHandle, EventLoopError>where
App: Application + ?Sized,
fn open<App>(self, app: &mut App) -> Result<WindowHandle, EventLoopError>where
App: Application + ?Sized,
app
.§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> Run for Twhere
T: MakeWidget,
impl<T> Run for Twhere
T: MakeWidget,
source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors
fails to cast.source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds
error is returned which contains
the unclamped color. Read more