Enum Action

Source
pub enum Action {
    Create(Tree<Element>, CreateOrder),
    ModifyController(Box<dyn FnOnce(&mut Controller)>),
    ModifyModel(Box<dyn FnOnce(&mut Model)>),
    ModifyView(Box<dyn FnOnce(&mut View)>),
    SubmitCallback(CallbackId),
    Focus,
    Enable,
    Disable,
    Destroy,
    ReleaseButtons,
}
Expand description

An interface-level event

Variants§

§

Create(Tree<Element>, CreateOrder)

§

ModifyController(Box<dyn FnOnce(&mut Controller)>)

§

ModifyModel(Box<dyn FnOnce(&mut Model)>)

§

ModifyView(Box<dyn FnOnce(&mut View)>)

§

SubmitCallback(CallbackId)

This will submit produce an event with the Model containing this callback ID, but will not modify the current Model callback ID.

See the Form widget control FormSubmitCallback for a control function that submits a model with the currently set callback ID.

§

Focus

Change the view state from Enabled to Focused; it is a debug error if the view state is not Enabled.

If top is true, node will be moved to the last sibling position (“top”), otherwise position relative to siblings will remain unchanged

§

Enable

Change view.state from Disabled to Enabled; it is a debug error if the view state is not Disabled

§

Disable

Change the view.state from Enabled to Disabled; it is a debug error if the view state is not Enabled

§

Destroy

Destroy the target element and children.

If the node was focused, then focus is shifted to the parent. If it was the root node that was focused, then this is always an error since the root node is always focused as the common ancestor of all nodes.

§

ReleaseButtons

Trigger any release buttons that exist in the current input map of the controller of the target node.

This can be used when focus is changing and input state should not be orphaned.

Implementations§

Source§

impl Action

Source

pub fn create_singleton(element: Element, order: CreateOrder) -> Self

Produces a Create action that creates a singleton subtree containing the given Element

Source

pub fn set_view(view: View) -> Self

Produces a ModifyView action that sets the given View data.

Source

pub fn set_controller(controller: Controller) -> Self

Produces a ModifyController action that sets the given Controller data.

Source

pub fn set_model(model: Model) -> Self

Produces a ModifyModel action that sets the given Model data.

Source

pub fn set_view_component<V>(component: V) -> Self
where V: Kind + 'static,

Produces a ModifyView action that sets the given component Kind

Source

pub fn update_view_component<V>(component: V) -> Self
where V: Kind + 'static,

Produces a ModifyView action that updates the current component with the given value and panics if the current component is not the same Kind

Source

pub fn set_controller_component<V>(component: V) -> Self
where V: Kind + 'static,

Produces a ModifyController action that sets the given component Kind

Source

pub fn update_controller_component<V>(component: V) -> Self
where V: Kind + 'static,

Produces a ModifyController action that updates the current component with the given value and panics if the current component is not the same Kind

Source

pub fn set_model_component<V>(component: V) -> Self
where V: Kind + 'static,

Produces a ModifyModel action that sets the given component Kind

Source

pub fn update_model_component<V>(component: V) -> Self
where V: Kind + 'static,

Produces a ModifyModel action that updates the current component with the given value and panics if the current component is not the same Kind

Trait Implementations§

Source§

impl Debug for Action

Source§

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

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

impl From<(Tree<Element>, CreateOrder)> for Action

Source§

fn from(value: (Tree<Element>, CreateOrder)) -> Self

Converts to this type from the input type.
Source§

impl From<Box<dyn FnOnce(&mut Controller)>> for Action

Source§

fn from(value: Box<dyn FnOnce(&mut Controller)>) -> Self

Converts to this type from the input type.
Source§

impl From<Box<dyn FnOnce(&mut Model)>> for Action

Source§

fn from(value: Box<dyn FnOnce(&mut Model)>) -> Self

Converts to this type from the input type.
Source§

impl From<Box<dyn FnOnce(&mut View)>> for Action

Source§

fn from(value: Box<dyn FnOnce(&mut View)>) -> Self

Converts to this type from the input type.
Source§

impl From<CallbackId> for Action

Source§

fn from(value: CallbackId) -> Self

Converts to this type from the input type.
Source§

impl TryFrom<Action> for ()

Source§

type Error = TryIntoError<Action>

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

fn try_from(value: Action) -> Result<Self, TryIntoError<Action>>

Performs the conversion.
Source§

impl TryFrom<Action> for (Tree<Element>, CreateOrder)

Source§

type Error = TryIntoError<Action>

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

fn try_from(value: Action) -> Result<Self, TryIntoError<Action>>

Performs the conversion.
Source§

impl TryFrom<Action> for Box<dyn FnOnce(&mut Controller)>

Source§

type Error = TryIntoError<Action>

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

fn try_from(value: Action) -> Result<Self, TryIntoError<Action>>

Performs the conversion.
Source§

impl TryFrom<Action> for Box<dyn FnOnce(&mut Model)>

Source§

type Error = TryIntoError<Action>

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

fn try_from(value: Action) -> Result<Self, TryIntoError<Action>>

Performs the conversion.
Source§

impl TryFrom<Action> for Box<dyn FnOnce(&mut View)>

Source§

type Error = TryIntoError<Action>

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

fn try_from(value: Action) -> Result<Self, TryIntoError<Action>>

Performs the conversion.
Source§

impl TryFrom<Action> for CallbackId

Source§

type Error = TryIntoError<Action>

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

fn try_from(value: Action) -> Result<Self, TryIntoError<Action>>

Performs the conversion.

Auto Trait Implementations§

§

impl Freeze for Action

§

impl !RefUnwindSafe for Action

§

impl !Send for Action

§

impl !Sync for Action

§

impl Unpin for Action

§

impl !UnwindSafe for Action

Blanket Implementations§

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> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
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<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> 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> IntoResult<T> for T

Source§

impl<Src, Dst> LosslessTryInto<Dst> for Src
where Dst: LosslessTryFrom<Src>,

Source§

fn lossless_try_into(self) -> Option<Dst>

Performs the conversion.
Source§

impl<Src, Dst> LossyInto<Dst> for Src
where Dst: LossyFrom<Src>,

Source§

fn lossy_into(self) -> Dst

Performs the conversion.
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

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

Source§

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>,

Source§

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> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> MaybeSerDes for T