move port X binds into retropad binds submenu and add appropriate help text and sublabels to discourage people from messing around in there unnecessarily

This commit is contained in:
hunterk 2023-06-29 15:14:08 -05:00 committed by LibretroAdmin
parent 7ac3dcd5fe
commit 7b20954e66
12 changed files with 77 additions and 17 deletions

View File

@ -1219,6 +1219,10 @@ MSG_HASH(
MENU_ENUM_LABEL_DEFERRED_FRAME_THROTTLE_SETTINGS_LIST,
"deferred_frame_throttle_settings_list"
)
MSG_HASH(
MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST,
"deferred_input_retropad_binds"
)
MSG_HASH(
MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST,
"deferred_input_hotkey_binds"
@ -1911,6 +1915,10 @@ MSG_HASH(
MENU_ENUM_LABEL_INPUT_DUTY_CYCLE,
"input_duty_cycle"
)
MSG_HASH(
MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS,
"input_retropad_binds"
)
MSG_HASH(
MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS,
"input_hotkey_binds"

View File

@ -52,6 +52,9 @@ int msg_hash_get_help_us_enum(enum msg_hash_enums msg, char *s, size_t len)
switch (msg)
{
case MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS:
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_HELP_INPUT_RETROPAD_BINDS), len);
break;
case MENU_ENUM_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS:
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_HELP_ACCOUNTS_RETRO_ACHIEVEMENTS), len);
break;

View File

