Rename MouseCursor to mouse::Interaction

This commit is contained in:
Héctor Ramón Jiménez 2020-04-30 08:16:38 +02:00
parent d4c4198f72
commit 98bc8cf2a7
35 changed files with 170 additions and 171 deletions

View file

@ -1,6 +1,6 @@
use crate::{
conversion, size::Size, window, Cache, Clipboard, Command, Debug, Element,
Executor, Mode, MouseCursor, Proxy, Runtime, Settings, Subscription,
conversion, mouse, size::Size, window, Cache, Clipboard, Command, Debug,
Element, Executor, Mode, Proxy, Runtime, Settings, Subscription,
UserInterface,
};
@ -205,7 +205,7 @@ pub trait Application: Sized {
let mut cache = Some(user_interface.into_cache());
let mut events = Vec::new();
let mut mouse_cursor = MouseCursor::default();
let mut mouse_interaction = mouse::Interaction::default();
let mut modifiers = winit::event::ModifiersState::default();
debug.startup_finished();
@ -328,7 +328,7 @@ pub trait Application: Sized {
resized = false;
}
let new_mouse_cursor = backend.draw(
let new_mouse_interaction = backend.draw(
&mut renderer,
&mut swap_chain,
&primitive,
@ -338,12 +338,12 @@ pub trait Application: Sized {
debug.render_finished();
if new_mouse_cursor != mouse_cursor {
window.set_cursor_icon(conversion::mouse_cursor(
new_mouse_cursor,
if new_mouse_interaction != mouse_interaction {
window.set_cursor_icon(conversion::mouse_interaction(
new_mouse_interaction,
));
mouse_cursor = new_mouse_cursor;
mouse_interaction = new_mouse_interaction;
}
// TODO: Handle animations!

View file

@ -4,7 +4,7 @@
//! [`iced_native`]: https://github.com/hecrj/iced/tree/master/native
use crate::{
keyboard::{self, KeyCode, ModifiersState},
mouse, window, Event, Mode, MouseCursor,
mouse, window, Event, Mode,
};
/// Converts a winit window event into an iced event.
@ -125,19 +125,23 @@ pub fn fullscreen(
///
/// [`winit`]: https://github.com/rust-windowing/winit
/// [`iced_native`]: https://github.com/hecrj/iced/tree/master/native
pub fn mouse_cursor(mouse_cursor: MouseCursor) -> winit::window::CursorIcon {
match mouse_cursor {
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,
MouseCursor::Crosshair => winit::window::CursorIcon::Crosshair,
MouseCursor::Text => winit::window::CursorIcon::Text,
MouseCursor::ResizingHorizontally => {
pub fn mouse_interaction(
interaction: mouse::Interaction,
) -> winit::window::CursorIcon {
use mouse::Interaction;
match interaction {
Interaction::Idle => winit::window::CursorIcon::Default,
Interaction::Pointer => winit::window::CursorIcon::Hand,
Interaction::Working => winit::window::CursorIcon::Progress,
Interaction::Grab => winit::window::CursorIcon::Grab,
Interaction::Grabbing => winit::window::CursorIcon::Grabbing,
Interaction::Crosshair => winit::window::CursorIcon::Crosshair,
Interaction::Text => winit::window::CursorIcon::Text,
Interaction::ResizingHorizontally => {
winit::window::CursorIcon::EwResize
}
MouseCursor::ResizingVertically => winit::window::CursorIcon::NsResize,
Interaction::ResizingVertically => winit::window::CursorIcon::NsResize,
}
}