From 5372f3fe84922274bbad07f755d0bc7e7162d6fa Mon Sep 17 00:00:00 2001 From: LibretroAdmin Date: Tue, 11 Feb 2025 21:01:04 +0100 Subject: [PATCH] Change signature of get_representation callbacks --- cheevos/cheevos_menu.c | 44 +- cheevos/cheevos_menu.h | 4 +- menu/cbs/menu_cbs_get_value.c | 729 +++-- menu/menu_entries.h | 2 +- menu/menu_setting.c | 5378 +++++++++++++++------------------ setting_list.h | 2 +- 6 files changed, 2883 insertions(+), 3276 deletions(-) diff --git a/cheevos/cheevos_menu.c b/cheevos/cheevos_menu.c index 505518faef..d7ec053c2b 100644 --- a/cheevos/cheevos_menu.c +++ b/cheevos/cheevos_menu.c @@ -45,55 +45,49 @@ #if HAVE_MENU -bool rcheevos_menu_get_state(unsigned menu_offset, char* buffer, size_t buffer_size) +size_t rcheevos_menu_get_state(unsigned menu_offset, char *s, size_t len) { const rcheevos_locals_t* rcheevos_locals = get_rcheevos_locals(); if (menu_offset < rcheevos_locals->menuitem_count) { - const rcheevos_menuitem_t* menuitem = &rcheevos_locals->menuitems[menu_offset]; + const rcheevos_menuitem_t* menuitem = &rcheevos_locals->menuitems[menu_offset]; const rc_client_achievement_t* cheevo = menuitem->achievement; if (cheevo) { + size_t _len; if (cheevo->state != RC_CLIENT_ACHIEVEMENT_STATE_ACTIVE) - strlcpy(buffer, msg_hash_to_str(menuitem->state_label_idx), buffer_size); + _len = strlcpy(s, msg_hash_to_str(menuitem->state_label_idx), len); else { - const char* missable = cheevo->type == RC_CLIENT_ACHIEVEMENT_TYPE_MISSABLE ? "[m] " : ""; - size_t _len = strlcpy(buffer, missable, buffer_size); - _len += strlcpy(buffer + _len, msg_hash_to_str(menuitem->state_label_idx), buffer_size - _len); + const char* missable = (cheevo->type == RC_CLIENT_ACHIEVEMENT_TYPE_MISSABLE) ? "[m] " : ""; + _len = strlcpy(s, missable, len); + _len += strlcpy(s + _len, msg_hash_to_str(menuitem->state_label_idx), len - _len); if (cheevo->measured_progress[0]) { - _len += strlcpy(buffer + _len, " - ", buffer_size - _len); - strlcpy(buffer + _len, cheevo->measured_progress, buffer_size - _len); + _len += strlcpy(s + _len, " - ", len - _len); + _len += strlcpy(s + _len, cheevo->measured_progress, len - _len); } } - return true; + return _len; } } - - if (buffer) - buffer[0] = '\0'; - - return false; + if (s) + s[0] = '\0'; + return 0; } -bool rcheevos_menu_get_sublabel(unsigned menu_offset, char* buffer, size_t buffer_size) +size_t rcheevos_menu_get_sublabel(unsigned menu_offset, char *s, size_t len) { const rcheevos_locals_t* rcheevos_locals = get_rcheevos_locals(); - if (menu_offset < rcheevos_locals->menuitem_count && buffer) + if (menu_offset < rcheevos_locals->menuitem_count && s) { const rcheevos_menuitem_t* menuitem = &rcheevos_locals->menuitems[menu_offset]; if (menuitem->achievement) - { - strlcpy(buffer, menuitem->achievement->description, buffer_size); - return true; - } + return strlcpy(s, menuitem->achievement->description, len); } - - if (buffer) - buffer[0] = '\0'; - - return false; + if (s) + s[0] = '\0'; + return 0; } void rcheevos_menu_reset_badges(void) diff --git a/cheevos/cheevos_menu.h b/cheevos/cheevos_menu.h index 352fb3c290..64725ebda7 100644 --- a/cheevos/cheevos_menu.h +++ b/cheevos/cheevos_menu.h @@ -31,8 +31,8 @@ RETRO_BEGIN_DECLS void rcheevos_menu_populate(void* data, bool cheevos_enable, bool cheevos_hardcore_mode_enable); void rcheevos_menu_populate_hardcore_pause_submenu(void* data, bool cheevos_hardcore_mode_enable); -bool rcheevos_menu_get_state(unsigned menu_offset, char* buffer, size_t buffer_size); -bool rcheevos_menu_get_sublabel(unsigned menu_offset, char* buffer, size_t buffer_size); +size_t rcheevos_menu_get_state(unsigned menu_offset, char *s, size_t len); +size_t rcheevos_menu_get_sublabel(unsigned menu_offset, char *s, size_t len); uintptr_t rcheevos_menu_get_badge_texture(unsigned menu_offset); void rcheevos_menu_reset_badges(void); diff --git a/menu/cbs/menu_cbs_get_value.c b/menu/cbs/menu_cbs_get_value.c index 89cce3192b..e08c17118f 100644 --- a/menu/cbs/menu_cbs_get_value.c +++ b/menu/cbs/menu_cbs_get_value.c @@ -69,7 +69,7 @@ extern struct key_desc key_descriptors[RARCH_MAX_KEYS]; #ifdef HAVE_AUDIOMIXER -static void menu_action_setting_audio_mixer_stream_name( +static size_t menu_action_setting_audio_mixer_stream_name( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -82,11 +82,11 @@ static void menu_action_setting_audio_mixer_stream_name( if (!string_is_empty(path)) strlcpy(s2, path, len2); if (offset >= AUDIO_MIXER_MAX_SYSTEM_STREAMS) - return; - strlcpy(s, audio_driver_mixer_get_stream_name(offset), len); + return 0; + return strlcpy(s, audio_driver_mixer_get_stream_name(offset), len); } -static void menu_action_setting_audio_mixer_stream_volume( +static size_t menu_action_setting_audio_mixer_stream_volume( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -100,14 +100,15 @@ static void menu_action_setting_audio_mixer_stream_volume( if (!string_is_empty(path)) strlcpy(s2, path, len2); if (offset >= AUDIO_MIXER_MAX_SYSTEM_STREAMS) - return; - _len = snprintf(s, len, "%.2f", audio_driver_mixer_get_stream_volume(offset)); - strlcpy(s + _len, " dB", len - _len); + return 0; + _len = snprintf(s, len, "%.2f", audio_driver_mixer_get_stream_volume(offset)); + _len += strlcpy(s + _len, " dB", len - _len); + return _len; } #endif #ifdef HAVE_CHEATS -static void menu_action_setting_disp_set_label_cheat_num_passes( +static size_t menu_action_setting_disp_set_label_cheat_num_passes( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -118,12 +119,12 @@ static void menu_action_setting_disp_set_label_cheat_num_passes( *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); - snprintf(s, len, "%u", cheat_manager_get_buf_size()); + return snprintf(s, len, "%u", cheat_manager_get_buf_size()); } #endif #ifdef HAVE_CHEEVOS -static void menu_action_setting_disp_set_label_cheevos_entry( +static size_t menu_action_setting_disp_set_label_cheevos_entry( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -134,11 +135,11 @@ static void menu_action_setting_disp_set_label_cheevos_entry( *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); - rcheevos_menu_get_state(type - MENU_SETTINGS_CHEEVOS_START, s, len); + return rcheevos_menu_get_state(type - MENU_SETTINGS_CHEEVOS_START, s, len); } #endif -static void menu_action_setting_disp_set_label_remap_file_info( +static size_t menu_action_setting_disp_set_label_remap_file_info( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -152,12 +153,11 @@ static void menu_action_setting_disp_set_label_remap_file_info( if (!string_is_empty(path)) strlcpy(s2, path, len2); if (!string_is_empty(remap_path)) - strlcpy(s, path_basename_nocompression(remap_path), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + return strlcpy(s, path_basename_nocompression(remap_path), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); } -static void menu_action_setting_disp_set_label_override_file_info( +static size_t menu_action_setting_disp_set_label_override_file_info( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -170,12 +170,11 @@ static void menu_action_setting_disp_set_label_override_file_info( if (!string_is_empty(path)) strlcpy(s2, path, len2); if (!string_is_empty(override_path)) - strlcpy(s, path_basename_nocompression(override_path), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + return strlcpy(s, path_basename_nocompression(override_path), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); } -static void menu_action_setting_disp_set_label_configurations( +static size_t menu_action_setting_disp_set_label_configurations( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -187,14 +186,13 @@ static void menu_action_setting_disp_set_label_configurations( if (!string_is_empty(path)) strlcpy(s2, path, len2); if (!path_is_empty(RARCH_PATH_CONFIG)) - fill_pathname_base(s, path_get(RARCH_PATH_CONFIG), + return fill_pathname_base(s, path_get(RARCH_PATH_CONFIG), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DIRECTORY_DEFAULT), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DIRECTORY_DEFAULT), len); } #if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) -static void menu_action_setting_disp_set_label_shader_filter_pass( +static size_t menu_action_setting_disp_set_label_shader_filter_pass( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -203,7 +201,8 @@ static void menu_action_setting_disp_set_label_shader_filter_pass( char *s2, size_t len2) { struct video_shader *shader = menu_shader_get(); - struct video_shader_pass *shader_pass = shader ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_FILTER_0] : NULL; + struct video_shader_pass *shader_pass = shader + ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_FILTER_0] : NULL; *s = '\0'; *w = 19; if (!string_is_empty(path)) @@ -213,22 +212,20 @@ static void menu_action_setting_disp_set_label_shader_filter_pass( switch (shader_pass->filter) { case 0: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); - break; case 1: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LINEAR), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LINEAR), len); - break; case 2: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NEAREST), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NEAREST), len); - break; } } + return 0; } -static void menu_action_setting_disp_set_label_shader_watch_for_changes( +static size_t menu_action_setting_disp_set_label_shader_watch_for_changes( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -238,17 +235,15 @@ static void menu_action_setting_disp_set_label_shader_watch_for_changes( { menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; - bool val = *cbs->setting->value.target.boolean; *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); - if (val) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TRUE), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_FALSE), len); + if (*cbs->setting->value.target.boolean) + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TRUE), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_FALSE), len); } -static void menu_action_setting_disp_set_label_shader_num_passes( +static size_t menu_action_setting_disp_set_label_shader_num_passes( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -261,10 +256,10 @@ static void menu_action_setting_disp_set_label_shader_num_passes( *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); - snprintf(s, len, "%u", pass_count); + return snprintf(s, len, "%u", pass_count); } -static void menu_action_setting_disp_set_label_shader_pass( +static size_t menu_action_setting_disp_set_label_shader_pass( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -273,17 +268,17 @@ static void menu_action_setting_disp_set_label_shader_pass( char *s2, size_t len2) { struct video_shader *shader = menu_shader_get(); - struct video_shader_pass *shader_pass = shader ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_0] : NULL; + struct video_shader_pass *shader_pass = shader + ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_0] : NULL; *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); if (shader_pass && !string_is_empty(shader_pass->source.path)) - fill_pathname_base(s, shader_pass->source.path, len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + return fill_pathname_base(s, shader_pass->source.path, len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); } -static void menu_action_setting_disp_set_label_shader_default_filter( +static size_t menu_action_setting_disp_set_label_shader_default_filter( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -293,15 +288,13 @@ static void menu_action_setting_disp_set_label_shader_default_filter( { menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; - bool val = *cbs->setting->value.target.boolean; *w = 19; - if (val) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LINEAR), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NEAREST), len); + if (*cbs->setting->value.target.boolean) + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LINEAR), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NEAREST), len); } -static void menu_action_setting_disp_set_label_shader_parameter_internal( +static size_t menu_action_setting_disp_set_label_shader_parameter_internal( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -317,13 +310,13 @@ static void menu_action_setting_disp_set_label_shader_parameter_internal( strlcpy(s2, path, len2); video_shader_driver_get_current_shader(&shader_info); if (shader_info.data && (param = &shader_info.data->parameters[type - offset])) - snprintf(s, len, "%.2f [%.2f %.2f]", + return snprintf(s, len, "%.2f [%.2f %.2f]", param->current, param->minimum, param->maximum); - else - *s = '\0'; + *s = '\0'; + return 0; } -static void menu_action_setting_disp_set_label_shader_parameter( +static size_t menu_action_setting_disp_set_label_shader_parameter( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -331,13 +324,13 @@ static void menu_action_setting_disp_set_label_shader_parameter( const char *path, char *s2, size_t len2) { - menu_action_setting_disp_set_label_shader_parameter_internal( + return menu_action_setting_disp_set_label_shader_parameter_internal( list, w, type, i, label, s, len, path, s2, len2, MENU_SETTINGS_SHADER_PARAMETER_0); } -static void menu_action_setting_disp_set_label_shader_preset_parameter( +static size_t menu_action_setting_disp_set_label_shader_preset_parameter( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -345,13 +338,13 @@ static void menu_action_setting_disp_set_label_shader_preset_parameter( const char *path, char *s2, size_t len2) { - menu_action_setting_disp_set_label_shader_parameter_internal( + return menu_action_setting_disp_set_label_shader_parameter_internal( list, w, type, i, label, s, len, path, s2, len2, MENU_SETTINGS_SHADER_PRESET_PARAMETER_0); } -static void menu_action_setting_disp_set_label_shader_scale_pass( +static size_t menu_action_setting_disp_set_label_shader_scale_pass( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -367,47 +360,44 @@ static void menu_action_setting_disp_set_label_shader_scale_pass( if (!string_is_empty(path)) strlcpy(s2, path, len2); if (!shader_pass) - return; + return 0; if (!(scale_value = shader_pass->fbo.scale_x)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); - else - snprintf(s, len, "%ux", scale_value); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); + return snprintf(s, len, "%ux", scale_value); } #endif #ifdef HAVE_NETWORKING -static void menu_action_setting_disp_set_label_netplay_mitm_server( +static size_t menu_action_setting_disp_set_label_netplay_mitm_server( file_list_t *list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, char *s2, size_t len2) { size_t j; - const char *netplay_mitm_server; menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*)list->list[i].actiondata; *w = 19; *s = '\0'; if (!string_is_empty(path)) strlcpy(s2, path, len2); - if (!cbs || !cbs->setting) - return; - netplay_mitm_server = cbs->setting->value.target.string; - if (string_is_empty(netplay_mitm_server)) - return; - for (j = 0; j < ARRAY_SIZE(netplay_mitm_server_list); j++) + if (cbs && cbs->setting) { - const mitm_server_t *server = &netplay_mitm_server_list[j]; - - if (string_is_equal(server->name, netplay_mitm_server)) + const char *netplay_mitm_server = cbs->setting->value.target.string; + if (!string_is_empty(netplay_mitm_server)) { - strlcpy(s, msg_hash_to_str(server->description), len); - break; + for (j = 0; j < ARRAY_SIZE(netplay_mitm_server_list); j++) + { + const mitm_server_t *server = &netplay_mitm_server_list[j]; + if (string_is_equal(server->name, netplay_mitm_server)) + return strlcpy(s, msg_hash_to_str(server->description), len); + } } } + return 0; } #endif -static void menu_action_setting_disp_set_label_menu_file_core( +static size_t menu_action_setting_disp_set_label_menu_file_core( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -421,10 +411,11 @@ static void menu_action_setting_disp_set_label_menu_file_core( *w = 0; if (alt) strlcpy(s2, alt, len2); + return 0; } #ifdef HAVE_NETWORKING -static void menu_action_setting_disp_set_label_core_updater_entry( +static size_t menu_action_setting_disp_set_label_core_updater_entry( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -435,8 +426,7 @@ static void menu_action_setting_disp_set_label_core_updater_entry( core_updater_list_t *core_list = core_updater_list_get_cached(); const core_updater_list_entry_t *entry = NULL; const char *alt = list->list[i].alt - ? list->list[i].alt - : list->list[i].path; + ? list->list[i].alt : list->list[i].path; *s = '\0'; *w = 0; @@ -444,9 +434,9 @@ static void menu_action_setting_disp_set_label_core_updater_entry( strlcpy(s2, alt, len2); /* Search for specified core */ - if (core_list && - core_updater_list_get_filename(core_list, path, &entry) && - !string_is_empty(entry->local_core_path)) + if ( core_list + && core_updater_list_get_filename(core_list, path, &entry) + && !string_is_empty(entry->local_core_path)) { core_info_t *core_info = NULL; @@ -459,27 +449,18 @@ static void menu_action_setting_disp_set_label_core_updater_entry( /* Highlight locked cores */ if (core_info->is_locked) { - s[0] = '['; - s[1] = '#'; - s[2] = '!'; - s[3] = ']'; - s[4] = '\0'; *w = (unsigned)STRLEN_CONST("[#!]"); + return strlcpy(s, "[#!]", len); } - else - { - s[0] = '['; - s[1] = '#'; - s[2] = ']'; - s[3] = '\0'; - *w = (unsigned)STRLEN_CONST("[#]"); - } + *w = (unsigned)STRLEN_CONST("[#]"); + return strlcpy(s, "[#]", len); } } + return 0; } #endif -static void menu_action_setting_disp_set_label_core_manager_entry( +static size_t menu_action_setting_disp_set_label_core_manager_entry( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -502,21 +483,16 @@ static void menu_action_setting_disp_set_label_core_manager_entry( if ( core_info_find(path, &core_info) && core_info->is_locked) { - s[0] = '['; - s[1] = '!'; - s[2] = ']'; - s[3] = '\0'; *w = (unsigned)STRLEN_CONST("[!]"); + return strlcpy(s, "[!]", len); } - else - { - *s = '\0'; - *w = 0; - } + *s = '\0'; + *w = 0; + return 0; } #ifdef HAVE_MIST -static void menu_action_setting_disp_set_label_core_manager_steam_entry( +static size_t menu_action_setting_disp_set_label_core_manager_steam_entry( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -524,43 +500,42 @@ static void menu_action_setting_disp_set_label_core_manager_steam_entry( const char *path, char *s2, size_t len2) { - MistResult result; steam_core_dlc_list_t *core_dlc_list = NULL; - steam_core_dlc_t *core_dlc = NULL; - bool dlc_installed = false; *s = '\0'; *w = 0; - if (MIST_IS_ERROR(steam_get_core_dlcs(&core_dlc_list, true))) - return; - - if (!string_is_empty(path)) - strlcpy(s2, path, len2); - - if (!(core_dlc = steam_get_core_dlc_by_name(core_dlc_list, path))) - return; - - result = mist_steam_apps_is_dlc_installed(core_dlc->app_id, &dlc_installed); - - if (MIST_IS_ERROR(result)) + if (!MIST_IS_ERROR(steam_get_core_dlcs(&core_dlc_list, true))) { - RARCH_ERR("[Steam]: Failed to get dlc install status (%d-%d)\n", MIST_UNPACK_RESULT(result)); - return; - } + steam_core_dlc_t *core_dlc = NULL; + if (!string_is_empty(path)) + strlcpy(s2, path, len2); - if (dlc_installed) - { - s[0] = '['; - s[1] = '#'; - s[2] = ']'; - s[3] = '\0'; - *w = (unsigned)STRLEN_CONST("[#]"); + if ((core_dlc = steam_get_core_dlc_by_name(core_dlc_list, path))) + { + bool dlc_installed = false; + MistResult result = mist_steam_apps_is_dlc_installed( + core_dlc->app_id, &dlc_installed); + + if (MIST_IS_ERROR(result)) + { + RARCH_ERR("[Steam]: Failed to get dlc install status (%d-%d)\n", + MIST_UNPACK_RESULT(result)); + return 0; + } + + if (dlc_installed) + { + *w = (unsigned)STRLEN_CONST("[#]"); + return strlcpy(s, "[#]", len); + } + } } + return 0; } #endif -static void menu_action_setting_disp_set_label_contentless_core( +static size_t menu_action_setting_disp_set_label_contentless_core( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -574,13 +549,13 @@ static void menu_action_setting_disp_set_label_contentless_core( *s = '\0'; *w = 0; - if (alt) strlcpy(s2, alt, len2); + return 0; } #ifdef HAVE_LAKKA -static void menu_action_setting_disp_cpu_gov_mode( +static size_t menu_action_setting_disp_cpu_gov_mode( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -592,15 +567,13 @@ static void menu_action_setting_disp_cpu_gov_mode( ? list->list[i].alt : list->list[i].path; enum cpu_scaling_mode mode = get_cpu_scaling_mode(NULL); - if (alt) strlcpy(s2, alt, len2); - - strlcpy(s, msg_hash_to_str( + return strlcpy(s, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_CPU_PERF_MODE_MANAGED_PERF + (int)mode), len); } -static void menu_action_setting_disp_cpu_gov_choose( +static size_t menu_action_setting_disp_cpu_gov_choose( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -619,12 +592,11 @@ static void menu_action_setting_disp_cpu_gov_choose( strlcpy(s2, alt, len2); if (!fnum) - strlcpy(s, opts.main_policy, len); - else - strlcpy(s, opts.menu_policy, len); + return strlcpy(s, opts.main_policy, len); + return strlcpy(s, opts.menu_policy, len); } -static void menu_action_setting_disp_set_label_cpu_policy( +static size_t menu_action_setting_disp_set_label_cpu_policy( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -649,9 +621,10 @@ static void menu_action_setting_disp_set_label_cpu_policy( s2[ _len] = ']' ; s2[++_len] = '\0'; } + return 0; } -static void menu_action_cpu_managed_freq_label( +static size_t menu_action_cpu_managed_freq_label( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -678,14 +651,13 @@ static void menu_action_cpu_managed_freq_label( } if (freq == 1) - strlcpy(s, "Min.", len); + return strlcpy(s, "Min.", len); else if (freq == ~0U) - strlcpy(s, "Max.", len); - else - snprintf(s, len, "%u MHz", freq / 1000); + return strlcpy(s, "Max.", len); + return snprintf(s, len, "%u MHz", freq / 1000); } -static void menu_action_cpu_freq_label( +static size_t menu_action_cpu_freq_label( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -702,22 +674,20 @@ static void menu_action_cpu_freq_label( case MENU_SETTINGS_CPU_POLICY_SET_MINFREQ: strlcpy(s2, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_CPU_POLICY_MIN_FREQ), len2); - snprintf(s, len, "%u MHz", d->min_policy_freq / 1000); - break; + return snprintf(s, len, "%u MHz", d->min_policy_freq / 1000); case MENU_SETTINGS_CPU_POLICY_SET_MAXFREQ: strlcpy(s2, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_CPU_POLICY_MAX_FREQ), len2); - snprintf(s, len, "%u MHz", d->max_policy_freq / 1000); - break; + return snprintf(s, len, "%u MHz", d->max_policy_freq / 1000); case MENU_SETTINGS_CPU_POLICY_SET_GOVERNOR: strlcpy(s2, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_CPU_POLICY_GOVERNOR), len2); - strlcpy(s, d->scaling_governor, len); - break; + return strlcpy(s, d->scaling_governor, len); } + return 0; } -static void menu_action_cpu_governor_label( +static size_t menu_action_cpu_governor_label( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -731,11 +701,11 @@ static void menu_action_cpu_governor_label( strlcpy(s2, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_CPU_POLICY_GOVERNOR), len2); - strlcpy(s, d->scaling_governor, len); + return strlcpy(s, d->scaling_governor, len); } #endif -static void menu_action_setting_disp_set_label_core_lock( +static size_t menu_action_setting_disp_set_label_core_lock( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -761,11 +731,11 @@ static void menu_action_setting_disp_set_label_core_lock( _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); else _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - *w = (unsigned)_len; + return _len; } -static void menu_action_setting_disp_set_label_core_set_standalone_exempt( +static size_t menu_action_setting_disp_set_label_core_set_standalone_exempt( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -776,12 +746,9 @@ static void menu_action_setting_disp_set_label_core_set_standalone_exempt( size_t _len; core_info_t *core_info = NULL; const char *alt = list->list[i].alt - ? list->list[i].alt - : list->list[i].path; - + ? list->list[i].alt : list->list[i].path; if (alt) strlcpy(s2, alt, len2); - /* Check whether core is excluded from the * contentless cores menu * > Note: We search core_info here instead of @@ -794,11 +761,11 @@ static void menu_action_setting_disp_set_label_core_set_standalone_exempt( _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); else _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - *w = (unsigned)_len; + return _len; } -static void menu_action_setting_disp_set_label_input_desc( +static size_t menu_action_setting_disp_set_label_input_desc( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -812,7 +779,7 @@ static void menu_action_setting_disp_set_label_input_desc( unsigned btn_idx = (type - MENU_SETTINGS_INPUT_DESC_BEGIN) - (RARCH_FIRST_CUSTOM_BIND + 8) * user_idx; if (!settings) - return; + return 0; *w = 19; @@ -823,35 +790,23 @@ static void menu_action_setting_disp_set_label_input_desc( RARCH_UNMAPPED) { unsigned mapped_port = settings->uints.input_remap_ports[user_idx]; - const char *descriptor = runloop_state_get_ptr()->system.input_desc_btn[mapped_port][remap_idx]; + const char *descriptor = runloop_state_get_ptr()-> + system.input_desc_btn[mapped_port][remap_idx]; if (!string_is_empty(descriptor)) { size_t _len = strlcpy(s, descriptor, len); if (remap_idx < RARCH_FIRST_CUSTOM_BIND) { } else if (remap_idx % 2 == 0) - { - s[ _len] = ' '; - s[++_len] = '+'; - s[++_len] = '\0'; - } + return strlcpy(s, " +", len); else - { - s[ _len] = ' '; - s[++_len] = '-'; - s[++_len] = '\0'; - } - return; + return strlcpy(s, " -", len); } } - /* If descriptor was not found, set this instead */ - s[0] = '-'; - s[1] = '-'; - s[2] = '-'; - s[3] = '\0'; + return strlcpy(s, "---", len); } -static void menu_action_setting_disp_set_label_input_desc_kbd( +static size_t menu_action_setting_disp_set_label_input_desc_kbd( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -859,13 +814,14 @@ static void menu_action_setting_disp_set_label_input_desc_kbd( const char *path, char *s2, size_t len2) { + size_t _len; unsigned key_id, btn_idx; unsigned remap_id; unsigned user_idx; settings_t *settings = config_get_ptr(); if (!settings) - return; + return 0; user_idx = (type - MENU_SETTINGS_INPUT_DESC_KBD_BEGIN) / RARCH_ANALOG_BIND_LIST_END; btn_idx = (type - MENU_SETTINGS_INPUT_DESC_KBD_BEGIN) - RARCH_ANALOG_BIND_LIST_END * user_idx; @@ -880,25 +836,21 @@ static void menu_action_setting_disp_set_label_input_desc_kbd( if (key_descriptors[key_id].key != RETROK_FIRST) { /* TODO/FIXME - Localize */ - size_t _len = strlcpy(s, "Keyboard ", len); - strlcpy(s + _len, key_descriptors[key_id].desc, len - _len); + _len = strlcpy(s, "Keyboard ", len); + _len += strlcpy(s + _len, key_descriptors[key_id].desc, len - _len); } else - { - s[0] = '-'; - s[1] = '-'; - s[2] = '-'; - s[3] = '\0'; - } + _len = strlcpy(s, "---", len); *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } #ifdef HAVE_CHEATS -static void menu_action_setting_disp_set_label_cheat( +static size_t menu_action_setting_disp_set_label_cheat( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -906,11 +858,12 @@ static void menu_action_setting_disp_set_label_cheat( const char *path, char *s2, size_t len2) { + size_t _len = 0; unsigned cheat_index = type - MENU_SETTINGS_CHEAT_BEGIN; if (cheat_index < cheat_manager_get_buf_size()) { - size_t _len = + _len = snprintf(s, len, "(%s) : ", cheat_manager_get_code_state(cheat_index) ? msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON) @@ -919,23 +872,24 @@ static void menu_action_setting_disp_set_label_cheat( if (cheat_manager_state.cheats[cheat_index].handler == CHEAT_HANDLER_TYPE_EMU) { const char *code = cheat_manager_get_code(cheat_index); - strlcpy(s + _len, + _len += strlcpy(s + _len, code ? code : msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len - _len); } else - snprintf(s + _len, len - _len, "%08X", + _len += snprintf(s + _len, len - _len, "%08X", cheat_manager_state.cheats[cheat_index].address); } *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_cheat_match( +static size_t menu_action_setting_disp_set_label_cheat_match( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -943,58 +897,59 @@ static void menu_action_setting_disp_set_label_cheat_match( const char *path, char *s2, size_t len2) { + size_t _len; unsigned int address = 0; unsigned int address_mask = 0; unsigned int prev_val = 0; unsigned int curr_val = 0; - cheat_manager_match_action(CHEAT_MATCH_ACTION_TYPE_VIEW, cheat_manager_state.match_idx, &address, &address_mask, &prev_val, &curr_val); - + cheat_manager_match_action(CHEAT_MATCH_ACTION_TYPE_VIEW, + cheat_manager_state.match_idx, + &address, &address_mask, &prev_val, &curr_val); /* TODO/FIXME - localize */ - snprintf(s, len, "Prev: %u Curr: %u", prev_val, curr_val); + _len = snprintf(s, len, "Prev: %u Curr: %u", prev_val, curr_val); *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } #endif -static void menu_action_setting_disp_set_label_perf_counters_common( +static size_t menu_action_setting_disp_set_label_perf_counters_common( struct retro_perf_counter **counters, - unsigned offset, char *s, size_t len - ) + unsigned offset, char *s, size_t len) { if (!counters[offset]) - return; + return 0; if (!counters[offset]->call_cnt) - return; - + return 0; /* TODO/FIXME - localize */ - snprintf(s, len, + return snprintf(s, len, "%" PRIu64 " ticks, %" PRIu64 " runs.", ((uint64_t)counters[offset]->total / (uint64_t)counters[offset]->call_cnt), (uint64_t)counters[offset]->call_cnt); } -static void general_disp_set_label_perf_counters( +static size_t general_disp_set_label_perf_counters( struct retro_perf_counter **counters, unsigned offset, char *s, size_t len, char *s2, size_t len2, - const char *path, unsigned *w - ) + const char *path, unsigned *w) { + size_t _len; gfx_animation_t *p_anim = anim_get_ptr(); *s = '\0'; *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); - - menu_action_setting_disp_set_label_perf_counters_common( + _len = menu_action_setting_disp_set_label_perf_counters_common( counters, offset, s, len); GFX_ANIMATION_CLEAR_ACTIVE(p_anim); + return _len; } -static void menu_action_setting_disp_set_label_perf_counters( +static size_t menu_action_setting_disp_set_label_perf_counters( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1004,11 +959,11 @@ static void menu_action_setting_disp_set_label_perf_counters( { struct retro_perf_counter **counters = retro_get_perf_counter_rarch(); unsigned offset = type - MENU_SETTINGS_PERF_COUNTERS_BEGIN; - general_disp_set_label_perf_counters(counters, offset, s, len, + return general_disp_set_label_perf_counters(counters, offset, s, len, s2, len, path, w); } -static void menu_action_setting_disp_set_label_libretro_perf_counters( +static size_t menu_action_setting_disp_set_label_libretro_perf_counters( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1018,11 +973,11 @@ static void menu_action_setting_disp_set_label_libretro_perf_counters( { struct retro_perf_counter **counters = retro_get_perf_counter_libretro(); unsigned offset = type - MENU_SETTINGS_LIBRETRO_PERF_COUNTERS_BEGIN; - general_disp_set_label_perf_counters(counters, offset, s, len, + return general_disp_set_label_perf_counters(counters, offset, s, len, s2, len, path, w); } -static void menu_action_setting_disp_set_label_menu_more( +static size_t menu_action_setting_disp_set_label_menu_more( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1030,13 +985,14 @@ static void menu_action_setting_disp_set_label_menu_more( const char *path, char *s2, size_t len2) { - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MORE), len); + size_t _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MORE), len); *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_db_entry( +static size_t menu_action_setting_disp_set_label_db_entry( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1044,13 +1000,14 @@ static void menu_action_setting_disp_set_label_db_entry( const char *path, char *s2, size_t len2) { - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MORE), len); + size_t _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MORE), len); *w = 10; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_entry_url( +static size_t menu_action_setting_disp_set_label_entry_url( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1068,9 +1025,10 @@ static void menu_action_setting_disp_set_label_entry_url( strlcpy(s2, representation_label, len2); else if (!string_is_empty(path)) strlcpy(s2, path, len2); + return 0; } -static void menu_action_setting_disp_set_label_entry( +static size_t menu_action_setting_disp_set_label_entry( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1082,10 +1040,11 @@ static void menu_action_setting_disp_set_label_entry( *w = 8; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return 0; } #ifdef HAVE_BLUETOOTH -static void menu_action_setting_disp_set_label_bluetooth_is_connected( +static size_t menu_action_setting_disp_set_label_bluetooth_is_connected( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1098,12 +1057,13 @@ static void menu_action_setting_disp_set_label_bluetooth_is_connected( strlcpy(s2, path, len2); if (driver_bluetooth_device_is_connected(i)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_BT_CONNECTED), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_BT_CONNECTED), len); + return 0; } #endif #if defined(HAVE_NETWORKING) && defined(HAVE_WIFI) -static void menu_action_setting_disp_set_label_wifi_is_online( +static size_t menu_action_setting_disp_set_label_wifi_is_online( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1114,13 +1074,13 @@ static void menu_action_setting_disp_set_label_wifi_is_online( *w = 19; if (!string_is_empty(path)) strlcpy(s2, path, len2); - if (driver_wifi_ssid_is_online(i)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ONLINE), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ONLINE), len); + return 0; } #endif -static void menu_action_setting_disp_set_label_menu_disk_index( +static size_t menu_action_setting_disp_set_label_menu_disk_index( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1133,10 +1093,9 @@ static void menu_action_setting_disp_set_label_menu_disk_index( rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; if (!sys_info) - return; - + return 0; if (!disk_control_enabled(&sys_info->disk_control)) - return; + return 0; *w = 19; *s = '\0'; @@ -1147,12 +1106,11 @@ static void menu_action_setting_disp_set_label_menu_disk_index( current = disk_control_get_image_index(&sys_info->disk_control); if (current >= images) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_DISK), len); - else - snprintf(s, len, "%u", current + 1); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_DISK), len); + return snprintf(s, len, "%u", current + 1); } -static void menu_action_setting_disp_set_label_menu_video_resolution( +static size_t menu_action_setting_disp_set_label_menu_video_resolution( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1160,6 +1118,7 @@ static void menu_action_setting_disp_set_label_menu_video_resolution( const char *path, char *s2, size_t len2) { + size_t _len = 0; unsigned width = 0, height = 0; char desc[64] = {0}; *w = 19; @@ -1172,20 +1131,21 @@ static void menu_action_setting_disp_set_label_menu_video_resolution( { #ifdef GEKKO if (width == 0 || height == 0) - snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE)); + _len = snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE)); else #endif { if (!string_is_empty(desc)) - snprintf(s, len, msg_hash_to_str(MSG_SCREEN_RESOLUTION_FORMAT_DESC), + _len = snprintf(s, len, msg_hash_to_str(MSG_SCREEN_RESOLUTION_FORMAT_DESC), width, height, desc); else - snprintf(s, len, msg_hash_to_str(MSG_SCREEN_RESOLUTION_FORMAT_NO_DESC), + _len = snprintf(s, len, msg_hash_to_str(MSG_SCREEN_RESOLUTION_FORMAT_NO_DESC), width, height); } } else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + return _len; } #define MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, label, label_size, s2, len2) \ @@ -1195,7 +1155,7 @@ static void menu_action_setting_disp_set_label_menu_video_resolution( if (!string_is_empty(path)) \ strlcpy(s2, path, len2) -static void menu_action_setting_disp_set_label_menu_file_plain( +static size_t menu_action_setting_disp_set_label_menu_file_plain( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1203,11 +1163,13 @@ static void menu_action_setting_disp_set_label_menu_file_plain( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(FILE)", STRLEN_CONST("(FILE)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_imageviewer( +static size_t menu_action_setting_disp_set_label_menu_file_imageviewer( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1215,11 +1177,13 @@ static void menu_action_setting_disp_set_label_menu_file_imageviewer( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(IMAGE)", STRLEN_CONST("(IMAGE)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_movie( +static size_t menu_action_setting_disp_set_label_movie( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1227,11 +1191,13 @@ static void menu_action_setting_disp_set_label_movie( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(MOVIE)", STRLEN_CONST("(MOVIE)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_music( +static size_t menu_action_setting_disp_set_label_music( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1239,11 +1205,13 @@ static void menu_action_setting_disp_set_label_music( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(MUSIC)", STRLEN_CONST("(MUSIC)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_directory( +static size_t menu_action_setting_disp_set_label_menu_file_directory( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1251,6 +1219,7 @@ static void menu_action_setting_disp_set_label_menu_file_directory( const char *path, char *s2, size_t len2) { + size_t _len = 0; #if IOS char tmp[PATH_MAX_LENGTH]; fill_pathname_abbreviate_special(tmp, path, sizeof(tmp)); @@ -1260,9 +1229,10 @@ static void menu_action_setting_disp_set_label_menu_file_directory( MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(DIR)", STRLEN_CONST("(DIR)"), s2, len2); #endif + return _len; } -static void menu_action_setting_disp_set_label_generic( +static size_t menu_action_setting_disp_set_label_generic( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1274,9 +1244,10 @@ static void menu_action_setting_disp_set_label_generic( *w = 0; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return 0; } -static void menu_action_setting_disp_set_label_menu_file_carchive( +static size_t menu_action_setting_disp_set_label_menu_file_carchive( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1284,11 +1255,13 @@ static void menu_action_setting_disp_set_label_menu_file_carchive( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(COMP)", STRLEN_CONST("(COMP)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_shader( +static size_t menu_action_setting_disp_set_label_menu_file_shader( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1296,11 +1269,13 @@ static void menu_action_setting_disp_set_label_menu_file_shader( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(SHADER)", STRLEN_CONST("(SHADER)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_shader_preset( +static size_t menu_action_setting_disp_set_label_menu_file_shader_preset( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1308,11 +1283,13 @@ static void menu_action_setting_disp_set_label_menu_file_shader_preset( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(PRESET)", STRLEN_CONST("(PRESET)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_in_carchive( +static size_t menu_action_setting_disp_set_label_menu_file_in_carchive( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1320,11 +1297,13 @@ static void menu_action_setting_disp_set_label_menu_file_in_carchive( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(CFILE)", STRLEN_CONST("(CFILE)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_overlay( +static size_t menu_action_setting_disp_set_label_menu_file_overlay( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1332,11 +1311,13 @@ static void menu_action_setting_disp_set_label_menu_file_overlay( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(OVERLAY)", STRLEN_CONST("(OVERLAY)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_config( +static size_t menu_action_setting_disp_set_label_menu_file_config( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1344,11 +1325,13 @@ static void menu_action_setting_disp_set_label_menu_file_config( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(CONFIG)", STRLEN_CONST("(CONFIG)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_font( +static size_t menu_action_setting_disp_set_label_menu_file_font( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1356,11 +1339,13 @@ static void menu_action_setting_disp_set_label_menu_file_font( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(FONT)", STRLEN_CONST("(FONT)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_filter( +static size_t menu_action_setting_disp_set_label_menu_file_filter( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1368,11 +1353,13 @@ static void menu_action_setting_disp_set_label_menu_file_filter( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(FILTER)", STRLEN_CONST("(FILTER)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_rdb( +static size_t menu_action_setting_disp_set_label_menu_file_rdb( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1380,11 +1367,13 @@ static void menu_action_setting_disp_set_label_menu_file_rdb( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(RDB)", STRLEN_CONST("(RDB)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_menu_file_cheat( +static size_t menu_action_setting_disp_set_label_menu_file_cheat( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1392,11 +1381,13 @@ static void menu_action_setting_disp_set_label_menu_file_cheat( const char *path, char *s2, size_t len2) { + size_t _len = 0; MENU_ACTION_SETTING_GENERIC_DISP_SET_LABEL_2(w, s, len, path, "(CHEAT)", STRLEN_CONST("(CHEAT)"), s2, len2); + return _len; } -static void menu_action_setting_disp_set_label_core_option_override_info( +static size_t menu_action_setting_disp_set_label_core_option_override_info( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1404,6 +1395,7 @@ static void menu_action_setting_disp_set_label_core_option_override_info( const char *path, char *s2, size_t len2) { + size_t _len = 0; const char *override_path = path_get(RARCH_PATH_CORE_OPTIONS); core_option_manager_t *coreopts = NULL; const char *options_file = NULL; @@ -1421,21 +1413,22 @@ static void menu_action_setting_disp_set_label_core_option_override_info( } if (!string_is_empty(options_file)) - strlcpy(s, options_file, len); + _len = strlcpy(s, options_file, len); else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); - + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_playlist_associations(file_list_t* list, +static size_t menu_action_setting_disp_set_label_playlist_associations(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, char *s2, size_t len2) { + size_t _len; playlist_t *playlist = playlist_get_cached(); const char *core_name = NULL; @@ -1446,18 +1439,17 @@ static void menu_action_setting_disp_set_label_playlist_associations(file_list_t strlcpy(s2, path, len2); if (!playlist) - return; + return 0; core_name = playlist_get_default_core_name(playlist); - if (!string_is_empty(core_name) && - !string_is_equal(core_name, "DETECT")) - strlcpy(s, core_name, len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + if ( !string_is_empty(core_name) + && !string_is_equal(core_name, "DETECT")) + return strlcpy(s, core_name, len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); } -static void menu_action_setting_disp_set_label_playlist_label_display_mode( +static size_t menu_action_setting_disp_set_label_playlist_label_display_mode( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1465,42 +1457,37 @@ static void menu_action_setting_disp_set_label_playlist_label_display_mode( const char *path, char *s2, size_t len2) { - enum playlist_label_display_mode label_display_mode; playlist_t *playlist = playlist_get_cached(); - if (!playlist) - return; - - label_display_mode = playlist_get_label_display_mode(playlist); - - *w = 19; - - if (!string_is_empty(path)) - strlcpy(s2, path, len2); - - switch (label_display_mode) + if (playlist) { - case LABEL_DISPLAY_MODE_REMOVE_PARENTHESES : - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_REMOVE_PARENS), len); - break; - case LABEL_DISPLAY_MODE_REMOVE_BRACKETS : - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_REMOVE_BRACKETS), len); - break; - case LABEL_DISPLAY_MODE_REMOVE_PARENTHESES_AND_BRACKETS : - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_REMOVE_PARENS_AND_BRACKETS), len); - break; - case LABEL_DISPLAY_MODE_KEEP_DISC_INDEX : - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_KEEP_DISC_INDEX), len); - break; - case LABEL_DISPLAY_MODE_KEEP_REGION : - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_KEEP_REGION), len); - break; - case LABEL_DISPLAY_MODE_KEEP_REGION_AND_DISC_INDEX : - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_KEEP_REGION_AND_DISC_INDEX), len); - break; - default: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_DEFAULT), len); + enum playlist_label_display_mode label_display_mode = + playlist_get_label_display_mode(playlist); + + *w = 19; + + if (!string_is_empty(path)) + strlcpy(s2, path, len2); + + switch (label_display_mode) + { + case LABEL_DISPLAY_MODE_REMOVE_PARENTHESES : + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_REMOVE_PARENS), len); + case LABEL_DISPLAY_MODE_REMOVE_BRACKETS : + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_REMOVE_BRACKETS), len); + case LABEL_DISPLAY_MODE_REMOVE_PARENTHESES_AND_BRACKETS : + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_REMOVE_PARENS_AND_BRACKETS), len); + case LABEL_DISPLAY_MODE_KEEP_DISC_INDEX : + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_KEEP_DISC_INDEX), len); + case LABEL_DISPLAY_MODE_KEEP_REGION : + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_KEEP_REGION), len); + case LABEL_DISPLAY_MODE_KEEP_REGION_AND_DISC_INDEX : + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_KEEP_REGION_AND_DISC_INDEX), len); + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_LABEL_DISPLAY_MODE_DEFAULT), len); + } } + return 0; } static const char *get_playlist_thumbnail_mode_value(playlist_t *playlist, enum playlist_thumbnail_id thumbnail_id) @@ -1528,7 +1515,7 @@ static const char *get_playlist_thumbnail_mode_value(playlist_t *playlist, enum return msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_THUMBNAIL_MODE_DEFAULT); } -static void menu_action_setting_disp_set_label_playlist_right_thumbnail_mode( +static size_t menu_action_setting_disp_set_label_playlist_right_thumbnail_mode( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1544,15 +1531,15 @@ static void menu_action_setting_disp_set_label_playlist_right_thumbnail_mode( strlcpy(s2, path, len2); if (playlist) - strlcpy( + return strlcpy( s, get_playlist_thumbnail_mode_value(playlist, PLAYLIST_THUMBNAIL_RIGHT), len); - else - *s = '\0'; + *s = '\0'; + return 0; } -static void menu_action_setting_disp_set_label_playlist_left_thumbnail_mode( +static size_t menu_action_setting_disp_set_label_playlist_left_thumbnail_mode( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1568,15 +1555,15 @@ static void menu_action_setting_disp_set_label_playlist_left_thumbnail_mode( strlcpy(s2, path, len2); if (playlist) - strlcpy( + return strlcpy( s, get_playlist_thumbnail_mode_value(playlist, PLAYLIST_THUMBNAIL_LEFT), len); - else - *s = '\0'; + *s = '\0'; + return 0; } -static void menu_action_setting_disp_set_label_playlist_sort_mode( +static size_t menu_action_setting_disp_set_label_playlist_sort_mode( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1584,34 +1571,32 @@ static void menu_action_setting_disp_set_label_playlist_sort_mode( const char *path, char *s2, size_t len2) { - enum playlist_sort_mode sort_mode; playlist_t *playlist = playlist_get_cached(); - if (!playlist) - return; - - sort_mode = playlist_get_sort_mode(playlist); - *w = 19; - - if (!string_is_empty(path)) - strlcpy(s2, path, len2); - - switch (sort_mode) + if (playlist) { - case PLAYLIST_SORT_MODE_ALPHABETICAL: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_SORT_MODE_ALPHABETICAL), len); - break; - case PLAYLIST_SORT_MODE_OFF: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_SORT_MODE_OFF), len); - break; - case PLAYLIST_SORT_MODE_DEFAULT: - default: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_SORT_MODE_DEFAULT), len); - break; + enum playlist_sort_mode sort_mode = playlist_get_sort_mode(playlist); + *w = 19; + + if (!string_is_empty(path)) + strlcpy(s2, path, len2); + + switch (sort_mode) + { + case PLAYLIST_SORT_MODE_ALPHABETICAL: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_SORT_MODE_ALPHABETICAL), len); + case PLAYLIST_SORT_MODE_OFF: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_SORT_MODE_OFF), len); + case PLAYLIST_SORT_MODE_DEFAULT: + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_PLAYLIST_MANAGER_SORT_MODE_DEFAULT), len); + } } + + return 0; } -static void menu_action_setting_disp_set_label_core_options( +static size_t menu_action_setting_disp_set_label_core_options( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1621,9 +1606,8 @@ static void menu_action_setting_disp_set_label_core_options( { const char *category = path; const char *desc = NULL; - /* Add 'more' value text */ - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MORE), len); + size_t _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MORE), len); *w = 19; /* If this is an options subcategory, fetch @@ -1645,9 +1629,10 @@ static void menu_action_setting_disp_set_label_core_options( if (!string_is_empty(desc)) strlcpy(s2, desc, len2); + return _len; } -static void menu_action_setting_disp_set_label_core_option( +static size_t menu_action_setting_disp_set_label_core_option( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1656,23 +1641,24 @@ static void menu_action_setting_disp_set_label_core_option( char *s2, size_t len2) { core_option_manager_t *coreopts = NULL; + size_t _len = 0; - *s = '\0'; - *w = 19; + *s = '\0'; + *w = 19; if (retroarch_ctl(RARCH_CTL_CORE_OPTIONS_LIST_GET, &coreopts)) { const char *coreopt_label = core_option_manager_get_val_label(coreopts, type - MENU_SETTINGS_CORE_OPTION_START); if (!string_is_empty(coreopt_label)) - strlcpy(s, coreopt_label, len); + _len = strlcpy(s, coreopt_label, len); } - if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_achievement_information( +static size_t menu_action_setting_disp_set_label_achievement_information( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1680,21 +1666,23 @@ static void menu_action_setting_disp_set_label_achievement_information( const char *path, char *s2, size_t len2) { + size_t _len = 0; menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; rarch_setting_t *setting = cbs->setting; *w = 2; if (setting && setting->get_string_representation) - setting->get_string_representation(setting, s, len); + _len = setting->get_string_representation(setting, s, len); else *s = '\0'; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_manual_content_scan_dir( +static size_t menu_action_setting_disp_set_label_manual_content_scan_dir( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1709,12 +1697,12 @@ static void menu_action_setting_disp_set_label_manual_content_scan_dir( strlcpy(s2, path, len2); if (manual_content_scan_get_menu_content_dir(&content_dir)) - strlcpy(s, content_dir, len); - else - *s = '\0'; + return strlcpy(s, content_dir, len); + *s = '\0'; + return 0; } -static void menu_action_setting_disp_set_label_manual_content_scan_system_name( +static size_t menu_action_setting_disp_set_label_manual_content_scan_system_name( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1730,12 +1718,12 @@ static void menu_action_setting_disp_set_label_manual_content_scan_system_name( strlcpy(s2, path, len2); if (manual_content_scan_get_menu_system_name(&system_name)) - strlcpy(s, system_name, len); - else - *s = '\0'; + return strlcpy(s, system_name, len); + *s = '\0'; + return 0; } -static void menu_action_setting_disp_set_label_manual_content_scan_core_name(file_list_t* list, +static size_t menu_action_setting_disp_set_label_manual_content_scan_core_name(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, @@ -1750,12 +1738,12 @@ static void menu_action_setting_disp_set_label_manual_content_scan_core_name(fil strlcpy(s2, path, len2); if (manual_content_scan_get_menu_core_name(&core_name)) - strlcpy(s, core_name, len); - else - *s = '\0'; + return strlcpy(s, core_name, len); + *s = '\0'; + return 0; } -static void menu_action_setting_disp_set_label_no_items( +static size_t menu_action_setting_disp_set_label_no_items( file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, @@ -1768,15 +1756,17 @@ static void menu_action_setting_disp_set_label_no_items( if (!string_is_empty(path)) strlcpy(s2, path, len2); + return 0; } -static void menu_action_setting_disp_set_label(file_list_t* list, +static size_t menu_action_setting_disp_set_label(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, char *s2, size_t len2) { + size_t _len = 0; menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; rarch_setting_t *setting = cbs->setting; @@ -1784,21 +1774,23 @@ static void menu_action_setting_disp_set_label(file_list_t* list, *w = 19; if (setting && setting->get_string_representation) - setting->get_string_representation(setting, s, len); + _len = setting->get_string_representation(setting, s, len); else *s = '\0'; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_setting_bool(file_list_t* list, +static size_t menu_action_setting_disp_set_label_setting_bool(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, char *s2, size_t len2) { + size_t _len = 0; menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; rarch_setting_t *setting = cbs->setting; @@ -1808,54 +1800,55 @@ static void menu_action_setting_disp_set_label_setting_bool(file_list_t* list, if (setting) { if (*setting->value.target.boolean) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); } else *s = '\0'; if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_setting_string(file_list_t* list, +static size_t menu_action_setting_disp_set_label_setting_string(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, char *s2, size_t len2) { + size_t _len = 0; menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; rarch_setting_t *setting = cbs->setting; *w = 19; - if (setting->value.target.string) - strlcpy(s, setting->value.target.string, len); - + _len = strlcpy(s, setting->value.target.string, len); if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } -static void menu_action_setting_disp_set_label_setting_path(file_list_t* list, +static size_t menu_action_setting_disp_set_label_setting_path(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, char *s2, size_t len2) { + size_t _len = 0; menu_file_list_cbs_t *cbs = (menu_file_list_cbs_t*) list->list[i].actiondata; rarch_setting_t *setting = cbs->setting; const char *basename = setting ? path_basename(setting->value.target.string) : NULL; *w = 19; - if (!string_is_empty(basename)) - strlcpy(s, basename, len); - + _len = strlcpy(s, basename, len); if (!string_is_empty(path)) strlcpy(s2, path, len2); + return _len; } static int menu_cbs_init_bind_get_string_representation_compare_label( @@ -2122,7 +2115,7 @@ static int menu_cbs_init_bind_get_string_representation_compare_type( { unsigned min; unsigned max; - void (*cb)(file_list_t* list, + size_t (*cb)(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, diff --git a/menu/menu_entries.h b/menu/menu_entries.h index 4650a992e3..4e371f77e0 100644 --- a/menu/menu_entries.h +++ b/menu/menu_entries.h @@ -149,7 +149,7 @@ typedef struct menu_file_list_cbs unsigned type, unsigned i, const char *label, const char *path, char *s, size_t len); - void (*action_get_value)(file_list_t* list, + size_t (*action_get_value)(file_list_t* list, unsigned *w, unsigned type, unsigned i, const char *label, char *s, size_t len, const char *path, diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 2c064dbe2f..48a0af0a3c 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -783,50 +783,55 @@ static int setting_bind_action_start(rarch_setting_t *setting) return 0; } -static void setting_get_string_representation_hex_and_uint( +static size_t setting_get_string_representation_hex_and_uint( rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%u (%08X)", + return snprintf(s, len, "%u (%08X)", *setting->value.target.unsigned_integer, *setting->value.target.unsigned_integer); + return 0; } -static void setting_get_string_representation_uint(rarch_setting_t *setting, +static size_t setting_get_string_representation_uint(rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%u", + return snprintf(s, len, "%u", *setting->value.target.unsigned_integer); + return 0; } #if defined(HAVE_NETWORKING) -static void setting_get_string_representation_color_rgb(rarch_setting_t *setting, +static size_t setting_get_string_representation_color_rgb(rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "#%06X", + return snprintf(s, len, "#%06X", *setting->value.target.unsigned_integer & 0xFFFFFF); + return 0; } #endif -static void setting_get_string_representation_size_in_mb( +static size_t setting_get_string_representation_size_in_mb( rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%" PRI_SIZET, + return snprintf(s, len, "%" PRI_SIZET, (*setting->value.target.sizet) / (1024 * 1024)); + return 0; } #ifdef HAVE_CHEATS -static void setting_get_string_representation_uint_as_enum( +static size_t setting_get_string_representation_uint_as_enum( rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, + return strlcpy(s, msg_hash_to_str((enum msg_hash_enums)( setting->index_offset+( *setting->value.target.unsigned_integer))), len); + return 0; } #endif @@ -1062,31 +1067,31 @@ void setting_generic_handle_change(rarch_setting_t *setting) } -static void setting_get_string_representation_int_gpu_index(rarch_setting_t *setting, +static size_t setting_get_string_representation_int_gpu_index(rarch_setting_t *setting, char *s, size_t len) { + size_t _len = 0; if (setting) { struct string_list *list = video_driver_get_gpu_api_devices(video_context_driver_get_api()); - size_t _len = snprintf(s, len, "%d", *setting->value.target.integer); + _len = snprintf(s, len, "%d", *setting->value.target.integer); if ( list && (*setting->value.target.integer < (int)list->size) && !string_is_empty(list->elems[*setting->value.target.integer].data)) { - s[ _len] = ' '; - s[++_len] = '-'; - s[++_len] = ' '; - s[++_len] = '\0'; - strlcpy(s + _len, list->elems[*setting->value.target.integer].data, len - _len); + _len += strlcpy(s + _len, " - ", len - _len); + _len += strlcpy(s + _len, list->elems[*setting->value.target.integer].data, len - _len); } } + return _len; } -static void setting_get_string_representation_int( +static size_t setting_get_string_representation_int( rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%d", *setting->value.target.integer); + return snprintf(s, len, "%d", *setting->value.target.integer); + return 0; } static int setting_fraction_action_left_default( @@ -1214,10 +1219,11 @@ static int setting_generic_action_start_default(rarch_setting_t *setting) return 0; } -static void setting_get_string_representation_default(rarch_setting_t *setting, +static size_t setting_get_string_representation_default(rarch_setting_t *setting, char *s, size_t len) { s[0] = '\0'; + return 0; } /** @@ -1229,14 +1235,15 @@ static void setting_get_string_representation_default(rarch_setting_t *setting, * * Set a settings' label value. The setting is of type ST_BOOL. **/ -static void setting_get_string_representation_st_bool(rarch_setting_t *setting, +static size_t setting_get_string_representation_st_bool(rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, *setting->value.target.boolean + return strlcpy(s, *setting->value.target.boolean ? msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON) : msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + return 0; } /** @@ -1248,56 +1255,60 @@ static void setting_get_string_representation_st_bool(rarch_setting_t *setting, * * Set a settings' label value. The setting is of type ST_FLOAT. **/ -static void setting_get_string_representation_st_float(rarch_setting_t *setting, +static size_t setting_get_string_representation_st_float(rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, setting->rounding_fraction, + return snprintf(s, len, setting->rounding_fraction, *setting->value.target.fraction); + return 0; } -static void setting_get_string_representation_st_dir(rarch_setting_t *setting, +static size_t setting_get_string_representation_st_dir(rarch_setting_t *setting, char *s, size_t len) { if (setting) { #if IOS if (*setting->value.target.string) - fill_pathname_abbreviate_special(s, setting->value.target.string, len); - else - strlcpy(s, setting->dir.empty_path, len); + return fill_pathname_abbreviate_special(s, setting->value.target.string, len); + return strlcpy(s, setting->dir.empty_path, len); #else - strlcpy(s, + return strlcpy(s, *setting->value.target.string ? setting->value.target.string : setting->dir.empty_path, len); #endif } + return 0; } -static void setting_get_string_representation_st_path(rarch_setting_t *setting, +static size_t setting_get_string_representation_st_path(rarch_setting_t *setting, char *s, size_t len) { if (setting) { #if IOS - fill_pathname_abbreviate_special(s, path_basename(setting->value.target.string), len); + return fill_pathname_abbreviate_special(s, + path_basename(setting->value.target.string), len); #else - fill_pathname(s, path_basename(setting->value.target.string), + return fill_pathname(s, path_basename(setting->value.target.string), "", len); #endif } + return 0; } -static void setting_get_string_representation_st_string(rarch_setting_t *setting, +static size_t setting_get_string_representation_st_string(rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, setting->value.target.string, len); + return strlcpy(s, setting->value.target.string, len); + return 0; } -static void setting_get_string_representation_st_bind(rarch_setting_t *setting, +static size_t setting_get_string_representation_st_bind(rarch_setting_t *setting, char *s, size_t len) { unsigned index_offset = 0; @@ -1306,14 +1317,12 @@ static void setting_get_string_representation_st_bind(rarch_setting_t *setting, settings_t *settings = config_get_ptr(); if (!setting) - return; - + return 0; index_offset = setting->index_offset; keybind = (const struct retro_keybind*)setting->value.target.keybind; auto_bind = (const struct retro_keybind*) input_config_get_bind_auto(index_offset, keybind->id); - - input_config_get_bind_string(settings, s, keybind, auto_bind, len); + return input_config_get_bind_string(settings, s, keybind, auto_bind, len); } static int setting_action_action_ok( @@ -2850,223 +2859,195 @@ static int setting_string_action_ok_microphone_device( #endif #endif -static void setting_get_string_representation_streaming_mode( +static size_t setting_get_string_representation_streaming_mode( rarch_setting_t *setting, char *s, size_t len) -{ - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) - { - case STREAMING_MODE_TWITCH: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_TWITCH), len); - break; - case STREAMING_MODE_YOUTUBE: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_YOUTUBE), len); - break; - case STREAMING_MODE_FACEBOOK: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_FACEBOOK), len); - break; - case STREAMING_MODE_LOCAL: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_LOCAL), len); - break; - case STREAMING_MODE_CUSTOM: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_CUSTOM), len); - break; - } -} - -static void setting_get_string_representation_video_stream_quality( - rarch_setting_t *setting, char *s, size_t len) -{ - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) - { - case RECORD_CONFIG_TYPE_STREAMING_CUSTOM: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_CUSTOM), len); - break; - case RECORD_CONFIG_TYPE_STREAMING_LOW_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_LOW_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_STREAMING_MED_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_MED_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_STREAMING_HIGH_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_HIGH_QUALITY), len); - break; - } -} - -static void setting_get_string_representation_video_record_quality(rarch_setting_t *setting, - char *s, size_t len) -{ - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) - { - case RECORD_CONFIG_TYPE_RECORDING_CUSTOM: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_CUSTOM), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_LOW_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_LOW_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_MED_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_MED_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_HIGH_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_HIGH_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_LOSSLESS_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_LOSSLESS_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_WEBM_FAST: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_WEBM_FAST), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_WEBM_HIGH_QUALITY: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_WEBM_HIGH_QUALITY), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_GIF: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_GIF), len); - break; - case RECORD_CONFIG_TYPE_RECORDING_APNG: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_APNG), len); - break; - } -} - -static void setting_get_string_representation_video_filter(rarch_setting_t *setting, - char *s, size_t len) { if (setting) - fill_pathname(s, path_basename(setting->value.target.string), - "", len); + { + switch (*setting->value.target.unsigned_integer) + { + case STREAMING_MODE_TWITCH: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_TWITCH), len); + case STREAMING_MODE_YOUTUBE: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_YOUTUBE), len); + case STREAMING_MODE_FACEBOOK: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_FACEBOOK), len); + case STREAMING_MODE_LOCAL: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_LOCAL), len); + case STREAMING_MODE_CUSTOM: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_STREAMING_MODE_CUSTOM), len); + } + } + return 0; } -static void setting_get_string_representation_video_font_path(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_video_stream_quality( + rarch_setting_t *setting, char *s, size_t len) +{ + if (setting) + { + switch (*setting->value.target.unsigned_integer) + { + case RECORD_CONFIG_TYPE_STREAMING_CUSTOM: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_CUSTOM), len); + case RECORD_CONFIG_TYPE_STREAMING_LOW_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_LOW_QUALITY), len); + case RECORD_CONFIG_TYPE_STREAMING_MED_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_MED_QUALITY), len); + case RECORD_CONFIG_TYPE_STREAMING_HIGH_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_STREAMING_HIGH_QUALITY), len); + } + } + return 0; +} + +static size_t setting_get_string_representation_video_record_quality( + rarch_setting_t *setting, char *s, size_t len) +{ + if (setting) + { + switch (*setting->value.target.unsigned_integer) + { + case RECORD_CONFIG_TYPE_RECORDING_CUSTOM: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_CUSTOM), len); + case RECORD_CONFIG_TYPE_RECORDING_LOW_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_LOW_QUALITY), len); + case RECORD_CONFIG_TYPE_RECORDING_MED_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_MED_QUALITY), len); + case RECORD_CONFIG_TYPE_RECORDING_HIGH_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_HIGH_QUALITY), len); + case RECORD_CONFIG_TYPE_RECORDING_LOSSLESS_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_LOSSLESS_QUALITY), len); + case RECORD_CONFIG_TYPE_RECORDING_WEBM_FAST: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_WEBM_FAST), len); + case RECORD_CONFIG_TYPE_RECORDING_WEBM_HIGH_QUALITY: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_WEBM_HIGH_QUALITY), len); + case RECORD_CONFIG_TYPE_RECORDING_GIF: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_GIF), len); + case RECORD_CONFIG_TYPE_RECORDING_APNG: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_RECORD_CONFIG_TYPE_RECORDING_APNG), len); + } + } + return 0; +} + +static size_t setting_get_string_representation_video_filter( + rarch_setting_t *setting, char *s, size_t len) +{ + if (setting) + return fill_pathname(s, path_basename(setting->value.target.string), + "", len); + return 0; +} + +static size_t setting_get_string_representation_video_font_path( + rarch_setting_t *setting, char *s, size_t len) { if (!setting) - return; - + return 0; if (string_is_empty(setting->value.target.string)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); - else - fill_pathname(s, path_basename(setting->value.target.string), - "", len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); + return fill_pathname(s, path_basename(setting->value.target.string), + "", len); } -static void setting_get_string_representation_state_slot(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_state_slot( + rarch_setting_t *setting, char *s, size_t len) { if (!setting) - return; + return 0; if (*setting->value.target.integer == -1) - strlcpy(s, "Auto", len); - else - snprintf(s, len, "%d", *setting->value.target.integer); + return strlcpy(s, "Auto", len); + return snprintf(s, len, "%d", *setting->value.target.integer); } -static void setting_get_string_representation_percentage(rarch_setting_t *setting, +static size_t setting_get_string_representation_percentage(rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%d%%", *setting->value.target.integer); + return snprintf(s, len, "%d%%", *setting->value.target.integer); + return 0; } -static void setting_get_string_representation_float_video_msg_color(rarch_setting_t *setting, +static size_t setting_get_string_representation_float_video_msg_color(rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%d", (int)(*setting->value.target.fraction * 255.0f)); + return snprintf(s, len, "%d", (int)(*setting->value.target.fraction * 255.0f)); + return 0; } -static void setting_get_string_representation_max_users(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_max_users( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%d", *setting->value.target.unsigned_integer); + return snprintf(s, len, "%d", *setting->value.target.unsigned_integer); + return 0; } #if defined(HAVE_CHEEVOS) || defined(HAVE_CLOUDSYNC) -static void setting_get_string_representation_password( +static size_t setting_get_string_representation_password( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - if (!string_is_empty(setting->value.target.string)) + if (setting) { - s[0] = s[1] = s[2] = s[3] = s[4] = s[5] = s[6] = s[7] = '*'; - s[8] = '\0'; - } - else - { - settings_t *settings = config_get_ptr(); - if (settings->arrays.cheevos_token[0]) - { - s[0] = s[1] = s[2] = s[3] = s[4] = s[5] = s[6] = s[7] = '*'; - s[8] = '\0'; - } - else - *setting->value.target.string = '\0'; + if (!string_is_empty(setting->value.target.string)) + return strlcpy(s, "********", len); + if (config_get_ptr()->arrays.cheevos_token[0]) + return strlcpy(s, "********", len); + *setting->value.target.string = '\0'; } + return 0; } #endif #if TARGET_OS_IPHONE -static void setting_get_string_representation_uint_keyboard_gamepad_mapping_type( +static size_t setting_get_string_representation_uint_keyboard_gamepad_mapping_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); - break; - case 1: - strlcpy(s, "iPega PG-9017", len); - break; - case 2: - strlcpy(s, "8-bitty", len); - break; - case 3: - strlcpy(s, "SNES30 8bitdo", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); + case 1: + return strlcpy(s, "iPega PG-9017", len); + case 2: + return strlcpy(s, "8-bitty", len); + case 3: + return strlcpy(s, "SNES30 8bitdo", len); + } } + return 0; } #endif #ifdef HAVE_TRANSLATE -static void setting_get_string_representation_uint_ai_service_mode( +static size_t setting_get_string_representation_uint_ai_service_mode( rarch_setting_t *setting, char *s, size_t len) { enum msg_hash_enums enum_idx = MSG_UNKNOWN; if (!setting) - return; - + return 0; switch (*setting->value.target.unsigned_integer) { case 0: @@ -3081,18 +3062,17 @@ static void setting_get_string_representation_uint_ai_service_mode( default: break; } - if (enum_idx != 0) - strlcpy(s, msg_hash_to_str(enum_idx), len); + return strlcpy(s, msg_hash_to_str(enum_idx), len); + return 0; } -static void setting_get_string_representation_uint_ai_service_lang( +static size_t setting_get_string_representation_uint_ai_service_lang( rarch_setting_t *setting, char *s, size_t len) { enum msg_hash_enums enum_idx = MSG_UNKNOWN; if (!setting) - return; - + return 0; switch (*setting->value.target.unsigned_integer) { case TRANSLATION_LANG_EN: @@ -3297,102 +3277,91 @@ static void setting_get_string_representation_uint_ai_service_lang( default: break; } - if (enum_idx != 0) - strlcpy(s, msg_hash_to_str(enum_idx), len); - else - snprintf(s, len, "%d", *setting->value.target.unsigned_integer); + return strlcpy(s, msg_hash_to_str(enum_idx), len); + return snprintf(s, len, "%d", *setting->value.target.unsigned_integer); } #endif -static void setting_get_string_representation_uint_menu_thumbnails( +static size_t setting_get_string_representation_uint_menu_thumbnails( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case 1: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_SCREENSHOTS), len); - break; - case 2: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_TITLE_SCREENS), len); - break; - case 3: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_BOXARTS), len); - break; - case 4: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_LOGOS), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), len); + case 1: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_SCREENSHOTS), len); + case 2: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_TITLE_SCREENS), len); + case 3: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_BOXARTS), len); + case 4: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_LOGOS), len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_left_thumbnails( +static size_t setting_get_string_representation_uint_menu_left_thumbnails( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case 1: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_SCREENSHOTS), len); - break; - case 2: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_TITLE_SCREENS), len); - break; - case 3: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_BOXARTS), len); - break; - case 4: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_LOGOS), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), len); + case 1: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_SCREENSHOTS), len); + case 2: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_TITLE_SCREENS), len); + case 3: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_BOXARTS), len); + case 4: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_LOGOS), len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_icon_thumbnails( +static size_t setting_get_string_representation_uint_menu_icon_thumbnails( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case 1: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_LOGOS), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), len); + case 1: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_THUMBNAIL_MODE_LOGOS), len); + } } + return 0; } static void setting_set_string_representation_timedate_date_separator(char *s) @@ -3416,1515 +3385,1341 @@ static void setting_set_string_representation_timedate_date_separator(char *s) } } -static void setting_get_string_representation_uint_menu_timedate_style( +static size_t setting_get_string_representation_uint_menu_timedate_style( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + size_t _len = 0; + if (setting) { - case MENU_TIMEDATE_STYLE_YMD_HMS: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS), len); - break; - case MENU_TIMEDATE_STYLE_YMD_HM: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM), len); - break; - case MENU_TIMEDATE_STYLE_YMD: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD), len); - break; - case MENU_TIMEDATE_STYLE_YM: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YM), len); - break; - case MENU_TIMEDATE_STYLE_MDYYYY_HMS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS), len); - break; - case MENU_TIMEDATE_STYLE_MDYYYY_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM), len); - break; - case MENU_TIMEDATE_STYLE_MD_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM), len); - break; - case MENU_TIMEDATE_STYLE_MDYYYY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY), len); - break; - case MENU_TIMEDATE_STYLE_MD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MD), len); - break; - case MENU_TIMEDATE_STYLE_DDMMYYYY_HMS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS), len); - break; - case MENU_TIMEDATE_STYLE_DDMMYYYY_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM), len); - break; - case MENU_TIMEDATE_STYLE_DDMM_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM), len); - break; - case MENU_TIMEDATE_STYLE_DDMMYYYY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY), len); - break; - case MENU_TIMEDATE_STYLE_DDMM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM), len); - break; - case MENU_TIMEDATE_STYLE_HMS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_HMS), len); - break; - case MENU_TIMEDATE_STYLE_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_HM), len); - break; - case MENU_TIMEDATE_STYLE_YMD_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_YMD_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_MDYYYY_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_MDYYYY_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_MD_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_DDMMYYYY_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_DDMMYYYY_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_DDMM_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_HMS_AMPM), len); - break; - case MENU_TIMEDATE_STYLE_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_HM_AMPM), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_TIMEDATE_STYLE_YMD_HMS: + _len = strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS), len); + break; + case MENU_TIMEDATE_STYLE_YMD_HM: + _len = strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM), len); + break; + case MENU_TIMEDATE_STYLE_YMD: + _len = strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD), len); + break; + case MENU_TIMEDATE_STYLE_YM: + _len = strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YM), len); + break; + case MENU_TIMEDATE_STYLE_MDYYYY_HMS: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS), len); + break; + case MENU_TIMEDATE_STYLE_MDYYYY_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM), len); + break; + case MENU_TIMEDATE_STYLE_MD_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM), len); + break; + case MENU_TIMEDATE_STYLE_MDYYYY: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY), len); + break; + case MENU_TIMEDATE_STYLE_MD: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MD), len); + break; + case MENU_TIMEDATE_STYLE_DDMMYYYY_HMS: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS), len); + break; + case MENU_TIMEDATE_STYLE_DDMMYYYY_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM), len); + break; + case MENU_TIMEDATE_STYLE_DDMM_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM), len); + break; + case MENU_TIMEDATE_STYLE_DDMMYYYY: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY), len); + break; + case MENU_TIMEDATE_STYLE_DDMM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM), len); + break; + case MENU_TIMEDATE_STYLE_HMS: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_HMS), len); + break; + case MENU_TIMEDATE_STYLE_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_HM), len); + break; + case MENU_TIMEDATE_STYLE_YMD_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_YMD_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_MDYYYY_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_MDYYYY_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_MD_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_DDMMYYYY_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_DDMMYYYY_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_DDMM_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_HMS_AMPM), len); + break; + case MENU_TIMEDATE_STYLE_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_HM_AMPM), len); + break; + } } /* Change date separator, if required */ setting_set_string_representation_timedate_date_separator(s); + return _len; } -static void setting_get_string_representation_uint_menu_timedate_date_separator( +static size_t setting_get_string_representation_uint_menu_timedate_date_separator( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MENU_TIMEDATE_DATE_SEPARATOR_HYPHEN: - strlcpy(s, "'-'", len); - break; - case MENU_TIMEDATE_DATE_SEPARATOR_SLASH: - strlcpy(s, "'/'", len); - break; - case MENU_TIMEDATE_DATE_SEPARATOR_PERIOD: - strlcpy(s, "'.'", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_TIMEDATE_DATE_SEPARATOR_HYPHEN: + return strlcpy(s, "'-'", len); + case MENU_TIMEDATE_DATE_SEPARATOR_SLASH: + return strlcpy(s, "'/'", len); + case MENU_TIMEDATE_DATE_SEPARATOR_PERIOD: + return strlcpy(s, "'.'", len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_add_content_entry_display_type( +static size_t setting_get_string_representation_uint_menu_add_content_entry_display_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MENU_ADD_CONTENT_ENTRY_DISPLAY_HIDDEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), - len); - break; - case MENU_ADD_CONTENT_ENTRY_DISPLAY_MAIN_TAB: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_ADD_CONTENT_ENTRY_DISPLAY_MAIN_TAB), - len); - break; - case MENU_ADD_CONTENT_ENTRY_DISPLAY_PLAYLISTS_TAB: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_ADD_CONTENT_ENTRY_DISPLAY_PLAYLISTS_TAB), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_ADD_CONTENT_ENTRY_DISPLAY_HIDDEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), + len); + case MENU_ADD_CONTENT_ENTRY_DISPLAY_MAIN_TAB: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_ADD_CONTENT_ENTRY_DISPLAY_MAIN_TAB), + len); + case MENU_ADD_CONTENT_ENTRY_DISPLAY_PLAYLISTS_TAB: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_ADD_CONTENT_ENTRY_DISPLAY_PLAYLISTS_TAB), + len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_contentless_cores_display_type( +static size_t setting_get_string_representation_uint_menu_contentless_cores_display_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MENU_CONTENTLESS_CORES_DISPLAY_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), - len); - break; - case MENU_CONTENTLESS_CORES_DISPLAY_ALL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHOW_CONTENTLESS_CORES_ALL), - len); - break; - case MENU_CONTENTLESS_CORES_DISPLAY_SINGLE_PURPOSE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHOW_CONTENTLESS_CORES_SINGLE_PURPOSE), - len); - break; - case MENU_CONTENTLESS_CORES_DISPLAY_CUSTOM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHOW_CONTENTLESS_CORES_CUSTOM), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_CONTENTLESS_CORES_DISPLAY_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), + len); + case MENU_CONTENTLESS_CORES_DISPLAY_ALL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHOW_CONTENTLESS_CORES_ALL), + len); + case MENU_CONTENTLESS_CORES_DISPLAY_SINGLE_PURPOSE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHOW_CONTENTLESS_CORES_SINGLE_PURPOSE), + len); + case MENU_CONTENTLESS_CORES_DISPLAY_CUSTOM: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHOW_CONTENTLESS_CORES_CUSTOM), + len); + } } + return 0; } -static void setting_get_string_representation_uint_rgui_menu_color_theme( +static size_t setting_get_string_representation_uint_rgui_menu_color_theme( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RGUI_THEME_CUSTOM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CUSTOM), - len); - break; - case RGUI_THEME_CLASSIC_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_RED), - len); - break; - case RGUI_THEME_CLASSIC_ORANGE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_ORANGE), - len); - break; - case RGUI_THEME_CLASSIC_YELLOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_YELLOW), - len); - break; - case RGUI_THEME_CLASSIC_GREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_GREEN), - len); - break; - case RGUI_THEME_CLASSIC_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_BLUE), - len); - break; - case RGUI_THEME_CLASSIC_VIOLET: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_VIOLET), - len); - break; - case RGUI_THEME_CLASSIC_GREY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_GREY), - len); - break; - case RGUI_THEME_LEGACY_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_LEGACY_RED), - len); - break; - case RGUI_THEME_DARK_PURPLE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DARK_PURPLE), - len); - break; - case RGUI_THEME_MIDNIGHT_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_MIDNIGHT_BLUE), - len); - break; - case RGUI_THEME_GOLDEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GOLDEN), - len); - break; - case RGUI_THEME_ELECTRIC_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ELECTRIC_BLUE), - len); - break; - case RGUI_THEME_APPLE_GREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_APPLE_GREEN), - len); - break; - case RGUI_THEME_VOLCANIC_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_VOLCANIC_RED), - len); - break; - case RGUI_THEME_LAGOON: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_LAGOON), - len); - break; - case RGUI_THEME_BROGRAMMER: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_BROGRAMMER), - len); - break; - case RGUI_THEME_DRACULA: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DRACULA), - len); - break; - case RGUI_THEME_FAIRYFLOSS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FAIRYFLOSS), - len); - break; - case RGUI_THEME_FLATUI: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FLATUI), - len); - break; - case RGUI_THEME_GRUVBOX_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRUVBOX_DARK), - len); - break; - case RGUI_THEME_GRUVBOX_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRUVBOX_LIGHT), - len); - break; - case RGUI_THEME_HACKING_THE_KERNEL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_HACKING_THE_KERNEL), - len); - break; - case RGUI_THEME_NORD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_NORD), - len); - break; - case RGUI_THEME_NOVA: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_NOVA), - len); - break; - case RGUI_THEME_ONE_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ONE_DARK), - len); - break; - case RGUI_THEME_PALENIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_PALENIGHT), - len); - break; - case RGUI_THEME_SOLARIZED_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_SOLARIZED_DARK), - len); - break; - case RGUI_THEME_SOLARIZED_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_SOLARIZED_LIGHT), - len); - break; - case RGUI_THEME_TANGO_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_TANGO_DARK), - len); - break; - case RGUI_THEME_TANGO_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_TANGO_LIGHT), - len); - break; - case RGUI_THEME_ZENBURN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ZENBURN), - len); - break; - case RGUI_THEME_ANTI_ZENBURN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ANTI_ZENBURN), - len); - break; - case RGUI_THEME_FLUX: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FLUX), - len); - break; - case RGUI_THEME_DYNAMIC: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DYNAMIC), - len); - break; - case RGUI_THEME_GRAY_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_DARK), - len); - break; - case RGUI_THEME_GRAY_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_LIGHT), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RGUI_THEME_CUSTOM: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CUSTOM), + len); + case RGUI_THEME_CLASSIC_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_RED), + len); + case RGUI_THEME_CLASSIC_ORANGE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_ORANGE), + len); + case RGUI_THEME_CLASSIC_YELLOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_YELLOW), + len); + case RGUI_THEME_CLASSIC_GREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_GREEN), + len); + case RGUI_THEME_CLASSIC_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_BLUE), + len); + case RGUI_THEME_CLASSIC_VIOLET: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_VIOLET), + len); + case RGUI_THEME_CLASSIC_GREY: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_CLASSIC_GREY), + len); + case RGUI_THEME_LEGACY_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_LEGACY_RED), + len); + case RGUI_THEME_DARK_PURPLE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DARK_PURPLE), + len); + case RGUI_THEME_MIDNIGHT_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_MIDNIGHT_BLUE), + len); + case RGUI_THEME_GOLDEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GOLDEN), + len); + case RGUI_THEME_ELECTRIC_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ELECTRIC_BLUE), + len); + case RGUI_THEME_APPLE_GREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_APPLE_GREEN), + len); + case RGUI_THEME_VOLCANIC_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_VOLCANIC_RED), + len); + case RGUI_THEME_LAGOON: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_LAGOON), + len); + case RGUI_THEME_BROGRAMMER: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_BROGRAMMER), + len); + case RGUI_THEME_DRACULA: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DRACULA), + len); + case RGUI_THEME_FAIRYFLOSS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FAIRYFLOSS), + len); + case RGUI_THEME_FLATUI: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FLATUI), + len); + case RGUI_THEME_GRUVBOX_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRUVBOX_DARK), + len); + case RGUI_THEME_GRUVBOX_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRUVBOX_LIGHT), + len); + case RGUI_THEME_HACKING_THE_KERNEL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_HACKING_THE_KERNEL), + len); + case RGUI_THEME_NORD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_NORD), + len); + case RGUI_THEME_NOVA: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_NOVA), + len); + case RGUI_THEME_ONE_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ONE_DARK), + len); + case RGUI_THEME_PALENIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_PALENIGHT), + len); + case RGUI_THEME_SOLARIZED_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_SOLARIZED_DARK), + len); + case RGUI_THEME_SOLARIZED_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_SOLARIZED_LIGHT), + len); + case RGUI_THEME_TANGO_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_TANGO_DARK), + len); + case RGUI_THEME_TANGO_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_TANGO_LIGHT), + len); + case RGUI_THEME_ZENBURN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ZENBURN), + len); + case RGUI_THEME_ANTI_ZENBURN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ANTI_ZENBURN), + len); + case RGUI_THEME_FLUX: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_FLUX), + len); + case RGUI_THEME_DYNAMIC: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_DYNAMIC), + len); + case RGUI_THEME_GRAY_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_DARK), + len); + case RGUI_THEME_GRAY_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GRAY_LIGHT), + len); + } } + return 0; } -static void setting_get_string_representation_uint_rgui_thumbnail_scaler( +static size_t setting_get_string_representation_uint_rgui_thumbnail_scaler( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RGUI_THUMB_SCALE_POINT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_THUMB_SCALE_POINT), - len); - break; - case RGUI_THUMB_SCALE_BILINEAR: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_THUMB_SCALE_BILINEAR), - len); - break; - case RGUI_THUMB_SCALE_SINC: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_THUMB_SCALE_SINC), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RGUI_THUMB_SCALE_POINT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_THUMB_SCALE_POINT), + len); + case RGUI_THUMB_SCALE_BILINEAR: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_THUMB_SCALE_BILINEAR), + len); + case RGUI_THUMB_SCALE_SINC: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_THUMB_SCALE_SINC), + len); + } } + return 0; } -static void setting_get_string_representation_uint_rgui_internal_upscale_level( +static size_t setting_get_string_representation_uint_rgui_internal_upscale_level( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RGUI_UPSCALE_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_NONE), - len); - break; - case RGUI_UPSCALE_AUTO: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_AUTO), - len); - break; - case RGUI_UPSCALE_X2: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X2), - len); - break; - case RGUI_UPSCALE_X3: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X3), - len); - break; - case RGUI_UPSCALE_X4: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X4), - len); - break; - case RGUI_UPSCALE_X5: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X5), - len); - break; - case RGUI_UPSCALE_X6: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X6), - len); - break; - case RGUI_UPSCALE_X7: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X7), - len); - break; - case RGUI_UPSCALE_X8: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X8), - len); - break; - case RGUI_UPSCALE_X9: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X9), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RGUI_UPSCALE_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_NONE), + len); + case RGUI_UPSCALE_AUTO: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_AUTO), + len); + case RGUI_UPSCALE_X2: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X2), + len); + case RGUI_UPSCALE_X3: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X3), + len); + case RGUI_UPSCALE_X4: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X4), + len); + case RGUI_UPSCALE_X5: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X5), + len); + case RGUI_UPSCALE_X6: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X6), + len); + case RGUI_UPSCALE_X7: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X7), + len); + case RGUI_UPSCALE_X8: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X8), + len); + case RGUI_UPSCALE_X9: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_UPSCALE_X9), + len); + } } + return 0; } #if !defined(DINGUX) -static void setting_get_string_representation_uint_rgui_aspect_ratio( +static size_t setting_get_string_representation_uint_rgui_aspect_ratio( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RGUI_ASPECT_RATIO_4_3: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_4_3), - len); - break; - case RGUI_ASPECT_RATIO_16_9: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_9), - len); - break; - case RGUI_ASPECT_RATIO_16_9_CENTRE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_9_CENTRE), - len); - break; - case RGUI_ASPECT_RATIO_16_10: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_10), - len); - break; - case RGUI_ASPECT_RATIO_16_10_CENTRE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_10_CENTRE), - len); - break; - case RGUI_ASPECT_RATIO_21_9: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_21_9), - len); - break; - case RGUI_ASPECT_RATIO_21_9_CENTRE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_21_9_CENTRE), - len); - break; - case RGUI_ASPECT_RATIO_3_2: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_3_2), - len); - break; - case RGUI_ASPECT_RATIO_3_2_CENTRE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_3_2_CENTRE), - len); - break; - case RGUI_ASPECT_RATIO_5_3: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_5_3), - len); - break; - case RGUI_ASPECT_RATIO_5_3_CENTRE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_5_3_CENTRE), - len); - break; - case RGUI_ASPECT_RATIO_AUTO: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_AUTO), - len); - break; - + switch (*setting->value.target.unsigned_integer) + { + case RGUI_ASPECT_RATIO_4_3: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_4_3), + len); + case RGUI_ASPECT_RATIO_16_9: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_9), + len); + case RGUI_ASPECT_RATIO_16_9_CENTRE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_9_CENTRE), + len); + case RGUI_ASPECT_RATIO_16_10: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_10), + len); + case RGUI_ASPECT_RATIO_16_10_CENTRE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_16_10_CENTRE), + len); + case RGUI_ASPECT_RATIO_21_9: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_21_9), + len); + case RGUI_ASPECT_RATIO_21_9_CENTRE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_21_9_CENTRE), + len); + case RGUI_ASPECT_RATIO_3_2: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_3_2), + len); + case RGUI_ASPECT_RATIO_3_2_CENTRE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_3_2_CENTRE), + len); + case RGUI_ASPECT_RATIO_5_3: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_5_3), + len); + case RGUI_ASPECT_RATIO_5_3_CENTRE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_5_3_CENTRE), + len); + case RGUI_ASPECT_RATIO_AUTO: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_AUTO), + len); + } } + return 0; } -static void setting_get_string_representation_uint_rgui_aspect_ratio_lock( +static size_t setting_get_string_representation_uint_rgui_aspect_ratio_lock( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RGUI_ASPECT_RATIO_LOCK_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_NONE), - len); - break; - case RGUI_ASPECT_RATIO_LOCK_FIT_SCREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_FIT_SCREEN), - len); - break; - case RGUI_ASPECT_RATIO_LOCK_INTEGER: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_INTEGER), - len); - break; - case RGUI_ASPECT_RATIO_LOCK_FILL_SCREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_FILL_SCREEN), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RGUI_ASPECT_RATIO_LOCK_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_NONE), + len); + case RGUI_ASPECT_RATIO_LOCK_FIT_SCREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_FIT_SCREEN), + len); + case RGUI_ASPECT_RATIO_LOCK_INTEGER: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_INTEGER), + len); + case RGUI_ASPECT_RATIO_LOCK_FILL_SCREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_ASPECT_RATIO_LOCK_FILL_SCREEN), + len); + } } + return 0; } #endif -static void setting_get_string_representation_uint_rgui_particle_effect( +static size_t setting_get_string_representation_uint_rgui_particle_effect( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RGUI_PARTICLE_EFFECT_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_NONE), - len); - break; - case RGUI_PARTICLE_EFFECT_SNOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_SNOW), - len); - break; - case RGUI_PARTICLE_EFFECT_SNOW_ALT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_SNOW_ALT), - len); - break; - case RGUI_PARTICLE_EFFECT_RAIN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_RAIN), - len); - break; - case RGUI_PARTICLE_EFFECT_VORTEX: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_VORTEX), - len); - break; - case RGUI_PARTICLE_EFFECT_STARFIELD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_STARFIELD), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RGUI_PARTICLE_EFFECT_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_NONE), + len); + case RGUI_PARTICLE_EFFECT_SNOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_SNOW), + len); + case RGUI_PARTICLE_EFFECT_SNOW_ALT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_SNOW_ALT), + len); + case RGUI_PARTICLE_EFFECT_RAIN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_RAIN), + len); + case RGUI_PARTICLE_EFFECT_VORTEX: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_VORTEX), + len); + case RGUI_PARTICLE_EFFECT_STARFIELD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RGUI_PARTICLE_EFFECT_STARFIELD), + len); + } } + return 0; } #ifdef HAVE_XMB -static void setting_get_string_representation_uint_menu_xmb_animation_move_up_down( +static size_t setting_get_string_representation_uint_menu_xmb_animation_move_up_down( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, "Easing Out Quad", len); - break; - case 1: - strlcpy(s, "Easing Out Expo", len); - break; - case 2: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, "Easing Out Quad", len); + case 1: + return strlcpy(s, "Easing Out Expo", len); + case 2: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_xmb_animation_opening_main_menu( +static size_t setting_get_string_representation_uint_menu_xmb_animation_opening_main_menu( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, "Easing Out Quad", len); - break; - case 1: - strlcpy(s, "Easing Out Circ", len); - break; - case 2: - strlcpy(s, "Easing Out Expo", len); - break; - case 3: - strlcpy(s, "Easing Out Bounce", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, "Easing Out Quad", len); + case 1: + return strlcpy(s, "Easing Out Circ", len); + case 2: + return strlcpy(s, "Easing Out Expo", len); + case 3: + return strlcpy(s, "Easing Out Bounce", len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_xmb_animation_horizontal_highlight( +static size_t setting_get_string_representation_uint_menu_xmb_animation_horizontal_highlight( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, "Easing Out Quad", len); - break; - case 1: - strlcpy(s, "Easing In Sine", len); - break; - case 2: - strlcpy(s, "Easing Out Bounce", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, "Easing Out Quad", len); + case 1: + return strlcpy(s, "Easing In Sine", len); + case 2: + return strlcpy(s, "Easing Out Bounce", len); + } } + return 0; } #endif -static void setting_get_string_representation_uint_menu_ticker_type( +static size_t setting_get_string_representation_uint_menu_ticker_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case TICKER_TYPE_BOUNCE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_TICKER_TYPE_BOUNCE), - len); - break; - case TICKER_TYPE_LOOP: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_TICKER_TYPE_LOOP), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case TICKER_TYPE_BOUNCE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_TICKER_TYPE_BOUNCE), + len); + case TICKER_TYPE_LOOP: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_TICKER_TYPE_LOOP), + len); + } } + return 0; } #ifdef HAVE_XMB -static void setting_get_string_representation_uint_xmb_icon_theme( +static size_t setting_get_string_representation_uint_xmb_icon_theme( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case XMB_ICON_THEME_MONOCHROME: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME), len); - break; - case XMB_ICON_THEME_FLATUI: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_FLATUI), len); - break; - case XMB_ICON_THEME_FLATUX: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_FLATUX), len); - break; - case XMB_ICON_THEME_RETROSYSTEM: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_RETROSYSTEM), len); - break; - case XMB_ICON_THEME_PIXEL: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_PIXEL), len); - break; - case XMB_ICON_THEME_SYSTEMATIC: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_SYSTEMATIC), len); - break; - case XMB_ICON_THEME_DOTART: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_DOTART), len); - break; - case XMB_ICON_THEME_MONOCHROME_INVERTED: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME_INVERTED), len); - break; - case XMB_ICON_THEME_CUSTOM: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_CUSTOM), len); - break; - case XMB_ICON_THEME_AUTOMATIC: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_AUTOMATIC), len); - break; - case XMB_ICON_THEME_AUTOMATIC_INVERTED: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_AUTOMATIC_INVERTED), len); - break; - case XMB_ICON_THEME_DAITE: - strlcpy(s, - msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_DAITE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case XMB_ICON_THEME_MONOCHROME: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME), len); + case XMB_ICON_THEME_FLATUI: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_FLATUI), len); + case XMB_ICON_THEME_FLATUX: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_FLATUX), len); + case XMB_ICON_THEME_RETROSYSTEM: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_RETROSYSTEM), len); + case XMB_ICON_THEME_PIXEL: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_PIXEL), len); + case XMB_ICON_THEME_SYSTEMATIC: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_SYSTEMATIC), len); + case XMB_ICON_THEME_DOTART: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_DOTART), len); + case XMB_ICON_THEME_MONOCHROME_INVERTED: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME_INVERTED), len); + case XMB_ICON_THEME_CUSTOM: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_CUSTOM), len); + case XMB_ICON_THEME_AUTOMATIC: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_AUTOMATIC), len); + case XMB_ICON_THEME_AUTOMATIC_INVERTED: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_AUTOMATIC_INVERTED), len); + case XMB_ICON_THEME_DAITE: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_DAITE), len); + } } + return 0; } -static void setting_get_string_representation_uint_xmb_layout( +static size_t setting_get_string_representation_uint_xmb_layout( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, "Auto", len); - break; - case 1: - strlcpy(s, "Console", len); - break; - case 2: - strlcpy(s, "Handheld", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, "Auto", len); + case 1: + return strlcpy(s, "Console", len); + case 2: + return strlcpy(s, "Handheld", len); + } } + return 0; } -static void setting_get_string_representation_uint_xmb_menu_color_theme( +static size_t setting_get_string_representation_uint_xmb_menu_color_theme( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case XMB_THEME_WALLPAPER: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PLAIN), - len); - break; - case XMB_THEME_LEGACY_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LEGACY_RED), - len); - break; - case XMB_THEME_DARK_PURPLE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_DARK_PURPLE), - len); - break; - case XMB_THEME_MIDNIGHT_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MIDNIGHT_BLUE), - len); - break; - case XMB_THEME_GOLDEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GOLDEN), - len); - break; - case XMB_THEME_ELECTRIC_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ELECTRIC_BLUE), - len); - break; - case XMB_THEME_APPLE_GREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_APPLE_GREEN), - len); - break; - case XMB_THEME_UNDERSEA: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_UNDERSEA), - len); - break; - case XMB_THEME_VOLCANIC_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_VOLCANIC_RED), - len); - break; - case XMB_THEME_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_DARK), - len); - break; - case XMB_THEME_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIGHT), - len); - break; - case XMB_THEME_MORNING_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MORNING_BLUE), - len); - break; - case XMB_THEME_SUNBEAM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_SUNBEAM), - len); - break; - case XMB_THEME_LIME: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIME), - len); - break; - case XMB_THEME_MIDGAR: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MIDGAR), - len); - break; - case XMB_THEME_PIKACHU_YELLOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PIKACHU_YELLOW), - len); - break; - case XMB_THEME_GAMECUBE_PURPLE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GAMECUBE_PURPLE), - len); - break; - case XMB_THEME_FAMICOM_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FAMICOM_RED), - len); - break; - case XMB_THEME_FLAMING_HOT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FLAMING_HOT), - len); - break; - case XMB_THEME_ICE_COLD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ICE_COLD), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case XMB_THEME_WALLPAPER: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PLAIN), + len); + case XMB_THEME_LEGACY_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LEGACY_RED), + len); + case XMB_THEME_DARK_PURPLE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_DARK_PURPLE), + len); + case XMB_THEME_MIDNIGHT_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MIDNIGHT_BLUE), + len); + case XMB_THEME_GOLDEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GOLDEN), + len); + case XMB_THEME_ELECTRIC_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ELECTRIC_BLUE), + len); + case XMB_THEME_APPLE_GREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_APPLE_GREEN), + len); + case XMB_THEME_UNDERSEA: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_UNDERSEA), + len); + case XMB_THEME_VOLCANIC_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_VOLCANIC_RED), + len); + case XMB_THEME_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_DARK), + len); + case XMB_THEME_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIGHT), + len); + case XMB_THEME_MORNING_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MORNING_BLUE), + len); + case XMB_THEME_SUNBEAM: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_SUNBEAM), + len); + case XMB_THEME_LIME: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIME), + len); + case XMB_THEME_MIDGAR: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MIDGAR), + len); + case XMB_THEME_PIKACHU_YELLOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PIKACHU_YELLOW), + len); + case XMB_THEME_GAMECUBE_PURPLE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GAMECUBE_PURPLE), + len); + case XMB_THEME_FAMICOM_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FAMICOM_RED), + len); + case XMB_THEME_FLAMING_HOT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FLAMING_HOT), + len); + case XMB_THEME_ICE_COLD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ICE_COLD), + len); + } } + return 0; } #endif #ifdef HAVE_MATERIALUI -static void setting_get_string_representation_uint_materialui_menu_color_theme( +static size_t setting_get_string_representation_uint_materialui_menu_color_theme( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MATERIALUI_THEME_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE), len); - break; - case MATERIALUI_THEME_BLUE_GREY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE_GREY), len); - break; - case MATERIALUI_THEME_GREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GREEN), len); - break; - case MATERIALUI_THEME_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_RED), len); - break; - case MATERIALUI_THEME_YELLOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_YELLOW), len); - break; - case MATERIALUI_THEME_DARK_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_DARK_BLUE), len); - break; - case MATERIALUI_THEME_NVIDIA_SHIELD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_NVIDIA_SHIELD), len); - break; - case MATERIALUI_THEME_MATERIALUI: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_MATERIALUI), len); - break; - case MATERIALUI_THEME_MATERIALUI_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_MATERIALUI_DARK), len); - break; - case MATERIALUI_THEME_OZONE_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_OZONE_DARK), len); - break; - case MATERIALUI_THEME_NORD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_NORD), len); - break; - case MATERIALUI_THEME_GRUVBOX_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GRUVBOX_DARK), len); - break; - case MATERIALUI_THEME_SOLARIZED_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_SOLARIZED_DARK), len); - break; - case MATERIALUI_THEME_CUTIE_BLUE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_BLUE), len); - break; - case MATERIALUI_THEME_CUTIE_CYAN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_CYAN), len); - break; - case MATERIALUI_THEME_CUTIE_GREEN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_GREEN), len); - break; - case MATERIALUI_THEME_CUTIE_ORANGE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_ORANGE), len); - break; - case MATERIALUI_THEME_CUTIE_PINK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_PINK), len); - break; - case MATERIALUI_THEME_CUTIE_PURPLE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_PURPLE), len); - break; - case MATERIALUI_THEME_CUTIE_RED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_RED), len); - break; - case MATERIALUI_THEME_VIRTUAL_BOY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_VIRTUAL_BOY), len); - break; - case MATERIALUI_THEME_HACKING_THE_KERNEL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_HACKING_THE_KERNEL), len); - break; - case MATERIALUI_THEME_GRAY_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GRAY_DARK), len); - break; - case MATERIALUI_THEME_GRAY_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GRAY_LIGHT), len); - break; - default: - break; + switch (*setting->value.target.unsigned_integer) + { + case MATERIALUI_THEME_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE), len); + case MATERIALUI_THEME_BLUE_GREY: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_BLUE_GREY), len); + case MATERIALUI_THEME_GREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GREEN), len); + case MATERIALUI_THEME_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_RED), len); + case MATERIALUI_THEME_YELLOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_YELLOW), len); + case MATERIALUI_THEME_DARK_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_DARK_BLUE), len); + case MATERIALUI_THEME_NVIDIA_SHIELD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_NVIDIA_SHIELD), len); + case MATERIALUI_THEME_MATERIALUI: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_MATERIALUI), len); + case MATERIALUI_THEME_MATERIALUI_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_MATERIALUI_DARK), len); + case MATERIALUI_THEME_OZONE_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_OZONE_DARK), len); + case MATERIALUI_THEME_NORD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_NORD), len); + case MATERIALUI_THEME_GRUVBOX_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GRUVBOX_DARK), len); + case MATERIALUI_THEME_SOLARIZED_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_SOLARIZED_DARK), len); + case MATERIALUI_THEME_CUTIE_BLUE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_BLUE), len); + case MATERIALUI_THEME_CUTIE_CYAN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_CYAN), len); + case MATERIALUI_THEME_CUTIE_GREEN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_GREEN), len); + case MATERIALUI_THEME_CUTIE_ORANGE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_ORANGE), len); + case MATERIALUI_THEME_CUTIE_PINK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_PINK), len); + case MATERIALUI_THEME_CUTIE_PURPLE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_PURPLE), len); + case MATERIALUI_THEME_CUTIE_RED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_CUTIE_RED), len); + case MATERIALUI_THEME_VIRTUAL_BOY: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_VIRTUAL_BOY), len); + case MATERIALUI_THEME_HACKING_THE_KERNEL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_HACKING_THE_KERNEL), len); + case MATERIALUI_THEME_GRAY_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GRAY_DARK), len); + case MATERIALUI_THEME_GRAY_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_COLOR_THEME_GRAY_LIGHT), len); + default: + break; + } } + return 0; } -static void setting_get_string_representation_uint_materialui_menu_transition_animation( +static size_t setting_get_string_representation_uint_materialui_menu_transition_animation( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MATERIALUI_TRANSITION_ANIM_AUTO: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_AUTO), len); - break; - case MATERIALUI_TRANSITION_ANIM_FADE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_FADE), len); - break; - case MATERIALUI_TRANSITION_ANIM_SLIDE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_SLIDE), len); - break; - case MATERIALUI_TRANSITION_ANIM_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_NONE), len); - break; - default: - break; + switch (*setting->value.target.unsigned_integer) + { + case MATERIALUI_TRANSITION_ANIM_AUTO: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_AUTO), len); + case MATERIALUI_TRANSITION_ANIM_FADE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_FADE), len); + case MATERIALUI_TRANSITION_ANIM_SLIDE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_SLIDE), len); + case MATERIALUI_TRANSITION_ANIM_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_MENU_TRANSITION_ANIM_NONE), len); + default: + break; + } } + return 0; } -static void setting_get_string_representation_uint_materialui_menu_thumbnail_view_portrait( +static size_t setting_get_string_representation_uint_materialui_menu_thumbnail_view_portrait( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DISABLED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DISABLED), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_SMALL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_SMALL), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_MEDIUM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_MEDIUM), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DUAL_ICON: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DUAL_ICON), len); - break; - default: - break; + switch (*setting->value.target.unsigned_integer) + { + case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DISABLED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DISABLED), len); + case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_SMALL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_SMALL), len); + case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_MEDIUM: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_LIST_MEDIUM), len); + case MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DUAL_ICON: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_PORTRAIT_DUAL_ICON), len); + default: + break; + } } + return 0; } -static void setting_get_string_representation_uint_materialui_menu_thumbnail_view_landscape( +static size_t setting_get_string_representation_uint_materialui_menu_thumbnail_view_landscape( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DISABLED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DISABLED), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_SMALL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_SMALL), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_MEDIUM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_MEDIUM), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_LARGE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_LARGE), len); - break; - case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DESKTOP: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DESKTOP), len); - break; - default: - break; + switch (*setting->value.target.unsigned_integer) + { + case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DISABLED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DISABLED), len); + case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_SMALL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_SMALL), len); + case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_MEDIUM: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_MEDIUM), len); + case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_LARGE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_LIST_LARGE), len); + case MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DESKTOP: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_THUMBNAIL_VIEW_LANDSCAPE_DESKTOP), len); + default: + break; + } } + return 0; } -static void setting_get_string_representation_uint_materialui_landscape_layout_optimization( +static size_t setting_get_string_representation_uint_materialui_landscape_layout_optimization( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_DISABLED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_DISABLED), len); - break; - case MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_ALWAYS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_ALWAYS), len); - break; - case MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_EXCLUDE_THUMBNAIL_VIEWS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_EXCLUDE_THUMBNAIL_VIEWS), len); - break; - default: - break; + switch (*setting->value.target.unsigned_integer) + { + case MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_DISABLED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_DISABLED), len); + case MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_ALWAYS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_ALWAYS), len); + case MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_EXCLUDE_THUMBNAIL_VIEWS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MATERIALUI_LANDSCAPE_LAYOUT_OPTIMIZATION_EXCLUDE_THUMBNAIL_VIEWS), len); + default: + break; + } } + return 0; } #endif #ifdef HAVE_OZONE -static void setting_get_string_representation_uint_ozone_menu_color_theme( +static size_t setting_get_string_representation_uint_ozone_menu_color_theme( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case OZONE_COLOR_THEME_BASIC_BLACK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_BLACK), len); - break; - case OZONE_COLOR_THEME_NORD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_NORD), len); - break; - case OZONE_COLOR_THEME_GRUVBOX_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRUVBOX_DARK), len); - break; - case OZONE_COLOR_THEME_BOYSENBERRY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BOYSENBERRY), len); - break; - case OZONE_COLOR_THEME_HACKING_THE_KERNEL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_HACKING_THE_KERNEL), len); - break; - case OZONE_COLOR_THEME_TWILIGHT_ZONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_TWILIGHT_ZONE), len); - break; - case OZONE_COLOR_THEME_DRACULA: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA), len); - break; - case OZONE_COLOR_THEME_SELENIUM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SELENIUM), len); - break; - case OZONE_COLOR_THEME_SOLARIZED_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK), len); - break; - case OZONE_COLOR_THEME_SOLARIZED_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_LIGHT), len); - break; - case OZONE_COLOR_THEME_GRAY_DARK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRAY_DARK), len); - break; - case OZONE_COLOR_THEME_GRAY_LIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRAY_LIGHT), len); - break; - case OZONE_COLOR_THEME_PURPLE_RAIN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_PURPLE_RAIN), len); - break; - case OZONE_COLOR_THEME_BASIC_WHITE: - default: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_WHITE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case OZONE_COLOR_THEME_BASIC_BLACK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_BLACK), len); + case OZONE_COLOR_THEME_NORD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_NORD), len); + case OZONE_COLOR_THEME_GRUVBOX_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRUVBOX_DARK), len); + case OZONE_COLOR_THEME_BOYSENBERRY: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BOYSENBERRY), len); + case OZONE_COLOR_THEME_HACKING_THE_KERNEL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_HACKING_THE_KERNEL), len); + case OZONE_COLOR_THEME_TWILIGHT_ZONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_TWILIGHT_ZONE), len); + case OZONE_COLOR_THEME_DRACULA: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_DRACULA), len); + case OZONE_COLOR_THEME_SELENIUM: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SELENIUM), len); + case OZONE_COLOR_THEME_SOLARIZED_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_DARK), len); + case OZONE_COLOR_THEME_SOLARIZED_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_SOLARIZED_LIGHT), len); + case OZONE_COLOR_THEME_GRAY_DARK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRAY_DARK), len); + case OZONE_COLOR_THEME_GRAY_LIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_GRAY_LIGHT), len); + case OZONE_COLOR_THEME_PURPLE_RAIN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_PURPLE_RAIN), len); + case OZONE_COLOR_THEME_BASIC_WHITE: + default: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OZONE_COLOR_THEME_BASIC_WHITE), len); + } } + return 0; } #endif #if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) #if defined(HAVE_XMB) && defined(HAVE_SHADERPIPELINE) -static void setting_get_string_representation_uint_xmb_shader_pipeline( +static size_t setting_get_string_representation_uint_xmb_shader_pipeline( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case XMB_SHADER_PIPELINE_WALLPAPER: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case XMB_SHADER_PIPELINE_SIMPLE_RIBBON: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON_SIMPLIFIED), len); - break; - case XMB_SHADER_PIPELINE_RIBBON: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON), len); - break; - case XMB_SHADER_PIPELINE_SIMPLE_SNOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SIMPLE_SNOW), len); - break; - case XMB_SHADER_PIPELINE_SNOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOW), len); - break; - case XMB_SHADER_PIPELINE_BOKEH: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_BOKEH), len); - break; - case XMB_SHADER_PIPELINE_SNOWFLAKE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOWFLAKE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case XMB_SHADER_PIPELINE_WALLPAPER: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + case XMB_SHADER_PIPELINE_SIMPLE_RIBBON: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON_SIMPLIFIED), len); + case XMB_SHADER_PIPELINE_RIBBON: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON), len); + case XMB_SHADER_PIPELINE_SIMPLE_SNOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SIMPLE_SNOW), len); + case XMB_SHADER_PIPELINE_SNOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOW), len); + case XMB_SHADER_PIPELINE_BOKEH: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_BOKEH), len); + case XMB_SHADER_PIPELINE_SNOWFLAKE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOWFLAKE), len); + } } + return 0; } #endif #endif #ifdef HAVE_SCREENSHOTS #ifdef HAVE_GFX_WIDGETS -static void setting_get_string_representation_uint_notification_show_screenshot_duration( +static size_t setting_get_string_representation_uint_notification_show_screenshot_duration( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case NOTIFICATION_SHOW_SCREENSHOT_DURATION_NORMAL: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_NORMAL), len); - break; - case NOTIFICATION_SHOW_SCREENSHOT_DURATION_FAST: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_FAST), len); - break; - case NOTIFICATION_SHOW_SCREENSHOT_DURATION_VERY_FAST: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_VERY_FAST), len); - break; - case NOTIFICATION_SHOW_SCREENSHOT_DURATION_INSTANT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_INSTANT), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case NOTIFICATION_SHOW_SCREENSHOT_DURATION_NORMAL: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_NORMAL), len); + case NOTIFICATION_SHOW_SCREENSHOT_DURATION_FAST: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_FAST), len); + case NOTIFICATION_SHOW_SCREENSHOT_DURATION_VERY_FAST: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_VERY_FAST), len); + case NOTIFICATION_SHOW_SCREENSHOT_DURATION_INSTANT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_DURATION_INSTANT), len); + } } + return 0; } -static void setting_get_string_representation_uint_notification_show_screenshot_flash( +static size_t setting_get_string_representation_uint_notification_show_screenshot_flash( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case NOTIFICATION_SHOW_SCREENSHOT_FLASH_NORMAL: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_FLASH_NORMAL), len); - break; - case NOTIFICATION_SHOW_SCREENSHOT_FLASH_FAST: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_FLASH_FAST), len); - break; - case NOTIFICATION_SHOW_SCREENSHOT_FLASH_OFF: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case NOTIFICATION_SHOW_SCREENSHOT_FLASH_NORMAL: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_FLASH_NORMAL), len); + case NOTIFICATION_SHOW_SCREENSHOT_FLASH_FAST: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOTIFICATION_SHOW_SCREENSHOT_FLASH_FAST), len); + case NOTIFICATION_SHOW_SCREENSHOT_FLASH_OFF: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + } } + return 0; } #endif #endif -static void setting_get_string_representation_uint_video_autoswitch_refresh_rate( +static size_t setting_get_string_representation_uint_video_autoswitch_refresh_rate( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case AUTOSWITCH_REFRESH_RATE_EXCLUSIVE_FULLSCREEN: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_AUTOSWITCH_REFRESH_RATE_EXCLUSIVE_FULLSCREEN), len); - break; - case AUTOSWITCH_REFRESH_RATE_WINDOWED_FULLSCREEN: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_AUTOSWITCH_REFRESH_RATE_WINDOWED_FULLSCREEN), len); - break; - case AUTOSWITCH_REFRESH_RATE_ALL_FULLSCREEN: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_AUTOSWITCH_REFRESH_RATE_ALL_FULLSCREEN), len); - break; - case AUTOSWITCH_REFRESH_RATE_OFF: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case AUTOSWITCH_REFRESH_RATE_EXCLUSIVE_FULLSCREEN: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_AUTOSWITCH_REFRESH_RATE_EXCLUSIVE_FULLSCREEN), len); + case AUTOSWITCH_REFRESH_RATE_WINDOWED_FULLSCREEN: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_AUTOSWITCH_REFRESH_RATE_WINDOWED_FULLSCREEN), len); + case AUTOSWITCH_REFRESH_RATE_ALL_FULLSCREEN: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_AUTOSWITCH_REFRESH_RATE_ALL_FULLSCREEN), len); + case AUTOSWITCH_REFRESH_RATE_OFF: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), len); + } } + return 0; } -static void setting_get_string_representation_uint_video_monitor_index(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_video_monitor_index( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - if (*setting->value.target.unsigned_integer) - snprintf(s, len, "%u", + if (setting && *setting->value.target.unsigned_integer) + return snprintf(s, len, "%u", *setting->value.target.unsigned_integer); - else - strlcpy(s, "0 (Auto)", len); + return strlcpy(s, "0 (Auto)", len); } -static void setting_get_string_representation_uint_custom_vp_width(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_custom_vp_width( + rarch_setting_t *setting, char *s, size_t len) { size_t _len; struct retro_game_geometry *geom = NULL; @@ -4932,24 +4727,22 @@ static void setting_get_string_representation_uint_custom_vp_width(rarch_setting struct retro_system_av_info *av_info = &video_st->av_info; unsigned int rotation = retroarch_get_rotation(); if (!setting || !av_info) - return; - + return 0; geom = (struct retro_game_geometry*)&av_info->geometry; _len = snprintf(s, len, "%u", *setting->value.target.unsigned_integer); - if (!geom->base_width || !geom->base_height) - return; - + return _len; if (!(rotation % 2) && (*setting->value.target.unsigned_integer % geom->base_width == 0)) - snprintf(s + _len, len - _len, " (%ux)", + _len += snprintf(s + _len, len - _len, " (%ux)", *setting->value.target.unsigned_integer / geom->base_width); else if ((rotation % 2) && (*setting->value.target.unsigned_integer % geom->base_height == 0)) - snprintf(s + _len, len - _len, " (%ux)", + _len += snprintf(s + _len, len - _len, " (%ux)", *setting->value.target.unsigned_integer / geom->base_height); + return _len; } -static void setting_get_string_representation_uint_custom_vp_height(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_custom_vp_height( + rarch_setting_t *setting, char *s, size_t len) { size_t _len; struct retro_game_geometry *geom = NULL; @@ -4957,32 +4750,28 @@ static void setting_get_string_representation_uint_custom_vp_height(rarch_settin struct retro_system_av_info *av_info = &video_st->av_info; unsigned int rotation = retroarch_get_rotation(); if (!setting || !av_info) - return; - + return 0; geom = (struct retro_game_geometry*)&av_info->geometry; _len = snprintf(s, len, "%u", *setting->value.target.unsigned_integer); - if (!geom->base_width || !geom->base_height) - return; - + return _len; if (!(rotation % 2) && (*setting->value.target.unsigned_integer % geom->base_height == 0)) - snprintf(s + _len, len - _len, " (%ux)", + _len += snprintf(s + _len, len - _len, " (%ux)", *setting->value.target.unsigned_integer / geom->base_height); else if ((rotation % 2) && (*setting->value.target.unsigned_integer % geom->base_width == 0)) - snprintf(s + _len, len - _len, " (%ux)", + _len += snprintf(s + _len, len - _len, " (%ux)", *setting->value.target.unsigned_integer / geom->base_width); + return _len; } #ifdef HAVE_WASAPI -static void setting_get_string_representation_uint_audio_wasapi_sh_buffer_length(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_audio_wasapi_sh_buffer_length( + rarch_setting_t *setting, char *s, size_t len) { size_t _len; settings_t *settings = config_get_ptr(); - if (!setting || !settings) - return; - + return 0; _len = snprintf(s, len, "%u (", *setting->value.target.integer); switch (*setting->value.target.integer) { @@ -5003,545 +4792,513 @@ static void setting_get_string_representation_uint_audio_wasapi_sh_buffer_length (float)*setting->value.target.integer * 1000 / settings->uints.audio_output_sample_rate); break; } - strlcpy(s + _len, ")", len - _len); + _len += strlcpy(s + _len, ")", len - _len); + return _len; } #ifdef HAVE_MICROPHONE -static void setting_get_string_representation_uint_microphone_wasapi_sh_buffer_length(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_microphone_wasapi_sh_buffer_length( + rarch_setting_t *setting, char *s, size_t len) { settings_t *settings = config_get_ptr(); - if (!setting || !settings) - return; - + return 0; if (*setting->value.target.integer > 0) - snprintf(s, len, "%u (%.1f ms)", + return snprintf(s, len, "%u (%.1f ms)", *setting->value.target.integer, (float)*setting->value.target.integer * 1000 / settings->uints.audio_output_sample_rate); - else - strlcpy(s, "Auto", len); + return strlcpy(s, "Auto", len); } #endif #endif #if !defined(RARCH_CONSOLE) -static void setting_get_string_representation_string_audio_device(rarch_setting_t *setting, +static size_t setting_get_string_representation_string_audio_device(rarch_setting_t *setting, char *s, size_t len) { if (!setting) - return; - + return 0; if (string_is_empty(setting->value.target.string)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); - else - strlcpy(s, setting->value.target.string, len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); + return strlcpy(s, setting->value.target.string, len); } #endif -static void setting_get_string_representation_crt_switch_resolution_super( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_crt_switch_resolution_super( + rarch_setting_t *setting, char *s, size_t len) { if (!setting) - return; - + return 0; if (*setting->value.target.unsigned_integer == 0) - strlcpy(s, "NATIVE", len); + return strlcpy(s, "NATIVE", len); else if (*setting->value.target.unsigned_integer == 1) - strlcpy(s, "DYNAMIC", len); - else - snprintf(s, len, "%d", *setting->value.target.unsigned_integer); + return strlcpy(s, "DYNAMIC", len); + return snprintf(s, len, "%d", *setting->value.target.unsigned_integer); } -static void setting_get_string_representation_uint_playlist_sublabel_runtime_type( +static size_t setting_get_string_representation_uint_playlist_sublabel_runtime_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case PLAYLIST_RUNTIME_PER_CORE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_RUNTIME_PER_CORE), - len); - break; - case PLAYLIST_RUNTIME_AGGREGATE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_RUNTIME_AGGREGATE), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case PLAYLIST_RUNTIME_PER_CORE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_RUNTIME_PER_CORE), + len); + case PLAYLIST_RUNTIME_AGGREGATE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_RUNTIME_AGGREGATE), + len); + } } + return 0; } -static void setting_get_string_representation_uint_playlist_sublabel_last_played_style( +static size_t setting_get_string_representation_uint_playlist_sublabel_last_played_style( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + size_t _len = 0; + if (setting) { - case PLAYLIST_LAST_PLAYED_STYLE_YMD_HMS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_YMD_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_YMD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_YM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HMS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MD_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MD), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HMS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMM_HM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_YMD_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_YMD_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_MD_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HMS_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_DDMM_HM_AMPM: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM_AMPM), - len); - break; - case PLAYLIST_LAST_PLAYED_STYLE_AGO: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_TIMEDATE_AGO), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case PLAYLIST_LAST_PLAYED_STYLE_YMD_HMS: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_YMD_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_YMD: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_YM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HMS: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MD_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MD: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MD), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HMS: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMM_HM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_YMD_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HMS_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_YMD_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_YMD_HM_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HMS_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MDYYYY_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MDYYYY_HM_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_MD_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_MD_HM_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HMS_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HMS_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMMYYYY_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMMYYYY_HM_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_DDMM_HM_AMPM: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_DDMM_HM_AMPM), + len); + break; + case PLAYLIST_LAST_PLAYED_STYLE_AGO: + _len = strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_TIMEDATE_AGO), + len); + break; + } } /* Change date separator, if required */ setting_set_string_representation_timedate_date_separator(s); + return _len; } -static void setting_get_string_representation_uint_playlist_inline_core_display_type( +static size_t setting_get_string_representation_uint_playlist_inline_core_display_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case PLAYLIST_INLINE_CORE_DISPLAY_HIST_FAV: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_INLINE_CORE_DISPLAY_HIST_FAV), - len); - break; - case PLAYLIST_INLINE_CORE_DISPLAY_ALWAYS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_INLINE_CORE_DISPLAY_ALWAYS), - len); - break; - case PLAYLIST_INLINE_CORE_DISPLAY_NEVER: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_INLINE_CORE_DISPLAY_NEVER), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case PLAYLIST_INLINE_CORE_DISPLAY_HIST_FAV: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_INLINE_CORE_DISPLAY_HIST_FAV), + len); + case PLAYLIST_INLINE_CORE_DISPLAY_ALWAYS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_INLINE_CORE_DISPLAY_ALWAYS), + len); + case PLAYLIST_INLINE_CORE_DISPLAY_NEVER: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_INLINE_CORE_DISPLAY_NEVER), + len); + } } + return 0; } -static void setting_get_string_representation_uint_playlist_entry_remove_enable( +static size_t setting_get_string_representation_uint_playlist_entry_remove_enable( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case PLAYLIST_ENTRY_REMOVE_ENABLE_HIST_FAV: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_ENTRY_REMOVE_ENABLE_HIST_FAV), - len); - break; - case PLAYLIST_ENTRY_REMOVE_ENABLE_ALL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_ENTRY_REMOVE_ENABLE_ALL), - len); - break; - case PLAYLIST_ENTRY_REMOVE_ENABLE_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_PLAYLIST_ENTRY_REMOVE_ENABLE_NONE), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case PLAYLIST_ENTRY_REMOVE_ENABLE_HIST_FAV: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_ENTRY_REMOVE_ENABLE_HIST_FAV), + len); + case PLAYLIST_ENTRY_REMOVE_ENABLE_ALL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_ENTRY_REMOVE_ENABLE_ALL), + len); + case PLAYLIST_ENTRY_REMOVE_ENABLE_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_PLAYLIST_ENTRY_REMOVE_ENABLE_NONE), + len); + } } + return 0; } #ifdef _3DS -static void setting_get_string_representation_uint_video_3ds_display_mode( +static size_t setting_get_string_representation_uint_video_3ds_display_mode( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case CTR_VIDEO_MODE_3D: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_3D), - len); - break; - case CTR_VIDEO_MODE_2D: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D), - len); - break; - case CTR_VIDEO_MODE_2D_400X240: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D_400X240), - len); - break; - case CTR_VIDEO_MODE_2D_800X240: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D_800X240), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case CTR_VIDEO_MODE_3D: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_3D), + len); + case CTR_VIDEO_MODE_2D: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D), + len); + case CTR_VIDEO_MODE_2D_400X240: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D_400X240), + len); + case CTR_VIDEO_MODE_2D_800X240: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CTR_VIDEO_MODE_2D_800X240), + len); + } } } #endif #if defined(DINGUX) -static void setting_get_string_representation_uint_video_dingux_ipu_filter_type( +static size_t setting_get_string_representation_uint_video_dingux_ipu_filter_type( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case DINGUX_IPU_FILTER_BICUBIC: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_IPU_FILTER_BICUBIC), - len); - break; - case DINGUX_IPU_FILTER_BILINEAR: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_IPU_FILTER_BILINEAR), - len); - break; - case DINGUX_IPU_FILTER_NEAREST: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_IPU_FILTER_NEAREST), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case DINGUX_IPU_FILTER_BICUBIC: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_IPU_FILTER_BICUBIC), + len); + case DINGUX_IPU_FILTER_BILINEAR: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_IPU_FILTER_BILINEAR), + len); + case DINGUX_IPU_FILTER_NEAREST: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_IPU_FILTER_NEAREST), + len); + } } + return 0; } #if defined(DINGUX_BETA) -static void setting_get_string_representation_uint_video_dingux_refresh_rate( +static size_t setting_get_string_representation_uint_video_dingux_refresh_rate( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case DINGUX_REFRESH_RATE_60HZ: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_REFRESH_RATE_60HZ), - len); - break; - case DINGUX_REFRESH_RATE_50HZ: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_REFRESH_RATE_50HZ), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case DINGUX_REFRESH_RATE_60HZ: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_REFRESH_RATE_60HZ), + len); + case DINGUX_REFRESH_RATE_50HZ: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_REFRESH_RATE_50HZ), + len); + } } + return 0; } #endif #if defined(RS90) || defined(MIYOO) -static void setting_get_string_representation_uint_video_dingux_rs90_softfilter_type( - rarch_setting_t *setting, char *s, size_t len) -{ - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) - { - case DINGUX_RS90_SOFTFILTER_POINT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_RS90_SOFTFILTER_POINT), - len); - break; - case DINGUX_RS90_SOFTFILTER_BRESENHAM_HORZ: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_RS90_SOFTFILTER_BRESENHAM_HORZ), - len); - break; - } -} -#endif -#endif - -static void setting_get_string_representation_uint_input_auto_game_focus( - rarch_setting_t *setting, char *s, size_t len) -{ - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) - { - case AUTO_GAME_FOCUS_OFF: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_AUTO_GAME_FOCUS_OFF), - len); - break; - case AUTO_GAME_FOCUS_ON: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_AUTO_GAME_FOCUS_ON), - len); - break; - case AUTO_GAME_FOCUS_DETECT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_AUTO_GAME_FOCUS_DETECT), - len); - break; - } -} - -#if defined(HAVE_OVERLAY) -static void setting_get_string_representation_uint_input_overlay_show_inputs( - rarch_setting_t *setting, char *s, size_t len) -{ - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) - { - case OVERLAY_SHOW_INPUT_NONE: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), - len); - break; - case OVERLAY_SHOW_INPUT_TOUCHED: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_SHOW_INPUTS_TOUCHED), - len); - break; - case OVERLAY_SHOW_INPUT_PHYSICAL: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_SHOW_INPUTS_PHYSICAL), - len); - break; - } -} - -static void setting_get_string_representation_uint_input_overlay_show_inputs_port( +static size_t setting_get_string_representation_uint_video_dingux_rs90_softfilter_type( rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%u", - *setting->value.target.unsigned_integer + 1); + { + switch (*setting->value.target.unsigned_integer) + { + case DINGUX_RS90_SOFTFILTER_POINT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_RS90_SOFTFILTER_POINT), + len); + case DINGUX_RS90_SOFTFILTER_BRESENHAM_HORZ: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_VIDEO_DINGUX_RS90_SOFTFILTER_BRESENHAM_HORZ), + len); + } + } + return 0; +} +#endif +#endif + +static size_t setting_get_string_representation_uint_input_auto_game_focus( + rarch_setting_t *setting, char *s, size_t len) +{ + if (setting) + { + switch (*setting->value.target.unsigned_integer) + { + case AUTO_GAME_FOCUS_OFF: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_AUTO_GAME_FOCUS_OFF), + len); + case AUTO_GAME_FOCUS_ON: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_AUTO_GAME_FOCUS_ON), + len); + case AUTO_GAME_FOCUS_DETECT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_AUTO_GAME_FOCUS_DETECT), + len); + } + } + return 0; } -static void setting_get_string_representation_overlay_lightgun_port( +#if defined(HAVE_OVERLAY) +static size_t setting_get_string_representation_uint_input_overlay_show_inputs( + rarch_setting_t *setting, char *s, size_t len) +{ + if (setting) + { + switch (*setting->value.target.unsigned_integer) + { + case OVERLAY_SHOW_INPUT_NONE: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), + len); + case OVERLAY_SHOW_INPUT_TOUCHED: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_SHOW_INPUTS_TOUCHED), + len); + case OVERLAY_SHOW_INPUT_PHYSICAL: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_SHOW_INPUTS_PHYSICAL), + len); + } + } + return 0; +} + +static size_t setting_get_string_representation_uint_input_overlay_show_inputs_port( + rarch_setting_t *setting, char *s, size_t len) +{ + if (setting) + return snprintf(s, len, "%u", + *setting->value.target.unsigned_integer + 1); + return 0; +} + +static size_t setting_get_string_representation_overlay_lightgun_port( rarch_setting_t *setting, char *s, size_t len) { if (setting) { if (*setting->value.target.integer < 0) - strlcpy(s, msg_hash_to_str( + return strlcpy(s, msg_hash_to_str( MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_LIGHTGUN_PORT_ANY), len); - else - snprintf(s, len, "%d", *setting->value.target.integer + 1); + return snprintf(s, len, "%d", *setting->value.target.integer + 1); } + return 0; } -static void setting_get_string_representation_overlay_lightgun_action( +static size_t setting_get_string_representation_overlay_lightgun_action( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case OVERLAY_LIGHTGUN_ACTION_NONE: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_NONE), len); - break; - case OVERLAY_LIGHTGUN_ACTION_TRIGGER: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_TRIGGER), len); - break; - case OVERLAY_LIGHTGUN_ACTION_RELOAD: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_RELOAD), len); - break; - case OVERLAY_LIGHTGUN_ACTION_AUX_A: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_AUX_A), len); - break; - case OVERLAY_LIGHTGUN_ACTION_AUX_B: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_AUX_B), len); - break; - case OVERLAY_LIGHTGUN_ACTION_AUX_C: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_AUX_C), len); - break; - case OVERLAY_LIGHTGUN_ACTION_SELECT: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_SELECT), len); - break; - case OVERLAY_LIGHTGUN_ACTION_START: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_START), len); - break; - case OVERLAY_LIGHTGUN_ACTION_DPAD_UP: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_UP), len); - break; - case OVERLAY_LIGHTGUN_ACTION_DPAD_DOWN: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_DOWN), len); - break; - case OVERLAY_LIGHTGUN_ACTION_DPAD_LEFT: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_LEFT), len); - break; - case OVERLAY_LIGHTGUN_ACTION_DPAD_RIGHT: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_RIGHT), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case OVERLAY_LIGHTGUN_ACTION_NONE: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_NONE), len); + case OVERLAY_LIGHTGUN_ACTION_TRIGGER: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_TRIGGER), len); + case OVERLAY_LIGHTGUN_ACTION_RELOAD: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_RELOAD), len); + case OVERLAY_LIGHTGUN_ACTION_AUX_A: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_AUX_A), len); + case OVERLAY_LIGHTGUN_ACTION_AUX_B: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_AUX_B), len); + case OVERLAY_LIGHTGUN_ACTION_AUX_C: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_AUX_C), len); + case OVERLAY_LIGHTGUN_ACTION_SELECT: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_SELECT), len); + case OVERLAY_LIGHTGUN_ACTION_START: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_START), len); + case OVERLAY_LIGHTGUN_ACTION_DPAD_UP: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_UP), len); + case OVERLAY_LIGHTGUN_ACTION_DPAD_DOWN: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_DOWN), len); + case OVERLAY_LIGHTGUN_ACTION_DPAD_LEFT: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_LEFT), len); + case OVERLAY_LIGHTGUN_ACTION_DPAD_RIGHT: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_LIGHTGUN_DPAD_RIGHT), len); + } } + return 0; } #endif @@ -6416,229 +6173,209 @@ static int setting_string_action_right_midi_output( } #ifdef HAVE_CHEATS -static void setting_get_string_representation_uint_cheat_exact(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_exact( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EXACT_VAL), + return snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EXACT_VAL), *setting->value.target.unsigned_integer, *setting->value.target.unsigned_integer); + return 0; } -static void setting_get_string_representation_uint_cheat_lt(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_lt( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_LT_VAL), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_LT_VAL), len); + return 0; } -static void setting_get_string_representation_uint_cheat_gt(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_gt( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_GT_VAL), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_GT_VAL), len); + return 0; } -static void setting_get_string_representation_uint_cheat_lte(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_lte( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_LTE_VAL), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_LTE_VAL), len); + return 0; } -static void setting_get_string_representation_uint_cheat_gte(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_gte( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_GTE_VAL), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_GTE_VAL), len); + return 0; } -static void setting_get_string_representation_uint_cheat_eq(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_eq( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQ_VAL), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQ_VAL), len); + return 0; } -static void setting_get_string_representation_uint_cheat_neq(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_neq( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_NEQ_VAL), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_NEQ_VAL), len); + return 0; } -static void setting_get_string_representation_uint_cheat_eqplus(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_eqplus( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQPLUS_VAL), + return snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQPLUS_VAL), *setting->value.target.unsigned_integer, *setting->value.target.unsigned_integer); + return 0; } -static void setting_get_string_representation_uint_cheat_eqminus(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_eqminus( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQMINUS_VAL), + return snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQMINUS_VAL), *setting->value.target.unsigned_integer, *setting->value.target.unsigned_integer); + return 0; } -static void setting_get_string_representation_uint_cheat_browse_address( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_cheat_browse_address( + rarch_setting_t *setting, char *s, size_t len) { + size_t _len = 0; unsigned int address = cheat_manager_state.browse_address; unsigned int address_mask = 0; unsigned int prev_val = 0; unsigned int curr_val = 0; if (setting) - snprintf(s, len, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_EQMINUS_VAL), - *setting->value.target.unsigned_integer, *setting->value.target.unsigned_integer); - - cheat_manager_match_action(CHEAT_MATCH_ACTION_TYPE_BROWSE, cheat_manager_state.match_idx, &address, &address_mask, &prev_val, &curr_val); - - snprintf(s, len, "Prev: %u Curr: %u", prev_val, curr_val); - + _len = snprintf(s, len, msg_hash_to_str( + MENU_ENUM_LABEL_CHEAT_SEARCH_EQMINUS_VAL), + *setting->value.target.unsigned_integer, + *setting->value.target.unsigned_integer); + cheat_manager_match_action(CHEAT_MATCH_ACTION_TYPE_BROWSE, + cheat_manager_state.match_idx, &address, &address_mask, + &prev_val, &curr_val); + _len = snprintf(s, len, "Prev: %u Curr: %u", prev_val, curr_val); + return _len; } #endif -static void setting_get_string_representation_video_swap_interval(rarch_setting_t *setting, +static size_t setting_get_string_representation_video_swap_interval(rarch_setting_t *setting, char *s, size_t len) { if (!setting) - return; - + return 0; if (*setting->value.target.unsigned_integer == 0) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SWAP_INTERVAL_AUTO), len); - else - snprintf(s, len, "%u", *setting->value.target.unsigned_integer); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SWAP_INTERVAL_AUTO), len); + return snprintf(s, len, "%u", *setting->value.target.unsigned_integer); } -static void setting_get_string_representation_black_frame_insertion(rarch_setting_t *setting, +static size_t setting_get_string_representation_black_frame_insertion(rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case 1: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_120), len); - break; - case 2: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_180), len); - break; - case 3: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_240), len); - break; - case 4: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_300), len); - break; - case 5: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_360), len); - break; - case 6: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_420), len); - break; - case 7: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_480), len); - break; - case 8: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_540), len); - break; - case 9: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_600), len); - break; - case 10: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_660), len); - break; - case 11: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_720), len); - break; - case 12: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_780), len); - break; - case 13: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_840), len); - break; - case 14: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_900), len); - break; - case 15: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_960), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + case 1: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_120), len); + case 2: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_180), len); + case 3: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_240), len); + case 4: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_300), len); + case 5: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_360), len); + case 6: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_420), len); + case 7: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_480), len); + case 8: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_540), len); + case 9: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_600), len); + case 10: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_660), len); + case 11: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_720), len); + case 12: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_780), len); + case 13: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_840), len); + case 14: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_900), len); + case 15: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_BLACK_FRAME_INSERTION_VALUE_960), len); + } } + return 0; } -static void setting_get_string_representation_shader_subframes(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_shader_subframes( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 1: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case 2: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_120), len); - break; - case 3: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_180), len); - break; - case 4: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_240), len); - break; - case 5: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_300), len); - break; - case 6: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_360), len); - break; - case 7: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_420), len); - break; - case 8: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_480), len); - break; - case 9: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_540), len); - break; - case 10: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_600), len); - break; - case 11: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_660), len); - break; - case 12: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_720), len); - break; - case 13: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_780), len); - break; - case 14: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_840), len); - break; - case 15: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_900), len); - break; - case 16: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_960), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 1: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + case 2: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_120), len); + case 3: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_180), len); + case 4: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_240), len); + case 5: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_300), len); + case 6: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_360), len); + case 7: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_420), len); + case 8: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_480), len); + case 9: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_540), len); + case 10: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_600), len); + case 11: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_660), len); + case 12: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_720), len); + case 13: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_780), len); + case 14: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_840), len); + case 15: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_900), len); + case 16: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SHADER_SUBFRAMES_VALUE_960), len); + } } + return 0; } -static void setting_get_string_representation_video_frame_delay(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_video_frame_delay( + rarch_setting_t *setting, char *s, size_t len) { + size_t _len = 0; settings_t *settings = config_get_ptr(); if (!setting) - return; + return 0; if (settings && settings->bools.video_frame_delay_auto) { @@ -6653,9 +6390,9 @@ static void setting_get_string_representation_video_frame_delay(rarch_setting_t if (*setting->value.target.unsigned_integer == 0) { - size_t _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY_AUTOMATIC), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY_AUTOMATIC), len); if (!string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_DROPDOWN_BOX_LIST))) - snprintf(s + _len, len - _len, " (%ums %s)", + _len += snprintf(s + _len, len - _len, " (%ums %s)", video_st->frame_delay_effective, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY_EFFECTIVE)); } @@ -6664,28 +6401,30 @@ static void setting_get_string_representation_video_frame_delay(rarch_setting_t if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_DROPDOWN_BOX_LIST))) { if (*setting->value.target.unsigned_integer >= 20) - snprintf(s, len, "%u%s (%ums)", + _len = snprintf(s, len, "%u%s (%ums)", *setting->value.target.unsigned_integer, target_unit, - (unsigned)(1 / settings->floats.video_refresh_rate * 1000 * (*setting->value.target.unsigned_integer / 100.0f))); + (unsigned)(1 / settings->floats.video_refresh_rate + * 1000 * (*setting->value.target.unsigned_integer / 100.0f))); else { - size_t _len = snprintf(s, len, "%u", + _len = snprintf(s, len, "%u", *setting->value.target.unsigned_integer); - strlcpy(s + _len, target_unit, len - _len); + _len += strlcpy(s + _len, target_unit, len - _len); } } else { if (*setting->value.target.unsigned_integer >= 20) - snprintf(s, len, "%u%s (%ums, %ums %s)", + _len = snprintf(s, len, "%u%s (%ums, %ums %s)", *setting->value.target.unsigned_integer, target_unit, - (unsigned)(1 / settings->floats.video_refresh_rate * 1000 * (*setting->value.target.unsigned_integer / 100.0f)), + (unsigned)(1 / settings->floats.video_refresh_rate + * 1000 * (*setting->value.target.unsigned_integer / 100.0f)), video_st->frame_delay_effective, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_FRAME_DELAY_EFFECTIVE)); else - snprintf(s, len, "%u%s (%ums %s)", + _len = snprintf(s, len, "%u%s (%ums %s)", *setting->value.target.unsigned_integer, target_unit, video_st->frame_delay_effective, @@ -6696,143 +6435,131 @@ static void setting_get_string_representation_video_frame_delay(rarch_setting_t else { const char *target_unit = (*setting->value.target.unsigned_integer >= 20 ? "\%" : "ms"); - size_t _len = snprintf(s, len, "%u", + _len = snprintf(s, len, "%u", *setting->value.target.unsigned_integer); _len += strlcpy(s + _len, target_unit, len - _len); if (*setting->value.target.unsigned_integer >= 20) - snprintf(s + _len, len - _len, " (%ums)", + _len += snprintf(s + _len, len - _len, " (%ums)", (unsigned)(1 / settings->floats.video_refresh_rate * 1000 * (*setting->value.target.unsigned_integer / 100.0f))); } + return _len; } -static void setting_get_string_representation_uint_video_rotation(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_video_rotation( + rarch_setting_t *setting, char *s, size_t len) { if (setting) { switch (*setting->value.target.unsigned_integer) { case VIDEO_ROTATION_NORMAL: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_NORMAL), + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_NORMAL), len); - break; case VIDEO_ROTATION_90_DEG: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_90_DEG), + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_90_DEG), len); - break; case VIDEO_ROTATION_180_DEG: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_180_DEG), + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_180_DEG), len); - break; case VIDEO_ROTATION_270_DEG: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_270_DEG), + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ROTATION_270_DEG), len); - break; } } + return 0; } -static void setting_get_string_representation_uint_screen_orientation(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_screen_orientation( + rarch_setting_t *setting, char *s, size_t len) { if (setting) { switch (*setting->value.target.unsigned_integer) { case ORIENTATION_NORMAL: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_NORMAL), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_NORMAL), len); - break; case ORIENTATION_VERTICAL: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_VERTICAL), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_VERTICAL), len); - break; case ORIENTATION_FLIPPED: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_FLIPPED), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_FLIPPED), len); - break; case ORIENTATION_FLIPPED_ROTATED: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_FLIPPED_ROTATED), + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_ORIENTATION_FLIPPED_ROTATED), len); - break; } } + return 0; } -static void setting_get_string_representation_uint_aspect_ratio_index( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_aspect_ratio_index( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - strlcpy(s, + return strlcpy(s, aspectratio_lut[*setting->value.target.unsigned_integer].name, len); + return 0; } -static void setting_get_string_representation_uint_crt_switch_resolutions( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_crt_switch_resolutions( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case CRT_SWITCH_NONE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case CRT_SWITCH_15KHZ: - strlcpy(s, "15 KHz", len); - break; - case CRT_SWITCH_31KHZ: - strlcpy(s, "31 KHz, Standard", len); - break; - case CRT_SWITCH_32_120: - strlcpy(s, "31 KHz, 120Hz", len); - break; - case CRT_SWITCH_INI: - strlcpy(s, "INI", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case CRT_SWITCH_NONE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + case CRT_SWITCH_15KHZ: + return strlcpy(s, "15 KHz", len); + case CRT_SWITCH_31KHZ: + return strlcpy(s, "31 KHz, Standard", len); + case CRT_SWITCH_32_120: + return strlcpy(s, "31 KHz, 120Hz", len); + case CRT_SWITCH_INI: + return strlcpy(s, "INI", len); + } } + return 0; } -static void setting_get_string_representation_uint_audio_resampler_quality( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_audio_resampler_quality( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RESAMPLER_QUALITY_DONTCARE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), - len); - break; - case RESAMPLER_QUALITY_LOWEST: - strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_LOWEST), - len); - break; - case RESAMPLER_QUALITY_LOWER: - strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_LOWER), - len); - break; - case RESAMPLER_QUALITY_HIGHER: - strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_HIGHER), - len); - break; - case RESAMPLER_QUALITY_HIGHEST: - strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_HIGHEST), - len); - break; - case RESAMPLER_QUALITY_NORMAL: - strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_NORMAL), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RESAMPLER_QUALITY_DONTCARE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), + len); + case RESAMPLER_QUALITY_LOWEST: + return strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_LOWEST), + len); + case RESAMPLER_QUALITY_LOWER: + return strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_LOWER), + len); + case RESAMPLER_QUALITY_HIGHER: + return strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_HIGHER), + len); + case RESAMPLER_QUALITY_HIGHEST: + return strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_HIGHEST), + len); + case RESAMPLER_QUALITY_NORMAL: + return strlcpy(s, msg_hash_to_str(MSG_RESAMPLER_QUALITY_NORMAL), + len); + } } + return 0; } -static void setting_get_string_representation_uint_libretro_device( +static size_t setting_get_string_representation_uint_libretro_device( rarch_setting_t *setting, char *s, size_t len) { @@ -6840,13 +6567,10 @@ static void setting_get_string_representation_uint_libretro_device( const struct retro_controller_description *desc = NULL; const char *name = NULL; rarch_system_info_t *sys_info = &runloop_state_get_ptr()->system; - if (!setting) - return; - + return 0; index_offset = setting->index_offset; device = input_config_get_device(index_offset); - if (sys_info) { if (index_offset < sys_info->ports.size) @@ -6854,10 +6578,8 @@ static void setting_get_string_representation_uint_libretro_device( &sys_info->ports.data[index_offset], device); } - if (desc) name = desc->desc; - if (!name) { /* Find generic name. */ @@ -6877,339 +6599,290 @@ static void setting_get_string_representation_uint_libretro_device( break; } } - if (!string_is_empty(name)) - strlcpy(s, name, len); + return strlcpy(s, name, len); + return 0; } -static void setting_get_string_representation_uint_analog_dpad_mode( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_analog_dpad_mode( + rarch_setting_t *setting, char *s, size_t len) { const char *modes[5]; - modes[0] = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE); modes[1] = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LEFT_ANALOG); modes[2] = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_RIGHT_ANALOG); modes[3] = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LEFT_ANALOG_FORCED); modes[4] = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_RIGHT_ANALOG_FORCED); - - strlcpy(s, modes[*setting->value.target.unsigned_integer % ANALOG_DPAD_LAST], len); + return strlcpy(s, modes[*setting->value.target.unsigned_integer + % ANALOG_DPAD_LAST], len); } -static void setting_get_string_representation_uint_input_remap_port( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_input_remap_port( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "%u", *setting->value.target.unsigned_integer + 1); + return snprintf(s, len, "%u", + *setting->value.target.unsigned_integer + 1); + return 0; } #ifdef HAVE_THREADS -static void setting_get_string_representation_uint_autosave_interval( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_autosave_interval( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - if (*setting->value.target.unsigned_integer) + if (setting) { - size_t _len = snprintf(s, len, "%u ", *setting->value.target.unsigned_integer); - strlcpy(s + _len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SECONDS), len - _len); + if (*setting->value.target.unsigned_integer) + { + size_t _len = snprintf(s, len, "%u ", *setting->value.target.unsigned_integer); + _len += strlcpy(s + _len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SECONDS), len - _len); + return _len; + } + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); } - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + return 0; } #endif #ifdef HAVE_BSV_MOVIE -static void setting_get_string_representation_uint_replay_checkpoint_interval( +static size_t setting_get_string_representation_uint_replay_checkpoint_interval( rarch_setting_t *setting, char *s, size_t len) { if (!setting) - return; - + return 0; if (*setting->value.target.unsigned_integer) { size_t _len = snprintf(s, len, "%u ", *setting->value.target.unsigned_integer); - strlcpy(s + _len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SECONDS), len - _len); + _len += strlcpy(s + _len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SECONDS), len - _len); + return _len; } - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); } #endif #if defined(HAVE_NETWORKING) -static void setting_get_string_representation_netplay_mitm_server( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_netplay_mitm_server( + rarch_setting_t *setting, char *s, size_t len) { - + return 0; } -static void setting_get_string_representation_netplay_share_digital( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_netplay_share_digital( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RARCH_NETPLAY_SHARE_DIGITAL_NO_PREFERENCE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NO_PREFERENCE), len); - break; - - case RARCH_NETPLAY_SHARE_DIGITAL_OR: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_DIGITAL_OR), len); - break; - - case RARCH_NETPLAY_SHARE_DIGITAL_XOR: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_DIGITAL_XOR), len); - break; - - case RARCH_NETPLAY_SHARE_DIGITAL_VOTE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_DIGITAL_VOTE), len); - break; - - default: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NONE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RARCH_NETPLAY_SHARE_DIGITAL_NO_PREFERENCE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NO_PREFERENCE), len); + case RARCH_NETPLAY_SHARE_DIGITAL_OR: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_DIGITAL_OR), len); + case RARCH_NETPLAY_SHARE_DIGITAL_XOR: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_DIGITAL_XOR), len); + case RARCH_NETPLAY_SHARE_DIGITAL_VOTE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_DIGITAL_VOTE), len); + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NONE), len); + } } + return 0; } -static void setting_get_string_representation_netplay_share_analog( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_netplay_share_analog( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RARCH_NETPLAY_SHARE_ANALOG_NO_PREFERENCE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NO_PREFERENCE), len); - break; - - case RARCH_NETPLAY_SHARE_ANALOG_MAX: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_ANALOG_MAX), len); - break; - - case RARCH_NETPLAY_SHARE_ANALOG_AVERAGE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_ANALOG_AVERAGE), len); - break; - - default: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NONE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RARCH_NETPLAY_SHARE_ANALOG_NO_PREFERENCE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NO_PREFERENCE), len); + case RARCH_NETPLAY_SHARE_ANALOG_MAX: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_ANALOG_MAX), len); + case RARCH_NETPLAY_SHARE_ANALOG_AVERAGE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_ANALOG_AVERAGE), len); + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NETPLAY_SHARE_NONE), len); + } } + return 0; } #endif -static void setting_get_string_representation_gamepad_combo( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_gamepad_combo( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case INPUT_COMBO_NONE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); - break; - case INPUT_COMBO_DOWN_Y_L_R: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_Y_L_R), len); - break; - case INPUT_COMBO_L3_R3: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L3_R3), len); - break; - case INPUT_COMBO_L1_R1_START_SELECT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L1_R1_START_SELECT), len); - break; - case INPUT_COMBO_START_SELECT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_START_SELECT), len); - break; - case INPUT_COMBO_L3_R: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L3_R), len); - break; - case INPUT_COMBO_L_R: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L_R), len); - break; - case INPUT_COMBO_HOLD_START: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HOLD_START), len); - break; - case INPUT_COMBO_HOLD_SELECT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HOLD_SELECT), len); - break; - case INPUT_COMBO_DOWN_SELECT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_SELECT), len); - break; - case INPUT_COMBO_L2_R2: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L2_R2), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case INPUT_COMBO_NONE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); + case INPUT_COMBO_DOWN_Y_L_R: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_Y_L_R), len); + case INPUT_COMBO_L3_R3: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L3_R3), len); + case INPUT_COMBO_L1_R1_START_SELECT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L1_R1_START_SELECT), len); + case INPUT_COMBO_START_SELECT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_START_SELECT), len); + case INPUT_COMBO_L3_R: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L3_R), len); + case INPUT_COMBO_L_R: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L_R), len); + case INPUT_COMBO_HOLD_START: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HOLD_START), len); + case INPUT_COMBO_HOLD_SELECT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_HOLD_SELECT), len); + case INPUT_COMBO_DOWN_SELECT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DOWN_SELECT), len); + case INPUT_COMBO_L2_R2: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_L2_R2), len); + } } + return 0; } -static void setting_get_string_representation_turbo_mode( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_turbo_mode( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case INPUT_TURBO_MODE_CLASSIC: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_CLASSIC), len); - break; - case INPUT_TURBO_MODE_CLASSIC_TOGGLE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_CLASSIC_TOGGLE), len); - break; - case INPUT_TURBO_MODE_SINGLEBUTTON: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_SINGLEBUTTON), len); - break; - case INPUT_TURBO_MODE_SINGLEBUTTON_HOLD: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_SINGLEBUTTON_HOLD), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case INPUT_TURBO_MODE_CLASSIC: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_CLASSIC), len); + case INPUT_TURBO_MODE_CLASSIC_TOGGLE: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_CLASSIC_TOGGLE), len); + case INPUT_TURBO_MODE_SINGLEBUTTON: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_SINGLEBUTTON), len); + case INPUT_TURBO_MODE_SINGLEBUTTON_HOLD: + return strlcpy(s, + msg_hash_to_str(MENU_ENUM_LABEL_VALUE_TURBO_MODE_SINGLEBUTTON_HOLD), len); + } } + return 0; } -static void setting_get_string_representation_turbo_default_button( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_turbo_default_button( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case INPUT_TURBO_DEFAULT_BUTTON_B: - strlcpy(s, "B", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_Y: - strlcpy(s, "Y", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_A: - strlcpy(s, "A", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_X: - strlcpy(s, "X", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_L: - strlcpy(s, "L", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_R: - strlcpy(s, "R", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_L2: - strlcpy(s, "L2", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_R2: - strlcpy(s, "R2", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_L3: - strlcpy(s, "L3", len); - break; - case INPUT_TURBO_DEFAULT_BUTTON_R3: - strlcpy(s, "R3", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case INPUT_TURBO_DEFAULT_BUTTON_B: + return strlcpy(s, "B", len); + case INPUT_TURBO_DEFAULT_BUTTON_Y: + return strlcpy(s, "Y", len); + case INPUT_TURBO_DEFAULT_BUTTON_X: + return strlcpy(s, "X", len); + case INPUT_TURBO_DEFAULT_BUTTON_L: + return strlcpy(s, "L", len); + case INPUT_TURBO_DEFAULT_BUTTON_R: + return strlcpy(s, "R", len); + case INPUT_TURBO_DEFAULT_BUTTON_L2: + return strlcpy(s, "L2", len); + case INPUT_TURBO_DEFAULT_BUTTON_R2: + return strlcpy(s, "R2", len); + case INPUT_TURBO_DEFAULT_BUTTON_L3: + return strlcpy(s, "L3", len); + case INPUT_TURBO_DEFAULT_BUTTON_R3: + return strlcpy(s, "R3", len); + } } + return 0; } -static void setting_get_string_representation_poll_type_behavior( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_poll_type_behavior( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR_EARLY), len); - break; - case 1: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR_NORMAL), len); - break; - case 2: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR_LATE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR_EARLY), len); + case 1: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR_NORMAL), len); + case 2: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR_LATE), len); + } } + return 0; } #ifdef HAVE_RUNAHEAD -static void setting_get_string_representation_runahead_mode( +static size_t setting_get_string_representation_runahead_mode( rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MENU_RUNAHEAD_MODE_SINGLE_INSTANCE: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RUNAHEAD_MODE_SINGLE_INSTANCE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_RUNAHEAD_MODE_SINGLE_INSTANCE: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RUNAHEAD_MODE_SINGLE_INSTANCE), len); #if (defined(HAVE_DYNAMIC) || defined(HAVE_DYLIB)) - case MENU_RUNAHEAD_MODE_SECOND_INSTANCE: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RUNAHEAD_MODE_SECOND_INSTANCE), len); - break; + case MENU_RUNAHEAD_MODE_SECOND_INSTANCE: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RUNAHEAD_MODE_SECOND_INSTANCE), len); #endif - case MENU_RUNAHEAD_MODE_PREEMPTIVE_FRAMES: - strlcpy(s, msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_RUNAHEAD_MODE_PREEMPTIVE_FRAMES), len); - break; - default: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; + case MENU_RUNAHEAD_MODE_PREEMPTIVE_FRAMES: + return strlcpy(s, msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_RUNAHEAD_MODE_PREEMPTIVE_FRAMES), len); + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + } } + return 0; } #endif -static void setting_get_string_representation_input_touch_scale(rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_input_touch_scale( + rarch_setting_t *setting, char *s, size_t len) { if (setting) - snprintf(s, len, "x%d", *setting->value.target.unsigned_integer); + return snprintf(s, len, "x%d", *setting->value.target.unsigned_integer); + return 0; } #ifdef ANDROID -static void setting_get_string_representation_android_physical_keyboard( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_android_physical_keyboard( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - settings_t *settings = config_get_ptr(); - - int keyboard_vendor_id; - int keyboard_product_id; - - if (sscanf(setting->value.target.string, "%04x:%04x ", &keyboard_vendor_id, &keyboard_product_id) != 2) - strlcpy(s, setting->value.target.string, len); - else - strlcpy(s, &setting->value.target.string[10], len); + if (setting) + { + settings_t *settings = config_get_ptr(); + int keyboard_vendor_id; + int keyboard_product_id; + if (sscanf(setting->value.target.string, "%04x:%04x ", &keyboard_vendor_id, &keyboard_product_id) != 2) + return strlcpy(s, setting->value.target.string, len); + return strlcpy(s, &setting->value.target.string[10], len); + } + return 0; } #endif #ifdef HAVE_LANGEXTRA -static void setting_get_string_representation_uint_user_language( +static size_t setting_get_string_representation_uint_user_language( rarch_setting_t *setting, char *s, size_t len) { + size_t _len = 0; const char *modes[RETRO_LANGUAGE_LAST]; uint32_t translated[RETRO_LANGUAGE_LAST]; #define LANG_DATA(STR) \ @@ -7264,8 +6937,7 @@ static void setting_get_string_representation_uint_user_language( LANG_DATA(NORWEGIAN) if (*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE) == RETRO_LANGUAGE_ENGLISH) - strlcpy(s, modes[*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE)], len); - else + return strlcpy(s, modes[*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE)], len); { const char *rating = msg_hash_to_str( translated[*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE)] > 95 ? MENU_ENUM_LABEL_VALUE_LNG_COMPLETION_95_PLUS : @@ -7273,256 +6945,220 @@ static void setting_get_string_representation_uint_user_language( translated[*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE)] > 49 ? MENU_ENUM_LABEL_VALUE_LNG_COMPLETION_50_PLUS : translated[*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE)] > 24 ? MENU_ENUM_LABEL_VALUE_LNG_COMPLETION_25_PLUS : MENU_ENUM_LABEL_VALUE_LNG_COMPLETION_25_MINUS); - snprintf(s, len, "%s [%s]", + _len = snprintf(s, len, "%s [%s]", modes[*msg_hash_get_uint(MSG_HASH_USER_LANGUAGE)], rating); } + return _len; } #endif -static void setting_get_string_representation_uint_libretro_log_level( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_libretro_log_level( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case 0: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_DEBUG), len); - break; - case 1: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_INFO), len); - break; - case 2: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_WARNING), len); - break; - case 3: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_ERROR), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case 0: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_DEBUG), len); + case 1: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_INFO), len); + case 2: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_WARNING), len); + case 3: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOG_VERBOSITY_ERROR), len); + } } + return 0; } -static void setting_get_string_representation_uint_quit_on_close_content( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_quit_on_close_content( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case QUIT_ON_CLOSE_CONTENT_DISABLED: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - break; - case QUIT_ON_CLOSE_CONTENT_ENABLED: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); - break; - case QUIT_ON_CLOSE_CONTENT_CLI: - strlcpy(s, "CLI", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case QUIT_ON_CLOSE_CONTENT_DISABLED: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + case QUIT_ON_CLOSE_CONTENT_ENABLED: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); + case QUIT_ON_CLOSE_CONTENT_CLI: + return strlcpy(s, "CLI", len); + } } + return 0; } -static void setting_get_string_representation_uint_video_scale_integer_axis( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_video_scale_integer_axis( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - default: - case VIDEO_SCALE_INTEGER_AXIS_Y: - strlcpy(s, "Y", len); - break; - case VIDEO_SCALE_INTEGER_AXIS_Y_X: - strlcpy(s, "Y + X", len); - break; - case VIDEO_SCALE_INTEGER_AXIS_Y_XHALF: - strlcpy(s, "Y + X.5", len); - break; - case VIDEO_SCALE_INTEGER_AXIS_YHALF_XHALF: - strlcpy(s, "Y.5 + X.5", len); - break; - case VIDEO_SCALE_INTEGER_AXIS_X: - strlcpy(s, "X", len); - break; - case VIDEO_SCALE_INTEGER_AXIS_XHALF: - strlcpy(s, "X.5", len); - break; + switch (*setting->value.target.unsigned_integer) + { + case VIDEO_SCALE_INTEGER_AXIS_Y_X: + return strlcpy(s, "Y + X", len); + case VIDEO_SCALE_INTEGER_AXIS_Y_XHALF: + return strlcpy(s, "Y + X.5", len); + case VIDEO_SCALE_INTEGER_AXIS_YHALF_XHALF: + return strlcpy(s, "Y.5 + X.5", len); + case VIDEO_SCALE_INTEGER_AXIS_X: + return strlcpy(s, "X", len); + case VIDEO_SCALE_INTEGER_AXIS_XHALF: + return strlcpy(s, "X.5", len); + case VIDEO_SCALE_INTEGER_AXIS_Y: + default: + return strlcpy(s, "Y", len); + } } + return 0; } -static void setting_get_string_representation_uint_video_scale_integer_scaling( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_video_scale_integer_scaling( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - default: - case VIDEO_SCALE_INTEGER_SCALING_UNDERSCALE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER_SCALING_UNDERSCALE), len); - break; - case VIDEO_SCALE_INTEGER_SCALING_OVERSCALE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER_SCALING_OVERSCALE), len); - break; - case VIDEO_SCALE_INTEGER_SCALING_SMART: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER_SCALING_SMART), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case VIDEO_SCALE_INTEGER_SCALING_OVERSCALE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER_SCALING_OVERSCALE), len); + case VIDEO_SCALE_INTEGER_SCALING_SMART: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER_SCALING_SMART), len); + case VIDEO_SCALE_INTEGER_SCALING_UNDERSCALE: + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_VIDEO_SCALE_INTEGER_SCALING_UNDERSCALE), len); + } } + return 0; } -static void setting_get_string_representation_uint_playlist_show_history_icons( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_playlist_show_history_icons( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case PLAYLIST_SHOW_HISTORY_ICONS_DEFAULT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); - break; - case PLAYLIST_SHOW_HISTORY_ICONS_MAIN: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MAIN), len); - break; - case PLAYLIST_SHOW_HISTORY_ICONS_CONTENT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CONTENT), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case PLAYLIST_SHOW_HISTORY_ICONS_DEFAULT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); + case PLAYLIST_SHOW_HISTORY_ICONS_MAIN: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_MAIN), len); + case PLAYLIST_SHOW_HISTORY_ICONS_CONTENT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CONTENT), len); + } } + return 0; } -static void setting_get_string_representation_uint_menu_screensaver_timeout( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_menu_screensaver_timeout( + rarch_setting_t *setting, char *s, size_t len) { + size_t _len; if (!setting) - return; - + return 0; if (*setting->value.target.unsigned_integer == 0) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - else - { - size_t _len = snprintf(s, len, "%u ", *setting->value.target.unsigned_integer); - strlcpy(s + _len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SECONDS), len - _len); - } + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + _len = snprintf(s, len, "%u ", *setting->value.target.unsigned_integer); + _len += strlcpy(s + _len, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SECONDS), len - _len); + return _len; } #if defined(HAVE_MATERIALUI) || defined(HAVE_XMB) || defined(HAVE_OZONE) -static void setting_get_string_representation_uint_menu_screensaver_animation( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_menu_screensaver_animation( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MENU_SCREENSAVER_BLANK: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), - len); - break; - case MENU_SCREENSAVER_SNOW: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_SCREENSAVER_ANIMATION_SNOW), - len); - break; - case MENU_SCREENSAVER_STARFIELD: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_SCREENSAVER_ANIMATION_STARFIELD), - len); - break; - case MENU_SCREENSAVER_VORTEX: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_SCREENSAVER_ANIMATION_VORTEX), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_SCREENSAVER_BLANK: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), + len); + case MENU_SCREENSAVER_SNOW: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_SCREENSAVER_ANIMATION_SNOW), + len); + case MENU_SCREENSAVER_STARFIELD: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_SCREENSAVER_ANIMATION_STARFIELD), + len); + case MENU_SCREENSAVER_VORTEX: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_SCREENSAVER_ANIMATION_VORTEX), + len); + } } + return 0; } #endif #if defined(HAVE_XMB) || defined(HAVE_OZONE) || defined(HAVE_RGUI) || defined(HAVE_MATERIALUI) -static void setting_get_string_representation_uint_menu_remember_selection( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_uint_menu_remember_selection( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case MENU_REMEMBER_SELECTION_ALWAYS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_REMEMBER_SELECTION_ALWAYS), - len); - break; - case MENU_REMEMBER_SELECTION_PLAYLISTS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_REMEMBER_SELECTION_PLAYLISTS), - len); - break; - case MENU_REMEMBER_SELECTION_MAIN: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_MENU_REMEMBER_SELECTION_MAIN), - len); - break; - case MENU_REMEMBER_SELECTION_OFF: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case MENU_REMEMBER_SELECTION_ALWAYS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_REMEMBER_SELECTION_ALWAYS), + len); + case MENU_REMEMBER_SELECTION_PLAYLISTS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_REMEMBER_SELECTION_PLAYLISTS), + len); + case MENU_REMEMBER_SELECTION_MAIN: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_MENU_REMEMBER_SELECTION_MAIN), + len); + case MENU_REMEMBER_SELECTION_OFF: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), + len); + } } + return 0; } #endif #ifdef HAVE_MIST -static void setting_get_string_representation_steam_rich_presence_format( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_steam_rich_presence_format( + rarch_setting_t *setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case STEAM_RICH_PRESENCE_FORMAT_CONTENT: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT), len); - break; - case STEAM_RICH_PRESENCE_FORMAT_CORE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CORE), len); - break; - case STEAM_RICH_PRESENCE_FORMAT_SYSTEM: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_SYSTEM), len); - break; - case STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM), len); - break; - case STEAM_RICH_PRESENCE_FORMAT_CONTENT_CORE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT_CORE), len); - break; - case STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM_CORE: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM_CORE), len); - break; - case STEAM_RICH_PRESENCE_FORMAT_NONE: - default: - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); - break; + switch (*setting->value.target.unsigned_integer) + { + case STEAM_RICH_PRESENCE_FORMAT_CONTENT: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT), len); + case STEAM_RICH_PRESENCE_FORMAT_CORE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CORE), len); + case STEAM_RICH_PRESENCE_FORMAT_SYSTEM: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_SYSTEM), len); + case STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM), len); + case STEAM_RICH_PRESENCE_FORMAT_CONTENT_CORE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT_CORE), len); + case STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM_CORE: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_STEAM_RICH_PRESENCE_FORMAT_CONTENT_SYSTEM_CORE), len); + case STEAM_RICH_PRESENCE_FORMAT_NONE: + default: + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); + } } + return 0; } #endif @@ -8166,14 +7802,14 @@ static int setting_action_right_input_mouse_index( ******* ACTION OK CALLBACK FUNCTIONS ******* **/ -static void +static size_t setting_get_string_representation_st_float_video_refresh_rate_polled( rarch_setting_t *setting, char *s, size_t len) { - snprintf(s, len, "%.3f Hz", video_driver_get_refresh_rate()); + return snprintf(s, len, "%.3f Hz", video_driver_get_refresh_rate()); } -static void +static size_t setting_get_string_representation_st_float_video_refresh_rate_auto( rarch_setting_t *setting, char *s, size_t len) { @@ -8181,43 +7817,41 @@ setting_get_string_representation_st_float_video_refresh_rate_auto( double deviation = 0.0; unsigned sample_points = 0; if (!setting) - return; - + return 0; if (video_monitor_fps_statistics(&video_refresh_rate, &deviation, &sample_points)) { gfx_animation_t *p_anim = anim_get_ptr(); - snprintf(s, len, "%.3f Hz (%.1f%% dev, %u samples)", + size_t _len = snprintf(s, len, "%.3f Hz (%.1f%% dev, %u samples)", video_refresh_rate, 100.0 * deviation, sample_points); GFX_ANIMATION_SET_ACTIVE(p_anim); + return _len; } - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); } #ifdef HAVE_LIBNX -static void get_string_representation_split_joycon(rarch_setting_t *setting, char *s, - size_t len) +static size_t get_string_representation_split_joycon( + rarch_setting_t *setting, char *s, size_t len) { - settings_t *settings = config_get_ptr(); - unsigned index_offset = setting->index_offset; - unsigned map = settings->uints.input_split_joycon[index_offset]; - + settings_t *settings = config_get_ptr(); + unsigned index_offset = setting->index_offset; + unsigned map = settings->uints.input_split_joycon[index_offset]; if (map == 0) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ON), len); } #endif -static void get_string_representation_input_device_index( +static size_t get_string_representation_input_device_index( rarch_setting_t *setting, char *s, size_t len) { + size_t _len = 0; settings_t *settings = config_get_ptr(); unsigned map = 0; if (!setting || !settings) - return; + return 0; map = settings->uints.input_joypad_index[setting->index_offset]; @@ -8234,88 +7868,82 @@ static void get_string_representation_input_device_index( /* If idx is non-zero, it's part of a set */ if (idx > 0) - snprintf(s + _len, len - _len, " (%u)", idx); + _len += snprintf(s + _len, len - _len, " (%u)", idx); } else - snprintf(s, len, + _len = snprintf(s, len, "%s (#%u)", msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), map + 1); } if (string_is_empty(s)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DISABLED), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DISABLED), len); + return _len; } -static void get_string_representation_input_device_reservation_type( +static size_t get_string_representation_input_device_reservation_type( rarch_setting_t *setting, char *s, size_t len) { settings_t *settings = config_get_ptr(); unsigned map = 0; - if (!setting || !settings) - return; - + return 0; map = settings->uints.input_device_reservation_type[setting->index_offset]; - if (map == INPUT_DEVICE_RESERVATION_NONE) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DEVICE_RESERVATION_NONE), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DEVICE_RESERVATION_NONE), len); else if (map == INPUT_DEVICE_RESERVATION_PREFERRED) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DEVICE_RESERVATION_PREFERRED), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DEVICE_RESERVATION_PREFERRED), len); else if (map == INPUT_DEVICE_RESERVATION_RESERVED) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DEVICE_RESERVATION_RESERVED), len); - else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DISABLED), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DEVICE_RESERVATION_RESERVED), len); + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DISABLED), len); } -static void setting_get_string_representation_input_device_reserved_device_name( - rarch_setting_t *setting, - char *s, size_t len) +static size_t setting_get_string_representation_input_device_reserved_device_name( + rarch_setting_t *setting, char *s, size_t len) { - int dev_vendor_id; - int dev_product_id; - - if (!setting) - return; - - if (string_is_empty(setting->value.target.string)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); - else if (sscanf(setting->value.target.string, "%04x:%04x ", &dev_vendor_id, &dev_product_id) != 2) - strlcpy(s, setting->value.target.string, len); - else - strlcpy(s, &setting->value.target.string[10], len); + int dev_vendor_id; + int dev_product_id; + if (!setting) + return 0; + if (string_is_empty(setting->value.target.string)) + return strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NONE), len); + else if (sscanf(setting->value.target.string, "%04x:%04x ", &dev_vendor_id, &dev_product_id) != 2) + return strlcpy(s, setting->value.target.string, len); + return strlcpy(s, &setting->value.target.string[10], len); } -static void get_string_representation_input_mouse_index( +static size_t get_string_representation_input_mouse_index( rarch_setting_t *setting, char *s, size_t len) { + size_t _len = 0; settings_t *settings = config_get_ptr(); unsigned map = 0; if (!setting || !settings) - return; + return 0; map = settings->uints.input_mouse_index[setting->index_offset]; if (map < MAX_INPUT_DEVICES) { const char *device_name = input_config_get_mouse_display_name(map); - if (!string_is_empty(device_name)) - strlcpy(s, device_name, len); + _len = strlcpy(s, device_name, len); else if (map > 0) { - size_t _len = strlcpy(s, + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NOT_AVAILABLE), len); - snprintf(s + _len, len - _len, " (#%u)", map + 1); + _len += snprintf(s + _len, len - _len, " (#%u)", map + 1); } else - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DONT_CARE), len); } if (string_is_empty(s)) - strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DISABLED), len); + _len = strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_DISABLED), len); + return _len; } static void read_handler_audio_rate_control_delta(rarch_setting_t *setting) @@ -9342,83 +8970,75 @@ static void achievement_leaderboard_trackers_enabled_write_handler(rarch_setting rcheevos_leaderboard_trackers_visibility_changed(); } -static void setting_get_string_representation_uint_cheevos_visibility_summary( +static size_t setting_get_string_representation_uint_cheevos_visibility_summary( rarch_setting_t* setting, char* s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case RCHEEVOS_SUMMARY_ALLGAMES: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_SUMMARY_ALLGAMES), - len); - break; - case RCHEEVOS_SUMMARY_HASCHEEVOS: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_SUMMARY_HASCHEEVOS), - len); - break; - case RCHEEVOS_SUMMARY_OFF: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_OFF), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case RCHEEVOS_SUMMARY_ALLGAMES: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_SUMMARY_ALLGAMES), + len); + case RCHEEVOS_SUMMARY_HASCHEEVOS: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_VISIBILITY_SUMMARY_HASCHEEVOS), + len); + case RCHEEVOS_SUMMARY_OFF: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_OFF), + len); + } } + return 0; } #ifdef HAVE_GFX_WIDGETS -static void setting_get_string_representation_uint_cheevos_appearance_anchor( - rarch_setting_t* setting, - char* s, size_t len) +static size_t setting_get_string_representation_uint_cheevos_appearance_anchor( + rarch_setting_t* setting, char *s, size_t len) { - if (!setting) - return; - - switch (*setting->value.target.unsigned_integer) + if (setting) { - case CHEEVOS_APPEARANCE_ANCHOR_TOPLEFT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_TOPLEFT), - len); - break; - case CHEEVOS_APPEARANCE_ANCHOR_TOPCENTER: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_TOPCENTER), - len); - break; - case CHEEVOS_APPEARANCE_ANCHOR_TOPRIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_TOPRIGHT), - len); - break; - case CHEEVOS_APPEARANCE_ANCHOR_BOTTOMLEFT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_BOTTOMLEFT), - len); - break; - case CHEEVOS_APPEARANCE_ANCHOR_BOTTOMCENTER: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_BOTTOMCENTER), - len); - break; - case CHEEVOS_APPEARANCE_ANCHOR_BOTTOMRIGHT: - strlcpy(s, - msg_hash_to_str( - MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_BOTTOMRIGHT), - len); - break; + switch (*setting->value.target.unsigned_integer) + { + case CHEEVOS_APPEARANCE_ANCHOR_TOPLEFT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_TOPLEFT), + len); + case CHEEVOS_APPEARANCE_ANCHOR_TOPCENTER: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_TOPCENTER), + len); + case CHEEVOS_APPEARANCE_ANCHOR_TOPRIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_TOPRIGHT), + len); + case CHEEVOS_APPEARANCE_ANCHOR_BOTTOMLEFT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_BOTTOMLEFT), + len); + case CHEEVOS_APPEARANCE_ANCHOR_BOTTOMCENTER: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_BOTTOMCENTER), + len); + case CHEEVOS_APPEARANCE_ANCHOR_BOTTOMRIGHT: + return strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_CHEEVOS_APPEARANCE_ANCHOR_BOTTOMRIGHT), + len); + } } + return 0; } static void cheevos_appearance_write_handler(rarch_setting_t* setting) diff --git a/setting_list.h b/setting_list.h index 4933b0289d..21ddf41607 100644 --- a/setting_list.h +++ b/setting_list.h @@ -107,7 +107,7 @@ typedef int (*action_start_handler_t )(rarch_setting_t *setting); typedef int (*action_cancel_handler_t )(rarch_setting_t *setting); typedef int (*action_ok_handler_t )(rarch_setting_t *setting, size_t idx, bool wraparound); typedef int (*action_select_handler_t )(rarch_setting_t *setting, size_t idx, bool wraparound); -typedef void (*get_string_representation_t )(rarch_setting_t *setting, char *s, size_t len); +typedef size_t (*get_string_representation_t )(rarch_setting_t *setting, char *s, size_t len); struct rarch_setting_group_info {