26 lines
1006 B
Rust
26 lines
1006 B
Rust
use embedded_graphics::framebuffer::{Framebuffer};
|
|
use crate::{success_screen, FRAMERATE, H_I, W_I};
|
|
use crate::display::screens::base::{ButtonPosition, SuccessBase};
|
|
use crate::DisplayScreen;
|
|
use embedded_graphics::pixelcolor::{PixelColor};
|
|
use embedded_graphics::prelude::Point;
|
|
use crate::display::tools::DrawTools;
|
|
use embedded_graphics::draw_target::DrawTarget;
|
|
use embedded_graphics::pixelcolor::RgbColor;
|
|
|
|
success_screen!(SuccessScreen, |index: &mut usize, frame_counter: &mut usize, dirty: &mut bool, display: &mut Framebuffer<_, _, _, WIDTH, HEIGHT, N>|->anyhow::Result<(), _> {
|
|
if *dirty {
|
|
display.draw_text_centered(Point::new(W_I/2, H_I/2), "Success!")?;
|
|
*dirty = false;
|
|
} else if *frame_counter % FRAMERATE*4 == 0 {
|
|
#[cfg(debug_assertions)]
|
|
println!("Switching to screen {}", *index + 1);
|
|
|
|
*index += 1;
|
|
*frame_counter = 0;
|
|
*dirty = true;
|
|
}
|
|
return Ok(())
|
|
}, |button: ButtonPosition|->anyhow::Result<(), _> {
|
|
Ok(())
|
|
}); |