1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use dces::prelude::Entity; use crate::prelude::*; use super::BuildContext; /// The `Template` trait provides the method for the widget template creation. pub trait Template: Sized { /// Creates the template of the widget and returns it. fn template(self, _id: Entity, _context: &mut BuildContext) -> Self { self } fn render_object(&self) -> Box<dyn RenderObject> { Box::new(DefaultRenderObject) } fn layout(&self) -> Box<dyn Layout> { Box::new(GridLayout::new()) } }