@ -3168,7 +3168,7 @@ MSG_HASH(
)
MSG_HASH(
MENU_ENUM_SUBLABEL_INPUT_TURBO_FIRE_SETTINGS,
"Change turbo fire settings."
"Change turbo fire settings.\nNote: the turbo function requires mapping a turbo button to your input device in the corresponding 'Port X Controls' menu."
)
MSG_HASH(
MENU_ENUM_LABEL_VALUE_INPUT_HAPTIC_FEEDBACK_SETTINGS,
@ -3192,7 +3192,19 @@ MSG_HASH(
)
MSG_HASH(
MENU_ENUM_SUBLABEL_INPUT_HOTKEY_BINDS,
"Change hotkey settings."
"Change settings and assignments for hotkeys, such as toggling the menu during gameplay."
)
MSG_HASH(
MENU_ENUM_LABEL_VALUE_INPUT_RETROPAD_BINDS,
"RetroPad Binds"
)
MSG_HASH(
MENU_ENUM_SUBLABEL_INPUT_RETROPAD_BINDS,
"Change how the virtual retropad is mapped to a physical input device. If an input device is recognized and autoconfigured correctly, users probably do not need to use this menu.\nNote: for core-specific input changes, use the Quick Menu's 'Controls' submenu instead."
)
MSG_HASH(
MENU_ENUM_LABEL_HELP_INPUT_RETROPAD_BINDS,
"Libretro uses a virtual gamepad abstraction known as the 'RetroPad' to communicate from frontends (like RetroArch) to cores and vice versa. While there is no actual, physical RetroPad device, it can be helpful to think of it as looking like a modern controller with four face buttons in the usual diamond configuration--with Y on the left, B on the bottom, A on the right and X on top, a directional pad, four shoulder buttons--R1, L1, R2 and L2--two analog sticks that can be pressed to trigger additional digital actions--R3 and L3--and two additional buttons for 'start' and 'select'. If a physical input device is recognized and autoconfigured correctly, users probably do not need to use this menu at all, and for core-specific input changes, should use the Quick Menu's 'Controls' submenu instead."
)
MSG_HASH(
MENU_ENUM_LABEL_VALUE_INPUT_USER_BINDS,
@ -3200,14 +3212,14 @@ MSG_HASH(
)
MSG_HASH(
MENU_ENUM_SUBLABEL_INPUT_USER_BINDS,
"Change controls for this port."
"Change how the virtual retropad is mapped to your physical input device for this virtual port."
)
MSG_HASH(
MENU_ENUM_LABEL_VALUE_ANDROID_INPUT_DISCONNECT_WORKAROUND,
"Android disconnect workaround"
)
MSG_HASH(
MENU_ENUM_LABEL_ANDROID_INPUT_DISCONNECT_WORKAROUND,
MENU_ENUM_SUBLABEL_ANDROID_INPUT_DISCONNECT_WORKAROUND,
"Workaround for controllers disconnecting and reconnecting. Impedes 2 players with the identical controllers."
)
MSG_HASH(

View File

@ -234,6 +234,7 @@ GENERIC_DEFERRED_PUSH(deferred_push_recording_settings_list, DISPLAYLIST_
GENERIC_DEFERRED_PUSH(deferred_push_playlist_settings_list, DISPLAYLIST_PLAYLIST_SETTINGS_LIST)
GENERIC_DEFERRED_PUSH(deferred_push_playlist_manager_list, DISPLAYLIST_PLAYLIST_MANAGER_LIST)
GENERIC_DEFERRED_PUSH(deferred_push_playlist_manager_settings, DISPLAYLIST_PLAYLIST_MANAGER_SETTINGS)
GENERIC_DEFERRED_PUSH(deferred_push_input_retropad_binds_list, DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST)
GENERIC_DEFERRED_PUSH(deferred_push_input_hotkey_binds_list, DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST)
GENERIC_DEFERRED_PUSH(deferred_push_accounts_cheevos_list, DISPLAYLIST_ACCOUNTS_CHEEVOS_LIST)
GENERIC_DEFERRED_PUSH(deferred_push_accounts_twitch_list, DISPLAYLIST_ACCOUNTS_TWITCH_LIST)
@ -805,6 +806,7 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
{MENU_ENUM_LABEL_INFORMATION, deferred_push_information},
{MENU_ENUM_LABEL_SHADER_OPTIONS, deferred_push_shader_options},
{MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST, deferred_user_binds_list},
{MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST, deferred_push_input_retropad_binds_list},
{MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST, deferred_push_input_hotkey_binds_list},
{MENU_ENUM_LABEL_DEFERRED_QUICK_MENU_OVERRIDE_OPTIONS, deferred_push_quick_menu_override_options},
{MENU_ENUM_LABEL_DEFERRED_ACCOUNTS_YOUTUBE_LIST, deferred_push_accounts_youtube_list},
@ -949,6 +951,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
case MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_recording_settings_list);
break;
case MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_retropad_binds_list);
break;
case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_hotkey_binds_list);
break;

View File

@ -467,6 +467,8 @@ static enum msg_hash_enums action_ok_dl_to_enum(unsigned lbl)
return MENU_ENUM_LABEL_DEFERRED_AUDIO_SYNCHRONIZATION_SETTINGS_LIST;
case ACTION_OK_DL_AUDIO_MIXER_SETTINGS_LIST:
return MENU_ENUM_LABEL_DEFERRED_AUDIO_MIXER_SETTINGS_LIST;
case ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST:
return MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST;
case ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST:
return MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST;
case ACTION_OK_DL_RECORDING_SETTINGS_LIST:
@ -1704,6 +1706,7 @@ int generic_action_ok_displaylist_push(const char *path,
case ACTION_OK_DL_MICROPHONE_SETTINGS_LIST:
#endif
case ACTION_OK_DL_AUDIO_MIXER_SETTINGS_LIST:
case ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST:
case ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST:
case ACTION_OK_DL_RECORDING_SETTINGS_LIST:
case ACTION_OK_DL_PLAYLIST_SETTINGS_LIST:
@ -5983,6 +5986,7 @@ STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_latency_settings_list, ACTION_OK_DL
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_recording_settings_list, ACTION_OK_DL_RECORDING_SETTINGS_LIST)
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_playlist_settings_list, ACTION_OK_DL_PLAYLIST_SETTINGS_LIST)
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_playlist_manager_list, ACTION_OK_DL_PLAYLIST_MANAGER_LIST)
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_input_retropad_binds_list, ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST)
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_input_hotkey_binds_list, ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST)
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_user_binds_list, ACTION_OK_DL_USER_BINDS_LIST)
STATIC_DEFAULT_ACTION_OK_FUNC(action_ok_push_accounts_cheevos_list, ACTION_OK_DL_ACCOUNTS_CHEEVOS_LIST)
@ -8413,6 +8417,7 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs,
{MENU_ENUM_LABEL_PLAYLIST_MANAGER_CLEAN_PLAYLIST, action_ok_playlist_clean},
{MENU_ENUM_LABEL_PLAYLIST_MANAGER_REFRESH_PLAYLIST, action_ok_playlist_refresh},
{MENU_ENUM_LABEL_RECORDING_SETTINGS, action_ok_push_recording_settings_list},
{MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS, action_ok_push_input_retropad_binds_list},
{MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS, action_ok_push_input_hotkey_binds_list},
{MENU_ENUM_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS, action_ok_push_accounts_cheevos_list},
{MENU_ENUM_LABEL_ACCOUNTS_YOUTUBE, action_ok_push_accounts_youtube_list},

View File

