Struct wayland_protocols::wp::tablet::zv2::server::zwp_tablet_pad_v2::ZwpTabletPadV2
source · [−]pub struct ZwpTabletPadV2 { /* private fields */ }
unstable
and server
only.Expand description
a set of buttons, rings and strips
A pad device is a set of buttons, rings and strips usually physically present on the tablet device itself. Some exceptions exist where the pad device is physically detached, e.g. the Wacom ExpressKey Remote.
Pad devices have no axes that control the cursor and are generally auxiliary devices to the tool devices used on the tablet surface.
A pad device has a number of static characteristics, e.g. the number of rings. These capabilities are sent in an event sequence after the wp_tablet_seat.pad_added event before any actual events from this pad. This initial event sequence is terminated by a wp_tablet_pad.done event.
All pad features (buttons, rings and strips) are logically divided into groups and all pads have at least one group. The available groups are notified through the wp_tablet_pad.group event; the compositor will emit one event per group before emitting wp_tablet_pad.done.
Groups may have multiple modes. Modes allow clients to map multiple actions to a single pad feature. Only one mode can be active per group, although different groups may have different active modes.
See also the Request enum for this interface.
Implementations
sourceimpl ZwpTabletPadV2
impl ZwpTabletPadV2
sourcepub fn group(&self, pad_group: &ZwpTabletPadGroupV2)
pub fn group(&self, pad_group: &ZwpTabletPadGroupV2)
group announced
Sent on wp_tablet_pad initialization to announce available groups. One event is sent for each pad group available.
This event is sent in the initial burst of events before the wp_tablet_pad.done event. At least one group will be announced.
sourcepub fn path(&self, path: String)
pub fn path(&self, path: String)
path to the device
A system-specific device path that indicates which device is behind this wp_tablet_pad. This information may be used to gather additional information about the device, e.g. through libwacom.
The format of the path is unspecified, it may be a device node, a sysfs path, or some other identifier. It is up to the client to identify the string provided.
This event is sent in the initial burst of events before the wp_tablet_pad.done event.
buttons announced
Sent on wp_tablet_pad initialization to announce the available buttons.
This event is sent in the initial burst of events before the wp_tablet_pad.done event. This event is only sent when at least one button is available.
sourcepub fn done(&self)
pub fn done(&self)
pad description event sequence complete
This event signals the end of the initial burst of descriptive events. A client may consider the static description of the pad to be complete and finalize initialization of the pad.
physical button state
Sent whenever the physical state of a button changes.
sourcepub fn enter(&self, serial: u32, tablet: &ZwpTabletV2, surface: &WlSurface)
pub fn enter(&self, serial: u32, tablet: &ZwpTabletV2, surface: &WlSurface)
enter event
Notification that this pad is focused on the specified surface.
sourcepub fn leave(&self, serial: u32, surface: &WlSurface)
pub fn leave(&self, serial: u32, surface: &WlSurface)
enter event
Notification that this pad is no longer focused on the specified surface.
sourcepub fn removed(&self)
pub fn removed(&self)
pad removed event
Sent when the pad has been removed from the system. When a tablet is removed its pad(s) will be removed too.
When this event is received, the client must destroy all rings, strips and groups that were offered by this pad, and issue wp_tablet_pad.destroy the pad itself.
Trait Implementations
sourceimpl Clone for ZwpTabletPadV2
impl Clone for ZwpTabletPadV2
sourcefn clone(&self) -> ZwpTabletPadV2
fn clone(&self) -> ZwpTabletPadV2
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 ZwpTabletPadV2
impl Debug for ZwpTabletPadV2
sourceimpl PartialEq<ZwpTabletPadV2> for ZwpTabletPadV2
impl PartialEq<ZwpTabletPadV2> for ZwpTabletPadV2
sourceimpl Resource for ZwpTabletPadV2
impl Resource for ZwpTabletPadV2
sourcefn object_data(&self) -> Option<&Arc<dyn Any + Send + Sync>>
fn object_data(&self) -> Option<&Arc<dyn Any + Send + Sync>>
Access the raw data associated with this object. Read more
sourcefn handle(&self) -> &WeakHandle
fn handle(&self) -> &WeakHandle
Access the backend handle associated with this object
sourcefn from_id(conn: &DisplayHandle, id: ObjectId) -> Result<Self, InvalidId>
fn from_id(conn: &DisplayHandle, id: ObjectId) -> Result<Self, InvalidId>
Create an object resource from its ID Read more
sourcefn parse_request(
conn: &DisplayHandle,
msg: Message<ObjectId>
) -> Result<(Self, Self::Request), DispatchError>
fn parse_request(
conn: &DisplayHandle,
msg: Message<ObjectId>
) -> Result<(Self, Self::Request), DispatchError>
Parse a event for this object Read more
sourcefn write_event(
&self,
conn: &DisplayHandle,
msg: Self::Event
) -> Result<Message<ObjectId>, InvalidId>
fn write_event(
&self,
conn: &DisplayHandle,
msg: Self::Event
) -> Result<Message<ObjectId>, InvalidId>
Serialize an event for this object Read more
impl Eq for ZwpTabletPadV2
Auto Trait Implementations
impl !RefUnwindSafe for ZwpTabletPadV2
impl Send for ZwpTabletPadV2
impl Sync for ZwpTabletPadV2
impl Unpin for ZwpTabletPadV2
impl !UnwindSafe for ZwpTabletPadV2
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