Trait relm::Widget[][src]

pub trait Widget where
    Self: Update,
    Self::Root: Clone + IsA<Object> + IsA<Widget>, 
{ type Root; fn root(&self) -> Self::Root;
fn view(relm: &Relm<Self>, model: Self::Model) -> Self; fn init_view(&mut self) { ... }
fn on_add<W: IsA<Widget> + IsA<Object>>(&self, _parent: W) { ... }
fn parent_id() -> Option<&'static str> { ... }
fn run(model_param: Self::ModelParam) -> Result<(), BoolError>
    where
        Self: 'static
, { ... } }
Expand description

Trait to implement to manage widget’s events.

Associated Types

The type of the root widget.

Required methods

Get the root widget of the view.

Create the initial view.

Provided methods

Update the view after it is initially created. This method is only useful when using the #[widget] attribute, because when not using it, you can use the view() method instead.

Method called when the widget is added to its parent. This is currently only used to set the child properties of a widget as relm widget could have child properties and we don’t know its parent when it is defined. Thus, we call on_add() when it is added to its parent to set the child properties.

Get the parent ID. This is useful for custom Container implementation: when you implement the Container::add_widget(), you might want to insert widgets elsewhere depending of this id.

Create the window from this widget and start the main loop.

Implementors