---
name: "wayland_zwp_tablet_pad_strip_v2_t"
section: "3"
platform: "linux"
package: "waylandpp-dev"
version: "1.0.0-6+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/wayland_zwp_tablet_pad_strip_v2_t"
---

# wayland\_zwp\_tablet\_pad\_strip\_v2\_t(3)

pad strip

## NAME

wayland::zwp\_tablet\_pad\_strip\_v2\_t - pad strip

## SYNOPSIS

`#include <wayland-client-protocol-unstable.hpp>`

Inherits **wayland::proxy\_t**.

### Public Types

enum class **wrapper\_type** { **standard**, **display**, **foreign**, **proxy\_wrapper** }\

### Public Member Functions

void **set\_feedback** (std::string const &description, uint32\_t serial)\
 set compositor feedback  std::function\< void(zwp\_tablet\_pad\_strip\_v2\_source)\> & **on\_source** ()\
 strip event source  std::function\< void(uint32\_t)\> & **on\_position** ()\
 position changed  std::function\< void()\> & **on\_stop** ()\
 interaction stopped  std::function\< void(uint32\_t)\> & **on\_frame** ()\
 end of a strip event sequence  uint32\_t **get\_id** () const\
 Get the id of a proxy object.  std::string **get\_class** () const\
 Get the interface name (class) of a proxy object.  uint32\_t **get\_version** () const\
 Get the protocol object version of a proxy object.  **wrapper\_type** **get\_wrapper\_type** () const\
 Get the type of a proxy object.  void **set\_queue** (**event\_queue\_t** queue)\
 Assign a proxy to an event queue.  wl\_proxy \* **c\_ptr** () const\
 Get a pointer to the underlying C struct.  bool **proxy\_has\_object** () const\
 Check whether this wrapper actually wraps an object.  **operator bool** () const\
 Check whether this wrapper actually wraps an object.  bool **operator==** (const **proxy\_t** &right) const\
 Check whether two wrappers refer to the same object.  bool **operator!=** (const **proxy\_t** &right) const\
 Check whether two wrappers refer to different objects.  void **proxy\_release** ()\
 Release the wrapped object (if any), making this an empty wrapper.

### Static Public Attributes

static constexpr std::uint32\_t **set\_feedback\_since\_version** = 1\
 Minimum protocol version required for the **set\_feedback** function.

## Detailed Description

pad strip

A linear interaction area, such as the strips found in Wacom Cintiq models.

Events on a strip are logically grouped by the wl\_tablet\_pad\_strip.frame event.

Definition at line **5082** of file **wayland-client-protocol-unstable.hpp**.

## Member Enumeration Documentation

### enum class wayland::proxy\_t::wrapper\_type` [strong]`, ` [inherited]`

Underlying wl\_proxy type and properties of a **proxy\_t** that affect construction, destruction, and event handling

**Enumerator**

- *standard*

  *C pointer is a standard type compatible with wl\_proxy\*. Events are dispatched and it is destructed when the* **proxy\_t** *is destructed. User data is set.*

- *display*

  *C pointer is a wl\_display\*. No events are dispatched, wl\_display\_disconnect is called when the* **proxy\_t** *is destructed. User data is set.*

- *foreign*

  *C pointer is a standard type compatible with wl\_proxy\*, but another library owns it and it should not be touched in a way that could affect the operation of the other library. No events are dispatched, wl\_proxy\_destroy is not called when the* **proxy\_t** *is destructed, user data is not touched. Consequently, there is no reference counting for the* **proxy\_t***. Lifetime of such wrappers should preferably be short to minimize the chance that the owning library decides to destroy the wl\_proxy.*

- *proxy\_wrapper*

  *C pointer is a wl\_proxy\* that was constructed with wl\_proxy\_create\_wrapper. No events are dispatched, wl\_proxy\_wrapper\_destroy is called when the* **proxy\_t** *is destroyed. Reference counting is active. A reference to the* **proxy\_t** *creating this proxy wrapper is held to extend its lifetime until after the proxy wrapper is destroyed.*

*Definition at line* **116** *of file* **wayland-client.hpp***.*

## Member Function Documentation

### wl\_proxy \* wayland::proxy\_t::c\_ptr () const` [inherited]`

*Get a pointer to the underlying C struct.*

**Returns**

*The underlying wl\_proxy wrapped by this* **proxy\_t** *if it exists, otherwise an exception is thrown*

### std::string wayland::proxy\_t::get\_class () const` [inherited]`

*Get the interface name (class) of a proxy object.*

**Returns**

*The interface name of the object associated with the proxy*

### uint32\_t wayland::proxy\_t::get\_id () const` [inherited]`

*Get the id of a proxy object.*

**Returns**

*The id the object associated with the proxy*

### uint32\_t wayland::proxy\_t::get\_version () const` [inherited]`

*Get the protocol object version of a proxy object. Gets the protocol object version of a proxy object, or 0 if the proxy was created with unversioned API.*

*A returned value of 0 means that no version information is available, so the caller must make safe assumptions about the object's real version.*

**display\_t** *will always return version 0.*

**Returns**

*The protocol object version of the proxy or 0*

### wrapper\_type wayland::proxy\_t::get\_wrapper\_type () const` [inline]`, ` [inherited]`

*Get the type of a proxy object.*

*Definition at line* **302** *of file* **wayland-client.hpp***.*

### std::function\< void(uint32\_t)\> & zwp\_tablet\_pad\_strip\_v2\_t::on\_frame ()

*end of a strip event sequence*

