pub trait Operation<T> {
    // Required method
    fn container(
        &mut self,
        id: Option<&Id>,
        bounds: Rectangle,
        operate_on_children: &mut dyn FnMut(&mut dyn Operation<T>)
    );

    // Provided methods
    fn focusable(&mut self, _state: &mut dyn Focusable, _id: Option<&Id>) { ... }
    fn scrollable(
        &mut self,
        _state: &mut dyn Scrollable,
        _id: Option<&Id>,
        _bounds: Rectangle,
        _translation: Vector
    ) { ... }
    fn text_input(&mut self, _state: &mut dyn TextInput, _id: Option<&Id>) { ... }
    fn custom(&mut self, _state: &mut (dyn Any + 'static), _id: Option<&Id>) { ... }
    fn finish(&self) -> Outcome<T> { ... }
}
Available on crate feature advanced only.
Expand description

A piece of logic that can traverse the widget tree of an application in order to query or update some widget state.

Required Methods§

source

fn container( &mut self, id: Option<&Id>, bounds: Rectangle, operate_on_children: &mut dyn FnMut(&mut dyn Operation<T>) )

Operates on a widget that contains other widgets.

The operate_on_children function can be called to return control to the widget tree and keep traversing it.

Provided Methods§

source

fn focusable(&mut self, _state: &mut dyn Focusable, _id: Option<&Id>)

Operates on a widget that can be focused.

source

fn scrollable( &mut self, _state: &mut dyn Scrollable, _id: Option<&Id>, _bounds: Rectangle, _translation: Vector )

Operates on a widget that can be scrolled.

source

fn text_input(&mut self, _state: &mut dyn TextInput, _id: Option<&Id>)

Operates on a widget that has text input.

source

fn custom(&mut self, _state: &mut (dyn Any + 'static), _id: Option<&Id>)

Operates on a custom widget with some state.

source

fn finish(&self) -> Outcome<T>

Finishes the Operation and returns its Outcome.

Implementors§