diff options
| author | 2019-07-20 19:12:31 +0200 | |
|---|---|---|
| committer | 2019-07-20 19:12:31 +0200 | |
| commit | 2b7ad3d50eae48b1963aa8e866e184c41133ca3d (patch) | |
| tree | ae5b0c851aebb2dd8c01c08620d1cea7aa9d2466 /src/input/mouse | |
| parent | eefdcbe06cce97b452ee71ccb6fcd1a423d29075 (diff) | |
| download | iced-2b7ad3d50eae48b1963aa8e866e184c41133ca3d.tar.gz iced-2b7ad3d50eae48b1963aa8e866e184c41133ca3d.tar.bz2 iced-2b7ad3d50eae48b1963aa8e866e184c41133ca3d.zip  | |
Decouple `iced` from `coffee`
Diffstat (limited to '')
| -rw-r--r-- | src/input/mouse.rs | 5 | ||||
| -rw-r--r-- | src/input/mouse/button.rs | 7 | ||||
| -rw-r--r-- | src/input/mouse/event.rs | 39 | 
3 files changed, 51 insertions, 0 deletions
diff --git a/src/input/mouse.rs b/src/input/mouse.rs new file mode 100644 index 00000000..49a62961 --- /dev/null +++ b/src/input/mouse.rs @@ -0,0 +1,5 @@ +mod button; +mod event; + +pub use button::Button; +pub use event::Event; diff --git a/src/input/mouse/button.rs b/src/input/mouse/button.rs new file mode 100644 index 00000000..c51bedfc --- /dev/null +++ b/src/input/mouse/button.rs @@ -0,0 +1,7 @@ +#[derive(Debug, Hash, PartialEq, Eq, Clone, Copy)] +pub enum Button { +    Left, +    Right, +    Middle, +    Other(u8), +} diff --git a/src/input/mouse/event.rs b/src/input/mouse/event.rs new file mode 100644 index 00000000..1f7a1547 --- /dev/null +++ b/src/input/mouse/event.rs @@ -0,0 +1,39 @@ +use super::Button; +use crate::input::ButtonState; + +/// A mouse event. +#[derive(Debug, Clone, Copy, PartialEq)] +pub enum Event { +    /// The mouse cursor entered the window. +    CursorEntered, + +    /// The mouse cursor left the window. +    CursorLeft, + +    /// The mouse cursor was moved +    CursorMoved { +        /// The X coordinate of the mouse position +        x: f32, + +        /// The Y coordinate of the mouse position +        y: f32, +    }, + +    /// A mouse button was pressed or released. +    Input { +        /// The state of the button +        state: ButtonState, + +        /// The button identifier +        button: Button, +    }, + +    /// The mouse wheel was scrolled. +    WheelScrolled { +        /// The number of horizontal lines scrolled +        delta_x: f32, + +        /// The number of vertical lines scrolled +        delta_y: f32, +    }, +}  | 
