CtkDevicePad

CtkDevicePad — Pad device interface

Functions

Types and Values

Object Hierarchy

    GInterface
    ╰── CdkDevicePad

Prerequisites

CdkDevicePad requires CdkDevice.

Includes

#include <cdk/cdk.h>

Description

CdkDevicePad is an interface implemented by devices of type CDK_SOURCE_TABLET_PAD, it allows querying the features provided by the pad device.

Tablet pads may contain one or more groups, each containing a subset of the buttons/rings/strips available. cdk_device_pad_get_n_groups() can be used to obtain the number of groups, cdk_device_pad_get_n_features() and cdk_device_pad_get_feature_group() can be combined to find out the number of buttons/rings/strips the device has, and how are they grouped.

Each of those groups have different modes, which may be used to map each individual pad feature to multiple actions. Only one mode is effective (current) for each given group, different groups may have different current modes. The number of available modes in a group can be found out through cdk_device_pad_get_group_n_modes(), and the current mode for a given group will be notified through the CdkEventPadGroupMode event.

Functions

cdk_device_pad_get_n_groups ()

gint
cdk_device_pad_get_n_groups (CdkDevicePad *pad);

Returns the number of groups this pad device has. Pads have at least one group. A pad group is a subcollection of buttons/strip/rings that is affected collectively by a same current mode.

Parameters

pad

a CdkDevicePad

 

Returns

The number of button/ring/strip groups in the pad.

Since: 3.22


cdk_device_pad_get_group_n_modes ()

gint
cdk_device_pad_get_group_n_modes (CdkDevicePad *pad,
                                  gint group_idx);

Returns the number of modes that group may have.

Parameters

pad

a CdkDevicePad

 

group_idx

group to get the number of available modes from

 

Returns

The number of modes available in group .

Since: 3.22


cdk_device_pad_get_n_features ()

gint
cdk_device_pad_get_n_features (CdkDevicePad *pad,
                               CdkDevicePadFeature feature);

Returns the number of features a tablet pad has.

Parameters

pad

a CdkDevicePad

 

feature

a pad feature

 

Returns

The amount of elements of type feature that this pad has.

Since: 3.22


cdk_device_pad_get_feature_group ()

gint
cdk_device_pad_get_feature_group (CdkDevicePad *pad,
                                  CdkDevicePadFeature feature,
                                  gint feature_idx);

Returns the group the given feature and idx belong to, or -1 if feature/index do not exist in pad .

Parameters

pad

a CdkDevicePad

 

feature

the feature type to get the group from

 

feature_idx

the index of the feature to get the group from

 

Returns

The group number of the queried pad feature.

Since: 3.22

Types and Values

CdkDevicePad

typedef struct _CdkDevicePad CdkDevicePad;

enum CdkDevicePadFeature

A pad feature.

Members

CDK_DEVICE_PAD_FEATURE_BUTTON

a button

 

CDK_DEVICE_PAD_FEATURE_RING

a ring-shaped interactive area

 

CDK_DEVICE_PAD_FEATURE_STRIP

a straight interactive area