@@ -8,11 +8,16 @@ ControllerDefaultMappings::ControllerDefaultMappings(
8
8
defaultKeyboardKeyToAxisDirectionMappings,
9
9
std::unordered_map<CONTROLLERBUTTONS_T, std::unordered_set<SDL_GameControllerButton>>
10
10
defaultSDLButtonToButtonMappings,
11
+ std::unordered_map<StickIndex, std::vector<std::pair<Direction, SDL_GameControllerButton>>>
12
+ defaultSDLButtonToAxisDirectionMappings,
11
13
std::unordered_map<CONTROLLERBUTTONS_T, std::vector<std::pair<SDL_GameControllerAxis, int32_t >>>
12
14
defaultSDLAxisDirectionToButtonMappings) {
13
15
SetDefaultKeyboardKeyToButtonMappings (defaultKeyboardKeyToButtonMappings);
14
16
SetDefaultKeyboardKeyToAxisDirectionMappings (defaultKeyboardKeyToAxisDirectionMappings);
17
+
15
18
SetDefaultSDLButtonToButtonMappings (defaultSDLButtonToButtonMappings);
19
+ SetDefaultSDLButtonToAxisDirectionMappings (defaultSDLButtonToAxisDirectionMappings);
20
+
16
21
SetDefaultSDLAxisDirectionToButtonMappings (defaultSDLAxisDirectionToButtonMappings);
17
22
}
18
23
@@ -21,6 +26,7 @@ ControllerDefaultMappings::ControllerDefaultMappings()
21
26
std::unordered_map<CONTROLLERBUTTONS_T, std::unordered_set<KbScancode>>(),
22
27
std::unordered_map<StickIndex, std::vector<std::pair<Direction, KbScancode>>>(),
23
28
std::unordered_map<CONTROLLERBUTTONS_T, std::unordered_set<SDL_GameControllerButton>>(),
29
+ std::unordered_map<StickIndex, std::vector<std::pair<Direction, SDL_GameControllerButton>>>(),
24
30
std::unordered_map<CONTROLLERBUTTONS_T, std::vector<std::pair<SDL_GameControllerAxis, int32_t >>>()) {
25
31
}
26
32
@@ -97,6 +103,20 @@ void ControllerDefaultMappings::SetDefaultSDLButtonToButtonMappings(
97
103
mDefaultSDLButtonToButtonMappings [BTN_DRIGHT] = { SDL_CONTROLLER_BUTTON_DPAD_RIGHT };
98
104
}
99
105
106
+ std::unordered_map<StickIndex, std::vector<std::pair<Direction, SDL_GameControllerButton>>>
107
+ ControllerDefaultMappings::GetDefaultSDLButtonToAxisDirectionMappings () {
108
+ return mDefaultSDLButtonToAxisDirectionMappings ;
109
+ }
110
+
111
+ void ControllerDefaultMappings::SetDefaultSDLButtonToAxisDirectionMappings (
112
+ std::unordered_map<StickIndex, std::vector<std::pair<Direction, SDL_GameControllerButton>>>
113
+ defaultSDLButtonToAxisDirectionMappings) {
114
+ if (!defaultSDLButtonToAxisDirectionMappings.empty ()) {
115
+ mDefaultSDLButtonToAxisDirectionMappings = defaultSDLButtonToAxisDirectionMappings;
116
+ return ;
117
+ }
118
+ }
119
+
100
120
std::unordered_map<CONTROLLERBUTTONS_T, std::vector<std::pair<SDL_GameControllerAxis, int32_t >>>
101
121
ControllerDefaultMappings::GetDefaultSDLAxisDirectionToButtonMappings () {
102
122
return mDefaultSDLAxisDirectionToButtonMappings ;
0 commit comments