hidpp: replace the button mappings structs with a macro

No functional changes, this is in preparation for the future to make
replacing bits a bit easier - hopefully we only have to change the macro and
not every element then.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Peter Hutterer
2015-09-01 11:02:11 +10:00
parent 5cb15524d4
commit ef15072691

View File

@@ -57,24 +57,27 @@ struct hidpp20_1b04_action_mapping {
struct ratbag_button_action action;
};
#define BUTTON_ACTION_MAPPING(v_, n_, act_) \
{ v_, n_, act_ }
static const struct hidpp20_1b04_action_mapping hidpp20_1b04_logical_mapping[] =
{
{ 0, "None" , BUTTON_ACTION_NONE },
{ 1, "Volume Up" , BUTTON_ACTION_KEY(KEY_VOLUMEUP) },
{ 2, "Volume Down" , BUTTON_ACTION_KEY(KEY_VOLUMEDOWN) },
{ 3, "Mute" , BUTTON_ACTION_KEY(KEY_MUTE) },
{ 4, "Play/Pause" , BUTTON_ACTION_KEY(KEY_PLAYPAUSE) },
{ 5, "Next" , BUTTON_ACTION_KEY(KEY_NEXTSONG) },
{ 6, "Previous" , BUTTON_ACTION_KEY(KEY_PREVIOUSSONG) },
{ 7, "Stop" , BUTTON_ACTION_KEY(KEY_STOPCD) },
{ 80, "Left" , BUTTON_ACTION_BUTTON(1) },
{ 81, "Right" , BUTTON_ACTION_BUTTON(2) },
{ 82, "Middle" , BUTTON_ACTION_BUTTON(3) },
{ 83, "Back" , BUTTON_ACTION_BUTTON(4) },
{ 86, "Forward" , BUTTON_ACTION_BUTTON(5) },
{ 195, "AppSwitchGesture" , BUTTON_ACTION_NONE },
{ 196, "SmartShift" , BUTTON_ACTION_SPECIAL(RATBAG_BUTTON_ACTION_SPECIAL_RATCHET_MODE_SWITCH) },
{ 315, "LedToggle" , BUTTON_ACTION_NONE },
BUTTON_ACTION_MAPPING(0, "None" , BUTTON_ACTION_NONE),
BUTTON_ACTION_MAPPING(1, "Volume Up" , BUTTON_ACTION_KEY(KEY_VOLUMEUP)),
BUTTON_ACTION_MAPPING(2, "Volume Down" , BUTTON_ACTION_KEY(KEY_VOLUMEDOWN)),
BUTTON_ACTION_MAPPING(3, "Mute" , BUTTON_ACTION_KEY(KEY_MUTE)),
BUTTON_ACTION_MAPPING(4, "Play/Pause" , BUTTON_ACTION_KEY(KEY_PLAYPAUSE)),
BUTTON_ACTION_MAPPING(5, "Next" , BUTTON_ACTION_KEY(KEY_NEXTSONG)),
BUTTON_ACTION_MAPPING(6, "Previous" , BUTTON_ACTION_KEY(KEY_PREVIOUSSONG)),
BUTTON_ACTION_MAPPING(7, "Stop" , BUTTON_ACTION_KEY(KEY_STOPCD)),
BUTTON_ACTION_MAPPING(80, "Left" , BUTTON_ACTION_BUTTON(1)),
BUTTON_ACTION_MAPPING(81, "Right" , BUTTON_ACTION_BUTTON(2)),
BUTTON_ACTION_MAPPING(82, "Middle" , BUTTON_ACTION_BUTTON(3)),
BUTTON_ACTION_MAPPING(83, "Back" , BUTTON_ACTION_BUTTON(4)),
BUTTON_ACTION_MAPPING(86, "Forward" , BUTTON_ACTION_BUTTON(5)),
BUTTON_ACTION_MAPPING(195, "AppSwitchGesture" , BUTTON_ACTION_NONE),
BUTTON_ACTION_MAPPING(196, "SmartShift" , BUTTON_ACTION_SPECIAL(RATBAG_BUTTON_ACTION_SPECIAL_RATCHET_MODE_SWITCH)),
BUTTON_ACTION_MAPPING(315, "LedToggle" , BUTTON_ACTION_NONE),
};
struct hidpp20_1b04_physical_mapping {
@@ -83,26 +86,29 @@ struct hidpp20_1b04_physical_mapping {
enum ratbag_button_type type;
};
#define BUTTON_PHYS_MAPPING(v_, n_, t_) \
{ v_, n_, t_ }
static const struct hidpp20_1b04_physical_mapping hidpp20_1b04_physical_mapping[] =
{
{ 0, "None" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 1, "Volume Up" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 2, "Volume Down" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 3, "Mute" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 4, "Play/Pause" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 5, "Next" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 6, "Previous" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 7, "Stop" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 56, "Left Click" , RATBAG_BUTTON_TYPE_LEFT },
{ 57, "Right Click" , RATBAG_BUTTON_TYPE_RIGHT },
{ 58, "Middle Click" , RATBAG_BUTTON_TYPE_MIDDLE },
{ 59, "Wheel Side Click Left" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 60, "Back Click" , RATBAG_BUTTON_TYPE_SIDE },
{ 61, "Wheel Side Click Right" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 62, "Forward Click" , RATBAG_BUTTON_TYPE_EXTRA },
{ 156, "Gesture Button" , RATBAG_BUTTON_TYPE_UNKNOWN },
{ 157, "SmartShift" , RATBAG_BUTTON_TYPE_WHEEL_RATCHET_MODE_SHIFT },
{ 221, "LedToggle" , RATBAG_BUTTON_TYPE_UNKNOWN },
BUTTON_PHYS_MAPPING(0, "None" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(1, "Volume Up" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(2, "Volume Down" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(3, "Mute" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(4, "Play/Pause" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(5, "Next" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(6, "Previous" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(7, "Stop" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(56, "Left Click" , RATBAG_BUTTON_TYPE_LEFT),
BUTTON_PHYS_MAPPING(57, "Right Click" , RATBAG_BUTTON_TYPE_RIGHT),
BUTTON_PHYS_MAPPING(58, "Middle Click" , RATBAG_BUTTON_TYPE_MIDDLE),
BUTTON_PHYS_MAPPING(59, "Wheel Side Click Left" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(60, "Back Click" , RATBAG_BUTTON_TYPE_SIDE),
BUTTON_PHYS_MAPPING(61, "Wheel Side Click Right", RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(62, "Forward Click" , RATBAG_BUTTON_TYPE_EXTRA),
BUTTON_PHYS_MAPPING(156, "Gesture Button" , RATBAG_BUTTON_TYPE_UNKNOWN),
BUTTON_PHYS_MAPPING(157, "SmartShift" , RATBAG_BUTTON_TYPE_WHEEL_RATCHET_MODE_SHIFT),
BUTTON_PHYS_MAPPING(221, "LedToggle" , RATBAG_BUTTON_TYPE_UNKNOWN),
};
const struct ratbag_button_action *