1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
use super::*; impl<'w,E,S> Widget<'w,E> for Label<'w,E,S> where E: Env, ERenderer<E>: RenderStdWidgets<E>, EEvent<E>: StdVarSup<E>, ESVariant<E>: StyleVariantSupport<StdVerb>, S: Caption<'w>+Statize, S::Statur: Sized, { fn child_paths(&self, _: E::WidgetPath) -> Vec<E::WidgetPath> { vec![] } fn style(&self, s: &mut ESVariant<E>) { s.attach(&[StdVerb::ObjText]); s.attach(&self.style[..]); } fn border(&self, b: &mut Border) { if let Some(senf) = &self.border { *b = *senf; } } fn id(&self) -> E::WidgetID { self.id.clone() } fn render(&self, l: Link<E>, r: &mut RenderLink<E>) -> bool { r.with(&[ StdVerb::ObjForeground, StdVerb::ObjText, ]) .render_text(self.text.caption().as_ref(),l.ctx); true } fn event(&self, _: Link<E>, _: (EEvent<E>,&Bounds,u64)) { } fn size(&self, _: Link<E>) -> ESize<E> { self.size.clone() } fn childs(&self) -> usize { 0 } fn childs_ref<'s>(&'s self) -> Vec<Resolvable<'s,E>> where 'w: 's { vec![] } fn into_childs(self: Box<Self>) -> Vec<Resolvable<'w,E>> { vec![] } fn _trace_bounds(&self, _: Link<E>, _: usize, _: &Bounds, _: bool) -> Result<Bounds,()> { Err(()) } fn focusable(&self) -> bool { false } fn child<'a>(&'a self, _: usize) -> Result<Resolvable<'a,E>,()> where 'w: 'a { Err(()) } fn into_child(self: Box<Self>, _: usize) -> Result<Resolvable<'w,E>,()> { Err(()) } } impl<'w,E,S> WidgetMut<'w,E> for Label<'w,E,S> where E: Env, ERenderer<E>: RenderStdWidgets<E>, EEvent<E>: StdVarSup<E>, ESVariant<E>: StyleVariantSupport<StdVerb>, S: Caption<'w>+Statize, S::Statur: Sized, { fn childs_mut<'s>(&'s mut self) -> Vec<ResolvableMut<'s,E>> where 'w: 's { vec![] } fn into_childs_mut(self: Box<Self>) -> Vec<ResolvableMut<'w,E>> { vec![] } fn child_mut<'a>(&'a mut self, _: usize) -> Result<ResolvableMut<'a,E>,()> where 'w: 'a { Err(()) } fn into_child_mut(self: Box<Self>, _: usize) -> Result<ResolvableMut<'w,E>,()> { Err(()) } }