use crate::common::point::Point;
use std::path::{Path, PathBuf};
#[derive(Debug, Clone)]
pub enum Target {
Point(Point),
Image(PathBuf),
}
impl From<Point> for Target {
fn from(point: Point) -> Self {
Target::Point(point)
}
}
impl From<PathBuf> for Target {
fn from(path: PathBuf) -> Self {
Target::Image(path)
}
}
impl From<&Path> for Target {
fn from(path: &Path) -> Self {
Target::Image(path.to_path_buf())
}
}
impl From<&str> for Target {
fn from(path: &str) -> Self {
Target::Image(PathBuf::from(path))
}
}
#[derive(Debug, Clone, Copy)]
#[repr(i32)]
pub enum KeyCode {
Home = 3,
Back = 4,
Enter = 66,
}