pub trait Body: View {
type V: View;
fn body(&self) -> Self::V;
fn print(&self, id: ViewID, cx: &mut Context) { ... }
fn process(
&self,
event: &Event,
id: ViewID,
cx: &mut Context,
vger: &mut VGER
) { ... }
fn draw(&self, id: ViewID, cx: &mut Context, vger: &mut VGER) { ... }
fn layout(
&self,
id: ViewID,
sz: LocalSize,
cx: &mut Context,
vger: &mut VGER
) -> LocalSize { ... }
fn hittest(
&self,
id: ViewID,
pt: LocalPoint,
cx: &mut Context,
vger: &mut VGER
) -> Option<ViewID> { ... }
fn commands(
&self,
id: ViewID,
cx: &mut Context,
cmds: &mut Vec<CommandInfo>
) { ... }
}