@ -390,6 +390,7 @@ DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_memory_update_interval, MENU_
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_statistics_show, MENU_ENUM_SUBLABEL_STATISTICS_SHOW)
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_netplay_ping_show, MENU_ENUM_SUBLABEL_NETPLAY_PING_SHOW)
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_netplay_settings, MENU_ENUM_SUBLABEL_NETPLAY)
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_input_retropad_settings, MENU_ENUM_SUBLABEL_INPUT_RETROPAD_BINDS)
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_user_bind_settings, MENU_ENUM_SUBLABEL_INPUT_USER_BINDS)
DEFAULT_SUBLABEL_MACRO(action_bind_sublabel_input_hotkey_settings, MENU_ENUM_SUBLABEL_INPUT_HOTKEY_BINDS)
@ -4618,6 +4619,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_ADD_CONTENT_LIST:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_add_content_list);
break;
case MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_retropad_settings);
break;
case MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_hotkey_settings);
break;

View File

@ -604,6 +604,7 @@ DEFAULT_TITLE_MACRO(action_get_core_counters_list, MENU_ENUM_LABEL_
DEFAULT_TITLE_MACRO(action_get_recording_settings_list, MENU_ENUM_LABEL_VALUE_RECORDING_SETTINGS)
DEFAULT_TITLE_MACRO(action_get_playlist_settings_list, MENU_ENUM_LABEL_VALUE_PLAYLIST_SETTINGS)
DEFAULT_TITLE_MACRO(action_get_playlist_manager_list, MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LIST)
DEFAULT_TITLE_MACRO(action_get_input_retropad_binds_settings_list,MENU_ENUM_LABEL_VALUE_INPUT_RETROPAD_BINDS)
DEFAULT_TITLE_MACRO(action_get_input_hotkey_binds_settings_list,MENU_ENUM_LABEL_VALUE_INPUT_HOTKEY_BINDS)
DEFAULT_TITLE_MACRO(action_get_driver_settings_list, MENU_ENUM_LABEL_VALUE_DRIVER_SETTINGS)
DEFAULT_TITLE_MACRO(action_get_core_settings_list, MENU_ENUM_LABEL_VALUE_CORE_SETTINGS)
@ -1227,6 +1228,8 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
action_get_online_pl_thumbnails_updater_list},
{MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST,
action_get_title_input_binds_list},
{MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST,
action_get_input_retropad_binds_settings_list},
{MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST,
action_get_input_hotkey_binds_settings_list},
{MENU_ENUM_LABEL_DEFERRED_VIDEO_SETTINGS_LIST,
@ -1574,6 +1577,9 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_title_input_binds_list);
break;
case MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_input_retropad_binds_settings_list);
break;
case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_input_hotkey_binds_settings_list);
break;

View File

@ -130,6 +130,7 @@ enum
#ifdef HAVE_MIST
ACTION_OK_DL_CORE_INFORMATION_STEAM_LIST,
#endif
ACTION_OK_DL_INPUT_RETROPAD_BINDS_LIST,
ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST,
ACTION_OK_DL_RECORDING_SETTINGS_LIST,
ACTION_OK_DL_PLAYLIST_SETTINGS_LIST,

View File

