summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerEmu
diff options
context:
space:
mode:
authorJordan Woyak <jordan.woyak@gmail.com>2022-05-19 22:33:15 -0500
committerJordan Woyak <jordan.woyak@gmail.com>2022-06-26 22:42:16 -0500
commit80d9e79cf1f56101f47e528ed390243e7fe790bf (patch)
treeeec64f775032cbd671e44d844cc33c2d378eccd7 /Source/Core/InputCommon/ControllerEmu
parent643f82539c9bc43a8573fabee3a236bfeb67cd47 (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')
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp3
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp3
-rw-r--r--Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h14
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