diff options
| author | Jordan Woyak <jordan.woyak@gmail.com> | 2022-05-19 22:33:15 -0500 |
|---|---|---|
| committer | Jordan Woyak <jordan.woyak@gmail.com> | 2022-06-26 22:42:16 -0500 |
| commit | 80d9e79cf1f56101f47e528ed390243e7fe790bf (patch) | |
| tree | eec64f775032cbd671e44d844cc33c2d378eccd7 /Source/Core/InputCommon/ControllerEmu | |
| parent | 643f82539c9bc43a8573fabee3a236bfeb67cd47 (diff) | |
ControllerEmu: Allow settings to be categorized as "advanced". Make "Virtual Notches" and "Gate Size" categorized as such.
Diffstat (limited to 'Source/Core/InputCommon/ControllerEmu')
3 files changed, 16 insertions, 4 deletions
diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp b/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp index e4d74aa524..539e02b449 100644 --- a/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp +++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp @@ -75,7 +75,8 @@ OctagonAnalogStick::OctagonAnalogStick(const char* name_, const char* ui_name_, // i18n: The percent symbol. _trans("%"), // i18n: Refers to plastic shell of game controller (stick gate) that limits stick movements. - _trans("Adjusts target radius of simulated stick gate.")}, + _trans("Adjusts target radius of simulated stick gate."), nullptr, + SettingVisibility::Advanced}, gate_radius * 100, 0.01, 100); } diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp b/Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp index 2f1eb25d5e..890c43a848 100644 --- a/Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp +++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp @@ -32,7 +32,8 @@ void ControlGroup::AddVirtualNotchSetting(SettingValue<double>* value, double ma AddSetting(value, {_trans("Virtual Notches"), // i18n: The degrees symbol. - _trans("°"), _trans("Snap the thumbstick position to the nearest octagonal axis.")}, + _trans("°"), _trans("Snap the thumbstick position to the nearest octagonal axis."), + nullptr, SettingVisibility::Advanced}, 0, 0, max_virtual_notch_deg); } diff --git a/Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h b/Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h index 467e55f039..34321d0ebc 100644 --- a/Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h +++ b/Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h @@ -20,13 +20,20 @@ enum class SettingType Bool, }; +enum class SettingVisibility +{ + Normal, + Advanced, +}; + struct NumericSettingDetails { NumericSettingDetails(const char* const _ini_name, const char* const _ui_suffix = nullptr, const char* const _ui_description = nullptr, - const char* const _ui_name = nullptr) + const char* const _ui_name = nullptr, + SettingVisibility _visibility = SettingVisibility::Normal) : ini_name(_ini_name), ui_suffix(_ui_suffix), ui_description(_ui_description), - ui_name(_ui_name ? _ui_name : _ini_name) + ui_name(_ui_name ? _ui_name : _ini_name), visibility(_visibility) { } @@ -41,6 +48,9 @@ struct NumericSettingDetails // The name used in the UI (if different from ini file). const char* const ui_name; + + // Advanced settings should be harder to change in the UI. They might confuse users. + const SettingVisibility visibility; }; class NumericSettingBase |
