fw-rust: Refactor printing to the LCD
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

Pass iterators for control and display data to the printing function
instead of just printing it.
This commit is contained in:
finga 2022-04-10 18:09:35 +02:00
parent d73d5126dd
commit 343b95dc78
4 changed files with 127 additions and 198 deletions

View file

@ -109,44 +109,44 @@ impl Setup {
pub fn draw(&self, lcd: &mut Lcd) {
lcd.fill_area(0, 0, 33, 2, 0xFF);
lcd.print_inverted(33, 0, "SETUP");
lcd.print(33, 0, true, "SETUP");
lcd.fill_area(69, 0, 33, 2, 0xFF);
match &self.active {
Selection::Contrast => {
lcd.print(0, 2, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, self.backlight);
lcd.print_inverted(0, 4, "CONTRAST:");
lcd.print_u8(87, 4, 2, self.contrast);
lcd.print(36, 6, "BACK");
lcd.print(0, 2, false, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, false, self.backlight);
lcd.print(0, 4, true, "CONTRAST:");
lcd.print_u8(87, 4, 2, false, self.contrast);
lcd.print(36, 6, false, "BACK");
}
Selection::ContrastEdit => {
lcd.print(0, 2, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, self.backlight);
lcd.print(0, 4, "CONTRAST:");
lcd.print_u8_inverted(87, 4, 2, self.contrast);
lcd.print(36, 6, "BACK");
lcd.print(0, 2, false, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, false, self.backlight);
lcd.print(0, 4, false, "CONTRAST:");
lcd.print_u8(87, 4, 2, true, self.contrast);
lcd.print(36, 6, false, "BACK");
}
Selection::Backlight => {
lcd.print_inverted(0, 2, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, self.backlight);
lcd.print(0, 4, "CONTRAST:");
lcd.print_u8(87, 4, 2, self.contrast);
lcd.print(36, 6, "BACK");
lcd.print(0, 2, true, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, false, self.backlight);
lcd.print(0, 4, false, "CONTRAST:");
lcd.print_u8(87, 4, 2, false, self.contrast);
lcd.print(36, 6, false, "BACK");
}
Selection::BacklightEdit => {
lcd.print(0, 2, "BACKLIGHT:");
lcd.print_u8_inverted(81, 2, 3, self.backlight);
lcd.print(0, 4, "CONTRAST:");
lcd.print_u8(87, 4, 2, self.contrast);
lcd.print(36, 6, "BACK");
lcd.print(0, 2, false, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, true, self.backlight);
lcd.print(0, 4, false, "CONTRAST:");
lcd.print_u8(87, 4, 2, false, self.contrast);
lcd.print(36, 6, false, "BACK");
}
Selection::Back => {
lcd.print(0, 2, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, self.backlight);
lcd.print(0, 4, "CONTRAST:");
lcd.print_u8(87, 4, 2, self.contrast);
lcd.print_inverted(36, 6, "BACK");
lcd.print(0, 2, false, "BACKLIGHT:");
lcd.print_u8(81, 2, 3, false, self.backlight);
lcd.print(0, 4, false, "CONTRAST:");
lcd.print_u8(87, 4, 2, false, self.contrast);
lcd.print(36, 6, true, "BACK");
}
}
}