pub struct CustomCursor { /* private fields */ }
Expand description
Use a custom image as a cursor (mouse pointer).
Is guaranteed to be cheap to clone.
§Platform-specific
Web: Some browsers have limits on cursor sizes usually at 128x128.
§Example
use rio_window::window::CustomCursor;
let w = 10;
let h = 10;
let rgba = vec![255; (w * h * 4) as usize];
#[cfg(not(target_family = "wasm"))]
let source = CustomCursor::from_rgba(rgba, w, h, w / 2, h / 2).unwrap();
#[cfg(target_family = "wasm")]
let source = {
use rio_window::platform::web::CustomCursorExtWebSys;
CustomCursor::from_url(String::from("http://localhost:3000/cursor.png"), 0, 0)
};
let custom_cursor = event_loop.create_custom_cursor(source);
window.set_cursor(custom_cursor.clone());
Implementations§
Trait Implementations§
Source§impl Clone for CustomCursor
impl Clone for CustomCursor
Source§fn clone(&self) -> CustomCursor
fn clone(&self) -> CustomCursor
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl CustomCursorExtWebSys for CustomCursor
impl CustomCursorExtWebSys for CustomCursor
Source§fn is_animation(&self) -> bool
fn is_animation(&self) -> bool
Returns if this cursor is an animation.
Source§fn from_url(url: String, hotspot_x: u16, hotspot_y: u16) -> CustomCursorSource
fn from_url(url: String, hotspot_x: u16, hotspot_y: u16) -> CustomCursorSource
Creates a new cursor from a URL pointing to an image.
It uses the url css function,
but browser support for image formats is inconsistent. Using PNG is recommended.
Source§fn from_animation(
duration: Duration,
cursors: Vec<CustomCursor>,
) -> Result<CustomCursorSource, BadAnimation>
fn from_animation( duration: Duration, cursors: Vec<CustomCursor>, ) -> Result<CustomCursorSource, BadAnimation>
Crates a new animated cursor from multiple
CustomCursor
s.
Supplied cursors
can’t be empty or other animations.Source§impl Debug for CustomCursor
impl Debug for CustomCursor
Source§impl From<CustomCursor> for Cursor
impl From<CustomCursor> for Cursor
Source§fn from(custom: CustomCursor) -> Self
fn from(custom: CustomCursor) -> Self
Converts to this type from the input type.
Source§impl Hash for CustomCursor
impl Hash for CustomCursor
Source§impl PartialEq for CustomCursor
impl PartialEq for CustomCursor
impl Eq for CustomCursor
impl StructuralPartialEq for CustomCursor
Auto Trait Implementations§
impl Freeze for CustomCursor
impl RefUnwindSafe for CustomCursor
impl Send for CustomCursor
impl Sync for CustomCursor
impl Unpin for CustomCursor
impl UnwindSafe for CustomCursor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more