use crate::Metas;
use core::time::Duration;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum Button {
Left,
Middle,
Right,
Mouse(u8),
Touch(u8),
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum Phase {
Start,
End,
Update,
Cancel,
}
#[derive(Debug, Clone)]
pub struct EvtMouse {
pub button: Button,
pub phase: Phase,
pub point: (f32, f32),
pub metas: Metas,
pub time: Duration,
}
impl EvtMouse {
pub fn new(button: Button, phase: Phase, point: (f32, f32), metas: Metas, time: Duration) -> Self {
Self {
button,
phase,
point,
metas,
time,
}
}
}