Trait zng_app::handler::WidgetHandler
source · pub trait WidgetHandler<A: Clone + 'static>: Any + Send {
// Required method
fn event(&mut self, args: &A) -> bool;
// Provided methods
fn update(&mut self) -> bool { ... }
fn boxed(self) -> Box<dyn WidgetHandler<A>>
where Self: Sized { ... }
fn cfg_boxed(self) -> Box<dyn WidgetHandler<A>>
where Self: Sized { ... }
}Expand description
Represents a handler in a widget context.
There are different flavors of handlers, you can use macros to declare then.
See hn!, hn_once! or async_hn!, async_hn_once! to start.
Required Methods§
Provided Methods§
sourcefn update(&mut self) -> bool
fn update(&mut self) -> bool
Called every widget update.
Returns false when all pending async tasks are completed. Note that event properties
will call this method every update even if it is returning false.
sourcefn boxed(self) -> Box<dyn WidgetHandler<A>>where
Self: Sized,
fn boxed(self) -> Box<dyn WidgetHandler<A>>where
Self: Sized,
Box the handler.
The type Box<dyn WidgetHandler<A>> implements WidgetHandler<A> and just returns itself
in this method, avoiding double boxing.
sourcefn cfg_boxed(self) -> Box<dyn WidgetHandler<A>>where
Self: Sized,
fn cfg_boxed(self) -> Box<dyn WidgetHandler<A>>where
Self: Sized,
Boxes the handler if the feature = "dyn_closure" is active, otherwise retains the same handler type.