[][src]Struct wayland_client::protocol::wl_pointer::WlPointer

pub struct WlPointer(_);

Implementations

impl WlPointer[src]

pub fn set_cursor(
    &self,
    serial: u32,
    surface: Option<&WlSurface>,
    hotspot_x: i32,
    hotspot_y: i32
)
[src]

set the pointer surface

Set the pointer surface, i.e., the surface that contains the pointer image (cursor). This request gives the surface the role of a cursor. If the surface already has another role, it raises a protocol error.

The cursor actually changes only if the pointer focus for this device is one of the requesting client's surfaces or the surface parameter is the current pointer surface. If there was a previous surface set with this request it is replaced. If surface is NULL, the pointer image is hidden.

The parameters hotspot_x and hotspot_y define the position of the pointer surface relative to the pointer location. Its top-left corner is always at (x, y) - (hotspot_x, hotspot_y), where (x, y) are the coordinates of the pointer location, in surface-local coordinates.

On surface.attach requests to the pointer surface, hotspot_x and hotspot_y are decremented by the x and y parameters passed to the request. Attach must be confirmed by wl_surface.commit as usual.

The hotspot can also be updated by passing the currently set pointer surface to this request with new values for hotspot_x and hotspot_y.

The current and pending input regions of the wl_surface are cleared, and wl_surface.set_input_region is ignored until the wl_surface is no longer used as the cursor. When the use as a cursor ends, the current and pending input regions become undefined, and the wl_surface is unmapped.

pub fn release(&self)[src]

release the pointer object

Using this request a client can tell the server that it is not going to use the pointer object anymore.

This request destroys the pointer proxy object, so clients must not call wl_pointer_destroy() after using this request.

This is a destructor, you cannot send requests to this object any longer once this method is called. Only available since version 3 of the interface.

Trait Implementations

impl AsRef<Proxy<WlPointer>> for WlPointer[src]

impl Clone for WlPointer[src]

impl Debug for WlPointer[src]

impl Eq for WlPointer[src]

impl From<Proxy<WlPointer>> for WlPointer[src]

impl From<WlPointer> for Proxy<WlPointer>[src]

impl Interface for WlPointer[src]

type Request = Request

Set of requests associated to this interface Read more

type Event = Event

Set of events associated to this interface Read more

impl PartialEq<WlPointer> for WlPointer[src]

impl StructuralEq for WlPointer[src]

impl StructuralPartialEq for WlPointer[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any
[src]

impl<T> DowncastSync for T where
    T: Send + Sync + Any
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.