Struct wayland_client::protocol::wl_pointer::WlPointer
[−]
[src]
pub struct WlPointer { /* fields omitted */ }
Methods
impl WlPointer
[src]
fn set_cursor(
&self,
serial: u32,
surface: Option<&WlSurface>,
hotspot_x: i32,
hotspot_y: i32
) -> RequestResult<()>
[src]
&self,
serial: u32,
surface: Option<&WlSurface>,
hotspot_x: i32,
hotspot_y: i32
) -> RequestResult<()>
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.
fn release(&self) -> RequestResult<()>
[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 once this method is called.
This request is only available since version 3 of the interface
Trait Implementations
impl Send for WlPointer
[src]
impl Sync for WlPointer
[src]
impl Proxy for WlPointer
[src]
fn ptr(&self) -> *mut wl_proxy
[src]
Pointer to the underlying wayland proxy object
unsafe fn from_ptr_new(ptr: *mut wl_proxy) -> WlPointer
[src]
Create an instance from a wayland pointer Read more
unsafe fn from_ptr_initialized(ptr: *mut wl_proxy) -> WlPointer
[src]
Create an instance from a wayland pointer Read more
fn interface_ptr() -> *const wl_interface
[src]
Pointer to the interface representation
fn interface_name() -> &'static str
[src]
Internal wayland name of this interface
fn supported_version() -> u32
[src]
Max version of this interface supported
fn version(&self) -> u32
[src]
Current version of the interface this proxy is instantiated with
fn status(&self) -> Liveness
[src]
Check if the proxy behind this handle is actually still alive
fn equals(&self, other: &WlPointer) -> bool
[src]
Check of two handles are actually the same wayland object Read more
fn set_user_data(&self, ptr: *mut ())
[src]
Set a pointer associated as user data on this proxy Read more
fn get_user_data(&self) -> *mut ()
[src]
Get the pointer associated as user data on this proxy Read more
unsafe fn clone_unchecked(&self) -> WlPointer
[src]
Unsafely clone this proxy handle Read more
fn clone(&self) -> Option<Self> where
Self: Sized,
[src]
Self: Sized,
Clone this proxy handle Read more
impl<ID: 'static> Implementable<ID> for WlPointer
[src]
type Implementation = Implementation<ID>
The type containing the implementation for the event callbacks
unsafe fn __dispatch_msg(
&self,
opcode: u32,
args: *const wl_argument
) -> Result<(), ()>
[src]
&self,
opcode: u32,
args: *const wl_argument
) -> Result<(), ()>