Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
Safe Haskell | None |
Language | Haskell2010 |
DevicePad
is an interface implemented by devices of type
InputSourceTabletPad
, 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. devicePadGetNGroups
can be used to obtain the number of groups, devicePadGetNFeatures
and devicePadGetFeatureGroup
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 devicePadGetGroupNModes
, and the current
mode for a given group will be notified through the EventPadGroupMode
event.
Synopsis
- newtype DevicePad = DevicePad (ManagedPtr DevicePad)
- noDevicePad :: Maybe DevicePad
- class (GObject o, IsDescendantOf DevicePad o) => IsDevicePad o
- toDevicePad :: (MonadIO m, IsDevicePad o) => o -> m DevicePad
- devicePadGetFeatureGroup :: (HasCallStack, MonadIO m, IsDevicePad a) => a -> DevicePadFeature -> Int32 -> m Int32
- devicePadGetGroupNModes :: (HasCallStack, MonadIO m, IsDevicePad a) => a -> Int32 -> m Int32
- devicePadGetNFeatures :: (HasCallStack, MonadIO m, IsDevicePad a) => a -> DevicePadFeature -> m Int32
- devicePadGetNGroups :: (HasCallStack, MonadIO m, IsDevicePad a) => a -> m Int32
Exported types
Memory-managed wrapper type.
Instances
GObject DevicePad Source # | |
Defined in GI.Gdk.Interfaces.DevicePad gobjectType :: IO GType # | |
HasParentTypes DevicePad Source # | |
Defined in GI.Gdk.Interfaces.DevicePad | |
type ParentTypes DevicePad Source # | |
Defined in GI.Gdk.Interfaces.DevicePad |
class (GObject o, IsDescendantOf DevicePad o) => IsDevicePad o Source #
Type class for types which can be safely cast to DevicePad
, for instance with toDevicePad
.
Instances
(GObject o, IsDescendantOf DevicePad o) => IsDevicePad o Source # | |
Defined in GI.Gdk.Interfaces.DevicePad |
toDevicePad :: (MonadIO m, IsDevicePad o) => o -> m DevicePad Source #
Methods
getFeatureGroup
devicePadGetFeatureGroup Source #
:: (HasCallStack, MonadIO m, IsDevicePad a) | |
=> a |
|
-> DevicePadFeature |
|
-> Int32 |
|
-> m Int32 | Returns: The group number of the queried pad feature. |
Returns the group the given feature
and idx
belong to,
or -1 if feature/index do not exist in pad
.
Since: 3.22
getGroupNModes
devicePadGetGroupNModes Source #
:: (HasCallStack, MonadIO m, IsDevicePad a) | |
=> a |
|
-> Int32 |
|
-> m Int32 | Returns: The number of modes available in |
Returns the number of modes that group
may have.
Since: 3.22
getNFeatures
devicePadGetNFeatures Source #
:: (HasCallStack, MonadIO m, IsDevicePad a) | |
=> a |
|
-> DevicePadFeature |
|
-> m Int32 | Returns: The amount of elements of type |
Returns the number of features a tablet pad has.
Since: 3.22
getNGroups
:: (HasCallStack, MonadIO m, IsDevicePad a) | |
=> a |
|
-> m Int32 | Returns: The number of button/ring/strip groups in the 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.
Since: 3.22