**Parameters**

*time timestamp with millisecond granularity*

*Indicates the end of a set of events that represent one logical hardware strip event. A client is expected to accumulate the data in all events within the frame before proceeding.*

*All wp\_tablet\_pad\_strip events before a wp\_tablet\_pad\_strip.frame event belong logically together. For example, on termination of a finger interaction on a strip the compositor will send a wp\_tablet\_pad\_strip.source event, a wp\_tablet\_pad\_strip.stop event and a wp\_tablet\_pad\_strip.frame event.*

*A wp\_tablet\_pad\_strip.frame event is sent for every logical event group, even if the group only contains a single wp\_tablet\_pad\_strip event. Specifically, a client may get a sequence: position, frame, position, frame, etc.*

*Definition at line* **7821** *of file* **wayland-client-protocol-unstable.cpp***.*

### std::function\< void(uint32\_t)\> & zwp\_tablet\_pad\_strip\_v2\_t::on\_position ()

*position changed*

**Parameters**

*position the current position*

*Sent whenever the position on a strip changes.*

*The position is normalized to a range of \[0, 65535\], the 0-value represents the top-most and/or left-most position of the strip in the pad's current rotation.*

*Definition at line* **7811** *of file* **wayland-client-protocol-unstable.cpp***.*

### std::function\< void(zwp\_tablet\_pad\_strip\_v2\_source)\> & zwp\_tablet\_pad\_strip\_v2\_t::on\_source ()

*strip event source*

**Parameters**

*source the event source*

*Source information for strip events.*

*This event does not occur on its own. It is sent before a wp\_tablet\_pad\_strip.frame event and carries the source information for all events within that frame.*

*The source specifies how this event was generated. If the source is wp\_tablet\_pad\_strip.source.finger, a wp\_tablet\_pad\_strip.stop event will be sent when the user lifts their finger off the device.*

*This event is optional. If the source is unknown for an interaction, no event is sent.*

*Definition at line* **7806** *of file* **wayland-client-protocol-unstable.cpp***.*

### std::function\< void()\> & zwp\_tablet\_pad\_strip\_v2\_t::on\_stop ()

*interaction stopped Stop notification for strip events.*

*For some wp\_tablet\_pad\_strip.source types, a wp\_tablet\_pad\_strip.stop event is sent to notify a client that the interaction with the strip has terminated. This enables the client to implement kinetic scrolling. See the wp\_tablet\_pad\_strip.source documentation for information on when this event may be generated.*

*Any wp\_tablet\_pad\_strip.position events with the same source after this event should be considered as the start of a new interaction.*

*Definition at line* **7816** *of file* **wayland-client-protocol-unstable.cpp***.*

### wayland::proxy\_t::operator bool () const` [inherited]`

*Check whether this wrapper actually wraps an object.*

**Returns**

*true if there is an underlying object, false if this wrapper is empty*

### bool wayland::proxy\_t::operator!= (const proxy\_t & right) const` [inherited]`

*Check whether two wrappers refer to different objects.*

### bool wayland::proxy\_t::operator== (const proxy\_t & right) const` [inherited]`

*Check whether two wrappers refer to the same object.*

### bool wayland::proxy\_t::proxy\_has\_object () const` [inherited]`

*Check whether this wrapper actually wraps an object.*

**Returns**

*true if there is an underlying object, false if this wrapper is empty*

### void wayland::proxy\_t::proxy\_release ()` [inherited]`

*Release the wrapped object (if any), making this an empty wrapper. Note that* **display\_t** *instances cannot be released this way. Attempts to do so are ignored.*

**Examples** **foreign\_display.cpp***.*

### void zwp\_tablet\_pad\_strip\_v2\_t::set\_feedback (std::string const & description, uint32\_t serial)

*set compositor feedback*

**Parameters**

*description strip description* \
 *serial serial of the mode switch event*

*Requests the compositor to use the provided feedback string associated with this strip. This request should be issued immediately after a wp\_tablet\_pad\_group.mode\_switch event from the corresponding group is received, or whenever the strip is mapped to a different action. See wp\_tablet\_pad\_group.mode\_switch for more details.*

*Clients are encouraged to provide context-aware descriptions for the actions associated with the strip, and compositors may use this information to offer visual feedback about the button layout (eg. on-screen displays).*

*The provided string 'description' is a UTF-8 encoded string to be associated with this ring, and is considered user-visible; general internationalization rules apply.*

*The serial argument will be that of the last wp\_tablet\_pad\_group.mode\_switch event received for the group of this strip. Requests providing other serials than the most recent one will be ignored.*

*Definition at line* **7800** *of file* **wayland-client-protocol-unstable.cpp***.*

### void wayland::proxy\_t::set\_queue (event\_queue\_t queue)` [inherited]`

*Assign a proxy to an event queue.*

**Parameters**

*queue The event queue that will handle this proxy*

*Assign proxy to event queue. Events coming from proxy will be queued in queue instead of the display's main queue.*

*See also:* **display\_t::dispatch\_queue()***.*

**Examples** **proxy\_wrapper.cpp***.*

## Member Data Documentation

### constexpr std::uint32\_t wayland::zwp\_tablet\_pad\_strip\_v2\_t::set\_feedback\_since\_version = 1` [static]`, ` [constexpr]`

*Minimum protocol version required for the* **set\_feedback** *function.*

*Definition at line* **5137** *of file* **wayland-client-protocol-unstable.hpp***.*

## Author

*Generated automatically by Doxygen for Wayland++ from the source code.*
