firmware for my Touchscreen E-Paper Input Module for Framework Laptop 16
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

fw16-epd-main: funny slider test

+20 -1
+20 -1
fw16-epd-main/src/gui.rs
··· 18 18 struct MainPage { 19 19 scratchpad_button: Button<'static>, 20 20 test_buttons: [Button<'static>; 16], 21 + s1: Slider, 22 + s2: Slider, 21 23 } 22 24 23 25 impl MainPage { ··· 45 47 Self { 46 48 scratchpad_button: Button::with_default_style_auto_sized(Point::new(10, 10), "Scratchpad", true), 47 49 test_buttons, 50 + s1: Slider::with_default_style(Point::new(10, 300), 220, 1, 20, 10), 51 + s2: Slider::with_default_style(Point::new(10, 350), 220, 1, 20, 10), 48 52 } 49 53 } 50 54 } ··· 54 58 55 59 fn draw_init(&self, draw_target: &mut EpdDrawTarget) { 56 60 self.scratchpad_button.draw_init(draw_target); 61 + self.s1.draw_init(draw_target); 62 + self.s2.draw_init(draw_target); 57 63 for button in &self.test_buttons { 58 64 button.draw_init(draw_target); 59 65 } ··· 69 75 draw_target.refresh(true, RefreshBlockMode::BlockAcknowledge); 70 76 } 71 77 72 - 73 78 for button in &mut self.test_buttons { 74 79 needs_refresh |= button.tick(draw_target, ev).needs_refresh; 80 + } 81 + 82 + if self.s1.tick(draw_target, ev) { 83 + needs_refresh = true; 84 + draw_target.fill_solid(&self.s2.bounding_box(), BinaryColor::Off).unwrap(); 85 + self.s2.marker_radius = self.s1.value; 86 + self.s2.draw_init(draw_target); 87 + } 88 + 89 + if self.s2.tick(draw_target, ev) { 90 + needs_refresh = true; 91 + draw_target.fill_solid(&self.s1.bounding_box(), BinaryColor::Off).unwrap(); 92 + self.s1.marker_radius = self.s2.value; 93 + self.s1.draw_init(draw_target); 75 94 } 76 95 77 96 if needs_refresh {