diff options
author | 2019-10-05 03:58:23 +0200 | |
---|---|---|
committer | 2019-10-05 03:58:23 +0200 | |
commit | a90f7fcb987f667a80038a5e72f379abbd59d932 (patch) | |
tree | 01e687b72100a259060bbc46c5b3311e84353dd5 /wgpu | |
parent | a7d11944039a1b5ea5b72256e8d15367d99e6010 (diff) | |
download | iced-a90f7fcb987f667a80038a5e72f379abbd59d932.tar.gz iced-a90f7fcb987f667a80038a5e72f379abbd59d932.tar.bz2 iced-a90f7fcb987f667a80038a5e72f379abbd59d932.zip |
Move `MouseCursor` to `iced_wgpu`
Diffstat (limited to 'wgpu')
-rw-r--r-- | wgpu/src/mouse_cursor.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/wgpu/src/mouse_cursor.rs b/wgpu/src/mouse_cursor.rs new file mode 100644 index 00000000..4ef6361a --- /dev/null +++ b/wgpu/src/mouse_cursor.rs @@ -0,0 +1,35 @@ +/// The state of the mouse cursor. +#[derive(Debug, Eq, PartialEq, Clone, Copy)] +pub enum MouseCursor { + /// The cursor is out of the bounds of the user interface. + OutOfBounds, + + /// The cursor is over a non-interactive widget. + Idle, + + /// The cursor is over a clickable widget. + Pointer, + + /// The cursor is over a busy widget. + Working, + + /// The cursor is over a grabbable widget. + Grab, + + /// The cursor is grabbing a widget. + Grabbing, +} + +#[cfg(feature = "winit")] +impl From<MouseCursor> for winit::window::CursorIcon { + fn from(mouse_cursor: MouseCursor) -> winit::window::CursorIcon { + match mouse_cursor { + MouseCursor::OutOfBounds => winit::window::CursorIcon::Default, + MouseCursor::Idle => winit::window::CursorIcon::Default, + MouseCursor::Pointer => winit::window::CursorIcon::Hand, + MouseCursor::Working => winit::window::CursorIcon::Progress, + MouseCursor::Grab => winit::window::CursorIcon::Grab, + MouseCursor::Grabbing => winit::window::CursorIcon::Grabbing, + } + } +} |