#[cfg(feature = "serde")]
use serde::{
Deserialize,
Serialize,
};
use {
crate::{
button::MouseButton,
state::ButtonState,
},
dpi::PhysicalPosition,
keyboard_types::Modifiers,
};
#[derive(Clone, Debug, Eq, Hash, PartialEq, PartialOrd, Ord)]
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
pub struct MouseEvent {
pub position: PhysicalPosition<i32>,
pub state: ButtonState,
pub button: MouseButton,
pub modifiers: Modifiers,
pub is_double_click: bool,
}