Struct wayland_protocols::unstable::tablet::v1::client::zwp_tablet_tool_v1::ZwpTabletToolV1
source · [−]pub struct ZwpTabletToolV1(_);
Implementations
sourceimpl ZwpTabletToolV1
impl ZwpTabletToolV1
sourcepub fn set_cursor(
&self,
serial: u32,
surface: Option<&WlSurface>,
hotspot_x: i32,
hotspot_y: i32
)
pub fn set_cursor(
&self,
serial: u32,
surface: Option<&WlSurface>,
hotspot_x: i32,
hotspot_y: i32
)
set the tablet tool’s surface
Sets the surface of the cursor used for this tool on the given tablet. This request only takes effect if the tool is in proximity of 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 cursor 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.
This request gives the surface the role of a cursor. The role assigned by this request is the same as assigned by wl_pointer.set_cursor meaning the same surface can be used both as a wl_pointer cursor and a wp_tablet cursor. If the surface already has another role, it raises a protocol error. The surface may be used on multiple tablets and across multiple seats.
Trait Implementations
sourceimpl AsRef<Proxy<ZwpTabletToolV1>> for ZwpTabletToolV1
impl AsRef<Proxy<ZwpTabletToolV1>> for ZwpTabletToolV1
sourceimpl Clone for ZwpTabletToolV1
impl Clone for ZwpTabletToolV1
sourcefn clone(&self) -> ZwpTabletToolV1
fn clone(&self) -> ZwpTabletToolV1
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ZwpTabletToolV1
impl Debug for ZwpTabletToolV1
sourceimpl From<Proxy<ZwpTabletToolV1>> for ZwpTabletToolV1
impl From<Proxy<ZwpTabletToolV1>> for ZwpTabletToolV1
sourceimpl From<ZwpTabletToolV1> for Proxy<ZwpTabletToolV1>
impl From<ZwpTabletToolV1> for Proxy<ZwpTabletToolV1>
sourcefn from(value: ZwpTabletToolV1) -> Self
fn from(value: ZwpTabletToolV1) -> Self
Converts to this type from the input type.
sourceimpl Interface for ZwpTabletToolV1
impl Interface for ZwpTabletToolV1
sourcefn c_interface() -> *const wl_interface
fn c_interface() -> *const wl_interface
Pointer to the C representation of this interface
sourceimpl PartialEq<ZwpTabletToolV1> for ZwpTabletToolV1
impl PartialEq<ZwpTabletToolV1> for ZwpTabletToolV1
sourcefn eq(&self, other: &ZwpTabletToolV1) -> bool
fn eq(&self, other: &ZwpTabletToolV1) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
impl Eq for ZwpTabletToolV1
impl StructuralEq for ZwpTabletToolV1
impl StructuralPartialEq for ZwpTabletToolV1
Auto Trait Implementations
impl !RefUnwindSafe for ZwpTabletToolV1
impl Send for ZwpTabletToolV1
impl Sync for ZwpTabletToolV1
impl Unpin for ZwpTabletToolV1
impl !UnwindSafe for ZwpTabletToolV1
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more