makepad_widgets/
turtle_step.rs1use crate::{makepad_derive_widget::*, makepad_draw::*, widget::*};
2live_design! {
3 TurtleStep = {{TurtleStep}} {}
4}
5
6#[derive(Live, LiveHook, Widget)]
7pub struct TurtleStep {
8 #[walk] walk: Walk,
9 #[layout] layout: Layout,
10 #[redraw] area: Area,
11 #[rust] draw_state: DrawStateWrap<()>
12}
13
14impl Widget for TurtleStep {
15 fn handle_event(&mut self, _cx: &mut Cx, _event: &Event, _scope: &mut Scope) {
16 }
17
18 fn draw_walk(&mut self, cx: &mut Cx2d, _scope: &mut Scope, _walk: Walk) -> DrawStep {
19 if self.draw_state.begin(cx, ()) {
20 cx.begin_turtle(self.walk, self.layout);
21 return DrawStep::make_step()
22 }
23 cx.end_turtle_with_area(&mut self.area);
24 DrawStep::done()
25 }
26}