| 740 | } |
| 741 | |
| 742 | std::string controller_button_to_string(SDL_GameControllerButton button) { |
| 743 | switch (button) { |
| 744 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_A: |
| 745 | return PF_GAMEPAD_A; |
| 746 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_B: |
| 747 | return PF_GAMEPAD_B; |
| 748 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_X: |
| 749 | return PF_GAMEPAD_X; |
| 750 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_Y: |
| 751 | return PF_GAMEPAD_Y; |
| 752 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_BACK: |
| 753 | return PF_XBOX_VIEW; |
| 754 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_GUIDE: |
| 755 | return PF_GAMEPAD_HOME; |
| 756 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_START: |
| 757 | return PF_XBOX_MENU; |
| 758 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_LEFTSTICK: |
| 759 | return PF_ANALOG_L_CLICK; |
| 760 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_RIGHTSTICK: |
| 761 | return PF_ANALOG_R_CLICK; |
| 762 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_LEFTSHOULDER: |
| 763 | return PF_XBOX_LEFT_SHOULDER; |
| 764 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_RIGHTSHOULDER: |
| 765 | return PF_XBOX_RIGHT_SHOULDER; |
| 766 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_UP: |
| 767 | return PF_DPAD_UP; |
| 768 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_DOWN: |
| 769 | return PF_DPAD_DOWN; |
| 770 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_LEFT: |
| 771 | return PF_DPAD_LEFT; |
| 772 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_DPAD_RIGHT: |
| 773 | return PF_DPAD_RIGHT; |
| 774 | // case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_MISC1: |
| 775 | // return ""; |
| 776 | // case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_PADDLE1: |
| 777 | // return ""; |
| 778 | // case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_PADDLE2: |
| 779 | // return ""; |
| 780 | // case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_PADDLE3: |
| 781 | // return ""; |
| 782 | // case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_PADDLE4: |
| 783 | // return ""; |
| 784 | case SDL_GameControllerButton::SDL_CONTROLLER_BUTTON_TOUCHPAD: |
| 785 | return PF_SONY_TOUCHPAD; |
| 786 | default: |
| 787 | return "Button " + std::to_string(button); |
| 788 | } |
| 789 | } |
| 790 | |
| 791 | std::unordered_map<SDL_Scancode, std::string> scancode_codepoints { |
| 792 | {SDL_SCANCODE_LEFT, PF_KEYBOARD_LEFT}, |