tuix_widgets/
label.rs

1use crate::common::*;
2
3pub struct Label {
4    text: String,
5}
6
7impl Label {
8    pub fn new(text: &str) -> Self {
9        Label {
10            text: text.to_string(),
11        }
12    }
13}
14
15impl Widget for Label {
16    type Ret = Entity;
17    type Data = String;
18
19    fn widget_name(&self) -> String {
20        "label".to_string()
21    }
22
23    fn on_build(&mut self, state: &mut State, entity: Entity) -> Self::Ret {
24        entity
25            .set_text(state, &self.text.to_string())
26            .set_element(state, "label")
27            //.set_focusable(state, false)
28    }
29
30    fn on_update(&mut self, state: &mut State, entity: Entity, data: &Self::Data) {
31        self.text = data.to_owned();
32        entity.set_text(state, &self.text);
33        //entity.set_name(state, &self.text);
34    }
35}
36