display views: return error instead of unwrapping

This commit was merged in pull request #49.
This commit is contained in:
2026-08-29 21:09:09 +00:00
parent ef10eec216
commit 153acffb86
9 changed files with 114 additions and 40 deletions
+9 -5
View File
@@ -1,3 +1,4 @@
use crate::drivers::primary_lcd::PrimaryDisplayError;
use crate::peripherals::Peripherals;
use alloc::boxed::Box;
use alloc::vec;
@@ -17,7 +18,6 @@ use embedded_graphics::pixelcolor::Rgb565;
use embedded_graphics::prelude::RgbColor;
use embedded_graphics_core::draw_target::DrawTarget;
use crate::peripherals::storage::cardstore::CardStoreError;
pub const MAX_SELECTED: i32 = 4;
#[derive(Debug, Clone)]
@@ -35,10 +35,14 @@ impl Navigable for MainMenu {
let display = &mut outputs.primary_display;
display.clear(Rgb565::BLACK).unwrap();
menu_item::show(display, "Scan card", 0, self.selected);
menu_item::show(display, "Last card", 1, self.selected);
menu_item::show(display, "Journal", 2, self.selected);
menu_item::show(display, "Settings", 3, self.selected);
menu_item::show(display, "Scan card", 0, self.selected)
.map_err(PrimaryDisplayError::from)?;
menu_item::show(display, "Last card", 1, self.selected)
.map_err(PrimaryDisplayError::from)?;
menu_item::show(display, "Journal", 2, self.selected)
.map_err(PrimaryDisplayError::from)?;
menu_item::show(display, "Settings", 3, self.selected)
.map_err(PrimaryDisplayError::from)?;
Ok(())
}