| 926 | // Controls Menu |
| 927 | |
| 928 | class ControlsMenu final : public MenuBase |
| 929 | { |
| 930 | public: |
| 931 | ControlsMenu( MenuBase* parent, const Sound::SoundEnginePtr& sound_engine, HostCommands& host_commands ); |
| 932 | ~ControlsMenu() override; |
| 933 | |
| 934 | // Hack for escape pressing in key set mode. |
| 935 | virtual MenuBase* GetParent() override; |
| 936 | |
| 937 | virtual void Draw( IMenuDrawer& menu_drawer, ITextDrawer& text_draw ) override; |
| 938 | virtual MenuBase* ProcessEvent( const SystemEvent& event ) override; |
| 939 | |
| 940 | private: |
| 941 | struct KeySettings |
| 942 | { |
| 943 | const char* name; |
| 944 | const char* setting_name; |
| 945 | const KeyCode default_key_code; |
| 946 | }; |
| 947 | |
| 948 | static const KeySettings c_key_settings[]; |
| 949 | static const unsigned int c_key_setting_count; |
| 950 | |
| 951 | private: |
| 952 | Settings& settings_; |
| 953 | int current_row_= 0; |
| 954 | bool in_set_mode_= false; |
| 955 | }; |
| 956 | |
| 957 | const ControlsMenu::KeySettings ControlsMenu::c_key_settings[]= |
| 958 | { |
nothing calls this directly
no outgoing calls
no test coverage detected