Struct cushy::widget::WidgetInstance

source ·
pub struct WidgetInstance { /* private fields */ }
Expand description

An instance of a Widget.

Implementations§

source§

impl WidgetInstance

source

pub fn with_id<W>(widget: W, id: WidgetTag) -> Self
where W: Widget,

Returns a new instance containing widget that is assigned the unique id provided.

source

pub fn new<W>(widget: W) -> Self
where W: Widget,

Returns a new instance containing widget.

source

pub fn id(&self) -> WidgetId

Returns the unique id of this widget instance.

source

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.

source

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.

source

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.

source

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.

source

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.

source

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().

source

pub fn is_default(&self) -> bool

Returns true if this is a default widget.

See MakeWidget::into_default() for more information.

source

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

source§

fn as_ref(&self) -> &WidgetId

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl Clone for WidgetInstance

source§

fn clone(&self) -> WidgetInstance

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for WidgetInstance

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl MakeWidget for WidgetInstance

source§

fn make_widget(self) -> WidgetInstance

Returns a new widget.
source§

fn into_window(self) -> Window<WidgetInstance>

Returns a new window containing self as the root widget.
source§

fn build_virtual_window(self) -> CushyWindowBuilder

Returns a builder for a VirtualWindow.
source§

fn build_recorder(self) -> VirtualRecorderBuilder<Rgb8>

Returns a builder for a VirtualRecorder
source§

fn with_styles(self, styles: impl IntoValue<Styles>) -> Style
where Self: Sized,

Associates styles with this widget. Read more
source§

fn with<C: ComponentDefinition>( self, name: &C, component: impl IntoValue<C::ComponentType> ) -> Style

Associates a style component with self.
source§

fn with_dynamic<C: ComponentDefinition>( self, name: &C, dynamic: impl IntoDynamicComponentValue ) -> Style

Associates a style component with self, resolving its value using dynamic at runtime.
source§

fn h1(self) -> Style

Styles self with the largest of 6 heading styles.
source§

fn h2(self) -> Style

Styles self with the second largest of 6 heading styles.
source§

fn h3(self) -> Style

Styles self with the third largest of 6 heading styles.
source§

fn h4(self) -> Style

Styles self with the third smallest of 6 heading styles.
source§

fn h5(self) -> Style

Styles self with the second smallest of 6 heading styles.
source§

fn h6(self) -> Style

Styles self with the smallest of 6 heading styles.
source§

fn xxxx_large(self) -> Style

Styles self with the largest text size.
source§

fn xxx_large(self) -> Style

Styles self with the second largest text size.
source§

fn xx_large(self) -> Style

Styles self with the third largest text size.
source§

fn x_large(self) -> Style

Styles self with the fourth largest text size.
source§

fn large(self) -> Style

Styles self with the fifth largest text size.
source§

fn default_size(self) -> Style

Styles self with the third smallest text size.
source§

fn small(self) -> Style

Styles self with the second smallest text size.
source§

fn x_small(self) -> Style

Styles self with the smallest text size.
source§

fn with_next_focus( self, next_focus: impl IntoValue<Option<WidgetId>> ) -> WidgetInstance

Sets the widget that should be focused next. Read more
source§

fn with_enabled(self, enabled: impl IntoValue<bool>) -> WidgetInstance

Sets this widget to be enabled/disabled based on enabled and returns self. Read more
source§

fn into_default(self) -> WidgetInstance

Sets this widget as a “default” widget. Read more
source§

fn into_escape(self) -> WidgetInstance

Sets this widget as an “escape” widget. Read more
source§

fn and(self, other: impl MakeWidget) -> WidgetList

Returns a collection of widgets using self and other.
source§

fn expand(self) -> Expand

Expands self to grow to fill its parent.
source§

fn expand_weighted(self, weight: u8) -> Expand

Expands self to grow to fill its parent proportionally with other weighted siblings.
source§

fn expand_horizontally(self) -> Expand

Expands self to grow to fill its parent horizontally.
source§

fn expand_vertically(self) -> Expand

Expands self to grow to fill its parent vertically.
source§

fn size<T>(self, size: Size<T>) -> Resize
where T: Into<DimensionRange>,

Resizes self to size.
source§

fn width(self, width: impl Into<DimensionRange>) -> Resize

Resizes self to width. Read more
source§

fn height(self, height: impl Into<DimensionRange>) -> Resize

Resizes self to height. Read more
source§

fn into_button(self) -> Button

Returns this widget as the contents of a clickable button.
source§

fn into_checkbox(self, value: impl IntoDynamic<CheckboxState>) -> Checkbox

Returns this widget as the label of a Checkbox.
source§

fn centered(self) -> Align

Aligns self to the center vertically and horizontally.
source§

fn align_left(self) -> Align

Aligns self to the left.
source§

fn align_right(self) -> Align

Aligns self to the right.
source§

fn align_top(self) -> Align

Aligns self to the top.
source§

fn align_bottom(self) -> Align

Aligns self to the bottom.
source§

fn fit_horizontally(self) -> Align

Fits self horizontally within its parent.
source§

fn fit_vertically(self) -> Align

Fits self vertically within its parent.
source§

fn scroll(self) -> Scroll

Allows scrolling self both vertically and horizontally.
source§

fn vertical_scroll(self) -> Scroll

Allows scrolling self vertically.
source§

fn horizontal_scroll(self) -> Scroll

Allows scrolling self horizontally.
source§

fn widget_ref(self) -> WidgetRef

