#[path = "support/mod.rs"]
mod support;
use embedded_graphics::{
pixelcolor::Rgb565,
prelude::{Point, RgbColor, Size},
primitives::Rectangle,
};
use faststep::{Button, ButtonKind, ButtonSpec, Localized, TouchEvent, TouchPhase};
fn main() {
let mut canvas = support::NullCanvas::new(Size::new(320, 240));
let theme = support::theme();
let i18n = support::i18n();
let mut primary = Button::new(
Rectangle::new(Point::new(16, 16), Size::new(132, 56)),
ButtonSpec {
key: 1_u8,
icon: Some("+"),
label: Localized::new("button.add", "Add device"),
kind: ButtonKind::Primary,
},
);
let secondary = Button::new(
Rectangle::new(Point::new(16, 84), Size::new(132, 48)),
ButtonSpec {
key: 2_u8,
icon: None,
label: Localized::new("button.more", "More"),
kind: ButtonKind::Secondary,
},
);
let destructive = Button::new(
Rectangle::new(Point::new(16, 144), Size::new(132, 48)),
ButtonSpec {
key: 3_u8,
icon: None,
label: Localized::new("button.delete", "Delete"),
kind: ButtonKind::Destructive,
},
);
primary.draw(&mut canvas, &theme, &i18n);
secondary.draw(&mut canvas, &theme, &i18n);
destructive.draw(&mut canvas, &theme, &i18n);
let _ = primary.handle_touch(TouchEvent::new(Point::new(24, 24), TouchPhase::Start, 1));
let response = primary.handle_touch(TouchEvent::new(Point::new(24, 24), TouchPhase::End, 2));
let _pressed = response.action == Some(1);
let _ = Rgb565::BLACK;
}