summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h')
-rw-r--r--Source/Core/InputCommon/ControllerEmu/Setting/NumericSetting.h14
1 files changed, 12 insertions, 2 deletions
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