Creates a WidgetRef for use as child widget.
source§

fn contain(self) -> Container

Wraps self in a Container.
source§

fn contain_level(self, level: impl IntoValue<ContainerLevel>) -> Container

Wraps self in a Container with the specified level.
source§

fn background_color(self, color: impl IntoValue<Color>) -> Container

Returns a new widget that renders color behind self.
source§

fn pad(self) -> Container

Wraps self with the default padding.
source§

fn pad_by(self, padding: impl IntoValue<Edges<Dimension>>) -> Container

Wraps self with the specified padding.
source§

fn themed(self, theme: impl IntoValue<ThemePair>) -> Themed

Applies theme to self and its children.
source§

fn themed_mode(self, mode: impl IntoValue<ThemeMode>) -> ThemedMode

Applies mode to self and its children.
source§

fn collapse_horizontally( self, collapse_when: impl IntoDynamic<bool> ) -> Collapse

Returns a widget that collapses self horizontally based on the dynamic boolean value. Read more
source§

fn collapse_vertically(self, collapse_when: impl IntoDynamic<bool>) -> Collapse

Returns a widget that collapses self vertically based on the dynamic boolean value. Read more
source§

fn disclose(self) -> Disclose

Returns a new widget that allows hiding and showing contents.
source§

fn validation(self, validation: impl IntoDynamic<Validation>) -> Validated

Returns a widget that shows validation errors and/or hints.
source§

fn tooltip(self, layer: &OverlayLayer, tip: impl MakeWidget) -> Tooltipped

Returns a widget that shows tip on layer when self is hovered.
source§

impl ManageWidget for WidgetInstance

§

type Managed = Option<MountedWidget>

The managed type, which can be Option<MountedWidget> or MountedWidget.
source§

fn manage(&self, context: &WidgetContext<'_>) -> Self::Managed

Resolve self into a MountedWidget.
source§

impl PartialEq<WidgetInstance> for MountedWidget

source§

fn eq(&self, other: &WidgetInstance) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialEq for WidgetInstance

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl WindowBehavior for WidgetInstance

§

type Context = WidgetInstance

The type that is provided when initializing this window.
source§

fn initialize( _window: &mut RunningWindow<Window<'_, WindowCommand>>, context: Self::Context ) -> Self

Return a new instance of this behavior using context.
source§

fn make_root(&mut self) -> WidgetInstance

Create the window’s root widget. This function is only invoked once.
source§

fn close_requested<W>(&self, window: &mut W) -> bool
where W: PlatformWindow,

The window has been requested to close. If this function returns true, the window will be closed. Returning false prevents the window from closing.
source§

fn run_with(context: Self::Context) -> Result

Runs this behavior as an application, initialized with context.
source§

impl Eq for WidgetInstance

source§

impl<T> MenuItemContents<T> for WidgetInstance

Auto Trait Implementations§

Blanket Implementations§

source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where 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) -> D
where M: TransformMatrix<T>,

Convert the source color to the destination color using the specified method.
source§

fn adapt_into(self) -> D

Convert the source color to the destination color using the bradford method by default.
source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar> ) -> T

Converts self into C, using the provided parameters.
source§

impl<A> Cast for A

source§

fn cast<To>(self) -> To
where To: CastFrom<A>,

Casts self to the To type. This may be a lossy operation.
source§

impl<A> CastFrom<A> for A

source§

fn from_cast(from: A) -> A

Returns from as Self.
source§

impl<A, B> CastInto<A> for B
where A: CastFrom<B>,

source§

fn cast_into(self) -> A

Returns self as To.
source§

impl<T, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
source§

impl<T> Downcast<T> for T

source§

fn downcast(&self) -> &T

source§

impl<T> Downcast for T
where T: Any,

source§

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>

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)

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)

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
where T: Any + Send + Sync,

source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> FromAngle<T> for T

source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> IntoAngle<U> for T
where U: FromAngle<T>,

source§

fn into_angle(self) -> U

Performs a conversion into T.
source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar> ) -> T

Converts self into C, using the provided parameters.
source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
source§

impl<T> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
source§

impl<T> IntoReadOnly<T> for T

source§

fn into_read_only(self) -> ReadOnly<T>

Returns self as a ReadOnly.
source§

impl<T> IntoStimulus<T> for T

source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
source§

impl<T> IntoValue<Option<T>> for T

source§

fn into_value(self) -> Value<Option<T>>

Returns this type as a Value.
source§

impl<T> IntoValue<T> for T

source§

fn into_value(self) -> Value<T>

Returns this type as a Value.
source§

impl<T> Open for T
where T: MakeWidget,

source§

fn open<App>( self, app: &mut App ) -> Result<Option<WindowHandle>, EventLoopError>
where App: Application + ?Sized,

Opens the provided type as a window inside of app.
source§

fn run_in(self, app: PendingApp) -> Result<(), EventLoopError>

Runs the provided type inside of the pending app, returning Ok(()) upon successful execution and program exit. Note that this function may not ever return on some platforms.
source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Run for T
where T: MakeWidget,

source§

fn run(self) -> Result<(), EventLoopError>

Runs the provided type, returning Ok(()) upon successful execution and program exit. Note that this function may not ever return on some platforms.
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
source§

impl<T> Upcast<T> for T

source§

fn upcast(&self) -> Option<&T>

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> WasmNotSend for T
where T: Send,

source§

impl<T> WasmNotSendSync for T

source§

impl<T> WasmNotSync for T
where T: Sync,