@ -6761,6 +6761,19 @@ unsigned menu_displaylist_build_list(
count++;
}
break;
case DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST:
{
unsigned user;
unsigned max_users = settings->uints.input_max_users;
for (user = 0; user < max_users; user++)
{
if (MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(list,
(enum msg_hash_enums)(MENU_ENUM_LABEL_INPUT_USER_1_BINDS + user),
PARSE_ACTION, false) != -1)
count++;
}
}
break;
case DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST:
{
/* "Hotkey Enable" */
@ -7605,6 +7618,7 @@ unsigned menu_displaylist_build_list(
{MENU_ENUM_LABEL_INPUT_MENU_SETTINGS, PARSE_ACTION, true },
{MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS, PARSE_ACTION, true },
{MENU_ENUM_LABEL_INPUT_TURBO_FIRE_SETTINGS, PARSE_ACTION, true },
{MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS, PARSE_ACTION, true },
#ifdef ANDROID
{MENU_ENUM_LABEL_ANDROID_INPUT_DISCONNECT_WORKAROUND, PARSE_ONLY_BOOL, true },
#endif
@ -7649,19 +7663,6 @@ unsigned menu_displaylist_build_list(
}
}
#endif
{
unsigned user;
unsigned max_users = settings->uints.input_max_users;
for (user = 0; user < max_users; user++)
{
if (MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(list,
(enum msg_hash_enums)(MENU_ENUM_LABEL_INPUT_USER_1_BINDS + user),
PARSE_ACTION, false) != -1)
count++;
}
}
break;
case DISPLAYLIST_ACCESSIBILITY_SETTINGS_LIST:
{
@ -13664,6 +13665,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
case DISPLAYLIST_NETPLAY_ROOM_LIST:
case DISPLAYLIST_SHADER_PRESET_SAVE:
case DISPLAYLIST_SHADER_PRESET_REMOVE:
case DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST:
case DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST:
case DISPLAYLIST_INPUT_TURBO_FIRE_SETTINGS_LIST:
case DISPLAYLIST_INPUT_HAPTIC_FEEDBACK_SETTINGS_LIST:

View File

@ -199,6 +199,7 @@ enum menu_displaylist_ctl_state
DISPLAYLIST_INPUT_HAPTIC_FEEDBACK_SETTINGS_LIST,
DISPLAYLIST_INPUT_MENU_SETTINGS_LIST,
DISPLAYLIST_LATENCY_SETTINGS_LIST,
DISPLAYLIST_INPUT_RETROPAD_BINDS_LIST,
DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST,
#if defined(HAVE_OVERLAY)
DISPLAYLIST_ONSCREEN_OVERLAY_SETTINGS_LIST,

View File

@ -288,6 +288,7 @@ enum settings_list_type
SETTINGS_LIST_INPUT,
SETTINGS_LIST_INPUT_TURBO_FIRE,
SETTINGS_LIST_INPUT_HOTKEY,
SETTINGS_LIST_INPUT_RETROPAD_BINDS,
SETTINGS_LIST_RECORDING,
SETTINGS_LIST_FRAME_THROTTLING,
SETTINGS_LIST_FRAME_TIME_COUNTER,
@ -14811,6 +14812,14 @@ static bool setting_append_list(
&group_info,
&subgroup_info,
parent_group);
CONFIG_ACTION(
list, list_info,
MENU_ENUM_LABEL_INPUT_RETROPAD_BINDS,
MENU_ENUM_LABEL_VALUE_INPUT_RETROPAD_BINDS,
&group_info,
&subgroup_info,
parent_group);
CONFIG_ACTION(
list, list_info,

View File

@ -631,6 +631,7 @@ enum msg_hash_enums
MENU_ENUM_LABEL_VALUE_REMAP_FILE,
MENU_ENUM_LABEL_VALUE_CHEAT_FILE,
MENU_ENUM_LABEL_VALUE_CHEAT_FILE_APPEND,
MENU_ENUM_LABEL_HELP_INPUT_RETROPAD_BINDS,
MENU_ENUM_LABEL_INPUT_HOTKEY_BIND_BEGIN,
MENU_ENUM_LABEL_INPUT_HOTKEY_BIND_END = MENU_ENUM_LABEL_INPUT_HOTKEY_BIND_BEGIN + RARCH_BIND_LIST_END,
@ -857,6 +858,7 @@ enum msg_hash_enums
MENU_ENUM_LABEL_INPUT_SETTINGS_BEGIN,
MENU_LABEL(INPUT_RETROPAD_BINDS),
MENU_LABEL(INPUT_HOTKEY_BINDS),
MENU_LABEL(INPUT_HOTKEY_BLOCK_DELAY),
MENU_LABEL(INPUT_SPLIT_JOYCON),
@ -951,6 +953,7 @@ enum msg_hash_enums
MENU_ENUM_LABEL_INPUT_USER_14_BINDS,
MENU_ENUM_LABEL_INPUT_USER_15_BINDS,
MENU_ENUM_LABEL_INPUT_USER_16_BINDS,
MENU_ENUM_LABEL_INPUT_RETROPAD_SETTINGS,
MENU_ENUM_LABEL_INPUT_HOTKEY_SETTINGS,
MENU_LABEL(INPUT_REMAPPING_DIRECTORY),
@ -1859,6 +1862,7 @@ enum msg_hash_enums
MENU_ENUM_LABEL_DEFERRED_CORE_SYSTEM_FILES_LIST,
MENU_ENUM_LABEL_DEFERRED_LAKKA_LIST,
MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST,
MENU_ENUM_LABEL_DEFERRED_INPUT_RETROPAD_BINDS_LIST,
MENU_ENUM_LABEL_DEFERRED_DATABASE_MANAGER_LIST,
MENU_ENUM_LABEL_DEFERRED_VIDEO_FILTER,
MENU_ENUM_LABEL_DEFERRED_CORE_LIST_SET,