From e30b3efe9f4708a426d4bd2faff766a6758ae856 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Wed, 24 Jun 2015 04:56:44 +0200 Subject: [PATCH] (Menu) Create 'Information' list --- menu/cbs/menu_cbs_deferred_push.c | 22 ++++---- menu/cbs/menu_cbs_get_value.c | 1 - menu/cbs/menu_cbs_ok.c | 2 +- menu/cbs/menu_cbs_title.c | 2 +- menu/menu_displaylist.c | 89 +++++++++++++++++-------------- menu/menu_displaylist.h | 2 +- menu/menu_hash.c | 8 +-- menu/menu_hash.h | 5 +- menu/menu_setting.c | 24 +-------- 9 files changed, 73 insertions(+), 82 deletions(-) diff --git a/menu/cbs/menu_cbs_deferred_push.c b/menu/cbs/menu_cbs_deferred_push.c index 63f74bf4ff..bdcef8912a 100644 --- a/menu/cbs/menu_cbs_deferred_push.c +++ b/menu/cbs/menu_cbs_deferred_push.c @@ -148,11 +148,6 @@ static int deferred_push_cursor_manager_list_deferred_query_subsearch(menu_displ #endif } -static int deferred_push_performance_counters(menu_displaylist_info_t *info) -{ - return menu_displaylist_push_list(info, DISPLAYLIST_PERFCOUNTER_SELECTION); -} - static int deferred_push_video_shader_preset_parameters(menu_displaylist_info_t *info) { return menu_displaylist_push_list(info, DISPLAYLIST_SHADER_PARAMETERS_PRESET); @@ -205,6 +200,11 @@ static int deferred_push_load_content_list(menu_displaylist_info_t *info) return menu_displaylist_push_list(info, DISPLAYLIST_LOAD_CONTENT_LIST); } +static int deferred_push_information_list(menu_displaylist_info_t *info) +{ + return menu_displaylist_push_list(info, DISPLAYLIST_INFORMATION_LIST); +} + static int deferred_push_management_options(menu_displaylist_info_t *info) { return menu_displaylist_push_list(info, DISPLAYLIST_OPTIONS_MANAGEMENT); @@ -541,6 +541,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(menu_file_list_cbs_t * case MENU_LABEL_LOAD_CONTENT_LIST: cbs->action_deferred_push = deferred_push_load_content_list; break; + case MENU_LABEL_INFORMATION_LIST: + cbs->action_deferred_push = deferred_push_information_list; + break; case MENU_LABEL_MANAGEMENT: cbs->action_deferred_push = deferred_push_management_options; break; @@ -583,12 +586,12 @@ static int menu_cbs_init_bind_deferred_push_compare_label(menu_file_list_cbs_t * case MENU_LABEL_SYSTEM_INFORMATION: cbs->action_deferred_push = deferred_push_system_information; break; - case MENU_LABEL_PERFORMANCE_COUNTERS: - cbs->action_deferred_push = deferred_push_performance_counters; - break; case MENU_LABEL_CORE_COUNTERS: cbs->action_deferred_push = deferred_push_core_counters; break; + case MENU_LABEL_FRONTEND_COUNTERS: + cbs->action_deferred_push = deferred_push_frontend_counters; + break; case MENU_LABEL_VIDEO_SHADER_PRESET_PARAMETERS: cbs->action_deferred_push = deferred_push_video_shader_preset_parameters; break; @@ -598,9 +601,6 @@ static int menu_cbs_init_bind_deferred_push_compare_label(menu_file_list_cbs_t * case MENU_LABEL_SETTINGS: cbs->action_deferred_push = deferred_push_settings; break; - case MENU_LABEL_FRONTEND_COUNTERS: - cbs->action_deferred_push = deferred_push_frontend_counters; - break; case MENU_LABEL_CORE_OPTIONS: cbs->action_deferred_push = deferred_push_core_options; break; diff --git a/menu/cbs/menu_cbs_get_value.c b/menu/cbs/menu_cbs_get_value.c index 7da22c4555..afc0c9f6b6 100644 --- a/menu/cbs/menu_cbs_get_value.c +++ b/menu/cbs/menu_cbs_get_value.c @@ -828,7 +828,6 @@ static void menu_action_setting_disp_set_label(file_list_t* list, switch (hash_label) { - case MENU_LABEL_PERFORMANCE_COUNTERS: case MENU_LABEL_LOAD_CONTENT_HISTORY: *w = strlen(label); break; diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index 65ceaca440..8ba5ef68fc 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -1583,12 +1583,12 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs, case MENU_LABEL_SYSTEM_INFORMATION: case MENU_LABEL_DISK_OPTIONS: case MENU_LABEL_SETTINGS: - case MENU_LABEL_PERFORMANCE_COUNTERS: case MENU_LABEL_FRONTEND_COUNTERS: case MENU_LABEL_CORE_COUNTERS: case MENU_LABEL_MANAGEMENT: case MENU_LABEL_OPTIONS: case MENU_LABEL_LOAD_CONTENT_LIST: + case MENU_LABEL_INFORMATION_LIST: case MENU_LABEL_CONTENT_SETTINGS: cbs->action_ok = action_ok_push_default; break; diff --git a/menu/cbs/menu_cbs_title.c b/menu/cbs/menu_cbs_title.c index c4cce38df6..2688422583 100644 --- a/menu/cbs/menu_cbs_title.c +++ b/menu/cbs/menu_cbs_title.c @@ -643,7 +643,6 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs, case MENU_LABEL_RGUI_CONFIG_DIRECTORY: cbs->action_get_title = action_get_title_config_directory; break; - case MENU_LABEL_PERFORMANCE_COUNTERS: case MENU_LABEL_CORE_LIST: case MENU_LABEL_MANAGEMENT: case MENU_LABEL_OPTIONS: @@ -665,6 +664,7 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs, case MENU_LABEL_DATABASE_MANAGER_LIST: case MENU_LABEL_CURSOR_MANAGER_LIST: case MENU_LABEL_DEFERRED_CORE_UPDATER_LIST: + case MENU_LABEL_INFORMATION_LIST: case MENU_LABEL_LOAD_CONTENT_LIST: case MENU_LABEL_CONTENT_SETTINGS: cbs->action_get_title = action_get_title_action_generic; diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index 488f240f18..d6dd10dbe3 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -1473,7 +1473,47 @@ static int menu_displaylist_parse_load_content_settings(menu_displaylist_info_t return 0; } -static int menu_displaylist_parse_load_core_list(menu_displaylist_info_t *info) +static int menu_displaylist_parse_information_list(menu_displaylist_info_t *info) +{ + global_t *global = global_get_ptr(); + settings_t *settings = config_get_ptr(); + + menu_list_push(info->list, + menu_hash_to_str(MENU_LABEL_VALUE_CORE_INFORMATION), + menu_hash_to_str(MENU_LABEL_CORE_INFORMATION), + MENU_SETTING_ACTION, 0, 0); + + menu_list_push(info->list, + menu_hash_to_str(MENU_LABEL_VALUE_SYSTEM_INFORMATION), + menu_hash_to_str(MENU_LABEL_SYSTEM_INFORMATION), + MENU_SETTING_ACTION, 0, 0); + +#ifdef HAVE_LIBRETRODB + menu_list_push(info->list, menu_hash_to_str(MENU_LABEL_VALUE_DATABASE_MANAGER), + menu_hash_to_str(MENU_LABEL_DATABASE_MANAGER_LIST), + MENU_SETTING_ACTION, 0, 0); + menu_list_push(info->list, menu_hash_to_str(MENU_LABEL_VALUE_CURSOR_MANAGER), + menu_hash_to_str(MENU_LABEL_CURSOR_MANAGER_LIST), + MENU_SETTING_ACTION, 0, 0); +#endif + + if (global->perfcnt_enable) + { + menu_list_push(info->list, + menu_hash_to_str(MENU_LABEL_VALUE_FRONTEND_COUNTERS), + menu_hash_to_str(MENU_LABEL_FRONTEND_COUNTERS), + MENU_SETTING_ACTION, 0, 0); + + menu_list_push(info->list, + menu_hash_to_str(MENU_LABEL_VALUE_CORE_COUNTERS), + menu_hash_to_str(MENU_LABEL_CORE_COUNTERS), + MENU_SETTING_ACTION, 0, 0); + } + + return 0; +} + +static int menu_displaylist_parse_load_content_list(menu_displaylist_info_t *info) { global_t *global = global_get_ptr(); settings_t *settings = config_get_ptr(); @@ -1513,10 +1553,6 @@ static int menu_displaylist_parse_options(menu_displaylist_info_t *info) { global_t *global = global_get_ptr(); - menu_list_push(info->list, - menu_hash_to_str(MENU_LABEL_VALUE_CORE_INFORMATION), - menu_hash_to_str(MENU_LABEL_CORE_INFORMATION), - MENU_SETTING_ACTION, 0, 0); menu_list_push(info->list, menu_hash_to_str(MENU_LABEL_VALUE_CORE_OPTIONS), @@ -1599,19 +1635,6 @@ static int menu_displaylist_parse_options_cheats(menu_displaylist_info_t *info) return 0; } -static int menu_displaylist_parse_options_management(menu_displaylist_info_t *info) -{ -#ifdef HAVE_LIBRETRODB - menu_list_push(info->list, menu_hash_to_str(MENU_LABEL_VALUE_DATABASE_MANAGER), - menu_hash_to_str(MENU_LABEL_DATABASE_MANAGER_LIST), - MENU_SETTING_ACTION, 0, 0); - menu_list_push(info->list, menu_hash_to_str(MENU_LABEL_VALUE_CURSOR_MANAGER), - menu_hash_to_str(MENU_LABEL_CURSOR_MANAGER_LIST), - MENU_SETTING_ACTION, 0, 0); -#endif - return 0; -} - static int menu_displaylist_parse_options_remappings(menu_displaylist_info_t *info) { unsigned p, retro_id; @@ -1930,9 +1953,17 @@ int menu_displaylist_push_list(menu_displaylist_info_t *info, unsigned type) need_refresh = true; need_push = true; break; + case DISPLAYLIST_INFORMATION_LIST: + menu_list_clear(info->list); + ret = menu_displaylist_parse_information_list(info); + + need_push = true; + need_refresh = true; + break; + break; case DISPLAYLIST_LOAD_CONTENT_LIST: menu_list_clear(info->list); - ret = menu_displaylist_parse_load_core_list(info); + ret = menu_displaylist_parse_load_content_list(info); need_push = true; need_refresh = true; @@ -1947,12 +1978,6 @@ int menu_displaylist_push_list(menu_displaylist_info_t *info, unsigned type) menu_list_clear(info->list); ret = menu_displaylist_parse_options_cheats(info); - need_push = true; - break; - case DISPLAYLIST_OPTIONS_MANAGEMENT: - menu_list_clear(info->list); - ret = menu_displaylist_parse_options_management(info); - need_push = true; break; case DISPLAYLIST_OPTIONS_REMAPPINGS: @@ -2048,20 +2073,6 @@ int menu_displaylist_push_list(menu_displaylist_info_t *info, unsigned type) need_refresh = true; #endif break; - case DISPLAYLIST_PERFCOUNTER_SELECTION: - menu_list_clear(info->list); - menu_list_push(info->list, - menu_hash_to_str(MENU_LABEL_VALUE_FRONTEND_COUNTERS), - menu_hash_to_str(MENU_LABEL_FRONTEND_COUNTERS), - MENU_SETTING_ACTION, 0, 0); - menu_list_push(info->list, - menu_hash_to_str(MENU_LABEL_VALUE_CORE_COUNTERS), - menu_hash_to_str(MENU_LABEL_CORE_COUNTERS), - MENU_SETTING_ACTION, 0, 0); - - need_refresh = true; - need_push = true; - break; case DISPLAYLIST_SETTINGS_ALL: menu_list_clear(info->list); menu_displaylist_realloc_settings(&menu->entries, SL_FLAG_ALL_SETTINGS); diff --git a/menu/menu_displaylist.h b/menu/menu_displaylist.h index af02e11cd5..35163fe212 100644 --- a/menu/menu_displaylist.h +++ b/menu/menu_displaylist.h @@ -49,7 +49,6 @@ enum DISPLAYLIST_CORES_DETECTED, DISPLAYLIST_CORE_OPTIONS, DISPLAYLIST_CORE_INFO, - DISPLAYLIST_PERFCOUNTER_SELECTION, DISPLAYLIST_PERFCOUNTERS_CORE, DISPLAYLIST_PERFCOUNTERS_FRONTEND, DISPLAYLIST_SHADER_PASS, @@ -73,6 +72,7 @@ enum DISPLAYLIST_SHADER_PARAMETERS_PRESET, DISPLAYLIST_SYSTEM_INFO, DISPLAYLIST_LOAD_CONTENT_LIST, + DISPLAYLIST_INFORMATION_LIST, DISPLAYLIST_CONTENT_SETTINGS, DISPLAYLIST_OPTIONS, DISPLAYLIST_OPTIONS_CHEATS, diff --git a/menu/menu_hash.c b/menu/menu_hash.c index 901e7cf473..f67da97f85 100644 --- a/menu/menu_hash.c +++ b/menu/menu_hash.c @@ -1152,8 +1152,6 @@ static const char *menu_hash_to_str_portuguese(uint32_t hash) return "database_settings"; case MENU_LABEL_VALUE_MANAGEMENT: return "Gerenciamento Avançado"; - case MENU_LABEL_PERFORMANCE_COUNTERS: - return "performance_counters"; case MENU_LABEL_SAVE_STATE: return "savestate"; case MENU_LABEL_VALUE_SAVE_STATE: @@ -1848,6 +1846,10 @@ static const char *menu_hash_to_str_english(uint32_t hash) { switch (hash) { + case MENU_LABEL_INFORMATION_LIST: + return "information_list"; + case MENU_LABEL_VALUE_INFORMATION_LIST: + return "Information"; case MENU_LABEL_USE_BUILTIN_PLAYER: return "use_builtin_player"; case MENU_LABEL_VALUE_USE_BUILTIN_PLAYER: @@ -2800,8 +2802,6 @@ static const char *menu_hash_to_str_english(uint32_t hash) return "database_settings"; case MENU_LABEL_VALUE_MANAGEMENT: return "Database Settings"; - case MENU_LABEL_PERFORMANCE_COUNTERS: - return "performance_counters"; case MENU_LABEL_SAVE_STATE: return "savestate"; case MENU_LABEL_VALUE_SAVE_STATE: diff --git a/menu/menu_hash.h b/menu/menu_hash.h index d05cf0709f..664f104594 100644 --- a/menu/menu_hash.h +++ b/menu/menu_hash.h @@ -52,6 +52,9 @@ extern "C" { #define MENU_VALUE_OPEN_ARCHIVE 0x96da22b9U #define MENU_VALUE_ASK_ARCHIVE 0x0b87d6a4U +#define MENU_LABEL_INFORMATION_LIST 0x225e7606U +#define MENU_LABEL_VALUE_INFORMATION_LIST 0xd652344bU + #define MENU_LABEL_USE_BUILTIN_PLAYER 0x9927ca74U #define MENU_LABEL_VALUE_USE_BUILTIN_PLAYER 0x038e4816U @@ -551,8 +554,6 @@ extern "C" { #define MENU_LABEL_DEFERRED_CORE_UPDATER_LIST 0xbd4d493dU #define MENU_LABEL_CONFIGURATIONS 0x3e930a50U #define MENU_LABEL_DISK_IMAGE_APPEND 0x5af7d709U -#define MENU_LABEL_PERFORMANCE_COUNTERS 0xd8ab5049U -#define MENU_LABEL_VALUE_PERFORMANCE_COUNTERS 0x20eb18caU #define MENU_LABEL_CORE_LIST 0xac9dbf00U #define MENU_LABEL_VALUE_CORE_LIST 0x0e17fd4eU #define MENU_LABEL_MANAGEMENT 0x2516c88aU diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 295c302f40..e32ffb91d7 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -3478,31 +3478,11 @@ static bool setting_append_list_main_menu_options( } CONFIG_ACTION( - menu_hash_to_str(MENU_LABEL_MANAGEMENT), - menu_hash_to_str(MENU_LABEL_VALUE_MANAGEMENT), + menu_hash_to_str(MENU_LABEL_INFORMATION_LIST), + menu_hash_to_str(MENU_LABEL_VALUE_INFORMATION_LIST), group_info.name, subgroup_info.name, parent_group); - settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED); - - CONFIG_ACTION( - menu_hash_to_str(MENU_LABEL_SYSTEM_INFORMATION), - menu_hash_to_str(MENU_LABEL_VALUE_SYSTEM_INFORMATION), - group_info.name, - subgroup_info.name, - parent_group); - - - if (global->perfcnt_enable) - { - CONFIG_ACTION( - menu_hash_to_str(MENU_LABEL_PERFORMANCE_COUNTERS), - menu_hash_to_str(MENU_LABEL_VALUE_PERFORMANCE_COUNTERS), - group_info.name, - subgroup_info.name, - parent_group); - settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED); - } #ifndef HAVE_DYNAMIC CONFIG_ACTION(