diff --git a/frontend/menu/menu_common.c b/frontend/menu/menu_common.c index 3ab0d219fd..653095b014 100644 --- a/frontend/menu/menu_common.c +++ b/frontend/menu/menu_common.c @@ -916,6 +916,217 @@ static void rgui_build_scroll_indices(rgui_handle_t *rgui, rgui_list_t *buf) rgui->scroll_indices[rgui->scroll_indices_size++] = buf->size - 1; } +void menu_populate_entries(void *data, unsigned menu_type) +{ + rgui_handle_t *rgui = (rgui_handle_t*)data; + unsigned i, last; + + switch (menu_type) + { +#ifdef HAVE_SHADER_MANAGER + case RGUI_SETTINGS_SHADER_OPTIONS: + rgui_list_clear(rgui->selection_buf); + rgui_list_push(rgui->selection_buf, "Apply Shader Changes", + RGUI_SETTINGS_SHADER_APPLY, 0); + rgui_list_push(rgui->selection_buf, "Default Filter", RGUI_SETTINGS_SHADER_FILTER, 0); + rgui_list_push(rgui->selection_buf, "Load Shader Preset", + RGUI_SETTINGS_SHADER_PRESET, 0); + rgui_list_push(rgui->selection_buf, "Shader Passes", + RGUI_SETTINGS_SHADER_PASSES, 0); + + for (i = 0; i < rgui->shader.passes; i++) + { + char buf[64]; + + snprintf(buf, sizeof(buf), "Shader #%u", i); + rgui_list_push(rgui->selection_buf, buf, + RGUI_SETTINGS_SHADER_0 + 3 * i, 0); + + snprintf(buf, sizeof(buf), "Shader #%u Filter", i); + rgui_list_push(rgui->selection_buf, buf, + RGUI_SETTINGS_SHADER_0_FILTER + 3 * i, 0); + + snprintf(buf, sizeof(buf), "Shader #%u Scale", i); + rgui_list_push(rgui->selection_buf, buf, + RGUI_SETTINGS_SHADER_0_SCALE + 3 * i, 0); + } + break; +#endif + case RGUI_SETTINGS_VIDEO_OPTIONS: + rgui_list_clear(rgui->selection_buf); +#ifdef HAVE_SHADER_MANAGER + rgui_list_push(rgui->selection_buf, "Shader Options", RGUI_SETTINGS_SHADER_OPTIONS, 0); +#endif +#ifdef GEKKO + rgui_list_push(rgui->selection_buf, "Screen Resolution", RGUI_SETTINGS_VIDEO_RESOLUTION, 0); +#endif +#ifndef HAVE_SHADER_MANAGER + rgui_list_push(rgui->selection_buf, "Default Filter", RGUI_SETTINGS_VIDEO_FILTER, 0); +#endif +#ifdef HW_RVL + rgui_list_push(rgui->selection_buf, "VI Trap filtering", RGUI_SETTINGS_VIDEO_SOFT_FILTER, 0); + rgui_list_push(rgui->selection_buf, "Gamma", RGUI_SETTINGS_VIDEO_GAMMA, 0); +#endif + rgui_list_push(rgui->selection_buf, "Integer Scale", RGUI_SETTINGS_VIDEO_INTEGER_SCALE, 0); + rgui_list_push(rgui->selection_buf, "Aspect Ratio", RGUI_SETTINGS_VIDEO_ASPECT_RATIO, 0); + rgui_list_push(rgui->selection_buf, "Custom Ratio", RGUI_SETTINGS_CUSTOM_VIEWPORT, 0); +#if !defined(RARCH_CONSOLE) && !defined(RARCH_MOBILE) + rgui_list_push(rgui->selection_buf, "Toggle Fullscreen", RGUI_SETTINGS_TOGGLE_FULLSCREEN, 0); +#endif + rgui_list_push(rgui->selection_buf, "Rotation", RGUI_SETTINGS_VIDEO_ROTATION, 0); + rgui_list_push(rgui->selection_buf, "VSync", RGUI_SETTINGS_VIDEO_VSYNC, 0); + rgui_list_push(rgui->selection_buf, "Hard GPU Sync", RGUI_SETTINGS_VIDEO_HARD_SYNC, 0); + rgui_list_push(rgui->selection_buf, "Hard GPU Sync Frames", RGUI_SETTINGS_VIDEO_HARD_SYNC_FRAMES, 0); + rgui_list_push(rgui->selection_buf, "Black Frame Insertion", RGUI_SETTINGS_VIDEO_BLACK_FRAME_INSERTION, 0); + rgui_list_push(rgui->selection_buf, "VSync Swap Interval", RGUI_SETTINGS_VIDEO_SWAP_INTERVAL, 0); +#ifdef HAVE_THREADS + rgui_list_push(rgui->selection_buf, "Threaded Driver", RGUI_SETTINGS_VIDEO_THREADED, 0); +#endif +#if !defined(RARCH_CONSOLE) && !defined(RARCH_MOBILE) + rgui_list_push(rgui->selection_buf, "Windowed Scale (X)", RGUI_SETTINGS_VIDEO_WINDOW_SCALE_X, 0); + rgui_list_push(rgui->selection_buf, "Windowed Scale (Y)", RGUI_SETTINGS_VIDEO_WINDOW_SCALE_Y, 0); +#endif + rgui_list_push(rgui->selection_buf, "Crop Overscan (reload)", RGUI_SETTINGS_VIDEO_CROP_OVERSCAN, 0); + rgui_list_push(rgui->selection_buf, "Estimated Monitor FPS", RGUI_SETTINGS_VIDEO_REFRESH_RATE_AUTO, 0); + break; + case RGUI_SETTINGS_CORE_OPTIONS: + rgui_list_clear(rgui->selection_buf); + + if (g_extern.system.core_options) + { + size_t i, opts; + + opts = core_option_size(g_extern.system.core_options); + for (i = 0; i < opts; i++) + rgui_list_push(rgui->selection_buf, + core_option_get_desc(g_extern.system.core_options, i), RGUI_SETTINGS_CORE_OPTION_START + i, 0); + } + else + rgui_list_push(rgui->selection_buf, "No options available.", RGUI_SETTINGS_CORE_OPTION_NONE, 0); + break; + case RGUI_SETTINGS_OPTIONS: + rgui_list_clear(rgui->selection_buf); + rgui_list_push(rgui->selection_buf, "Rewind", RGUI_SETTINGS_REWIND_ENABLE, 0); + rgui_list_push(rgui->selection_buf, "Rewind Granularity", RGUI_SETTINGS_REWIND_GRANULARITY, 0); +#ifdef HAVE_SCREENSHOTS + rgui_list_push(rgui->selection_buf, "GPU Screenshots", RGUI_SETTINGS_GPU_SCREENSHOT, 0); +#endif + rgui_list_push(rgui->selection_buf, "Config Save On Exit", RGUI_SETTINGS_CONFIG_SAVE_ON_EXIT, 0); +#if defined(HAVE_THREADS) && !defined(RARCH_CONSOLE) + rgui_list_push(rgui->selection_buf, "SRAM Autosave", RGUI_SETTINGS_SRAM_AUTOSAVE, 0); +#endif + rgui_list_push(rgui->selection_buf, "Show Framerate", RGUI_SETTINGS_DEBUG_TEXT, 0); + break; + case RGUI_SETTINGS_DISK_OPTIONS: + rgui_list_clear(rgui->selection_buf); + rgui_list_push(rgui->selection_buf, "Disk Index", RGUI_SETTINGS_DISK_INDEX, 0); + rgui_list_push(rgui->selection_buf, "Disk Image Append", RGUI_SETTINGS_DISK_APPEND, 0); + break; + case RGUI_SETTINGS_PATH_OPTIONS: + rgui_list_clear(rgui->selection_buf); + rgui_list_push(rgui->selection_buf, "Browser Directory", RGUI_BROWSER_DIR_PATH, 0); + rgui_list_push(rgui->selection_buf, "Config Directory", RGUI_CONFIG_DIR_PATH, 0); +#ifdef HAVE_DYNAMIC + rgui_list_push(rgui->selection_buf, "Core Directory", RGUI_LIBRETRO_DIR_PATH, 0); +#endif + rgui_list_push(rgui->selection_buf, "Core Info Directory", RGUI_LIBRETRO_INFO_DIR_PATH, 0); +#ifdef HAVE_SHADER_MANAGER + rgui_list_push(rgui->selection_buf, "Shader Directory", RGUI_SHADER_DIR_PATH, 0); +#endif + rgui_list_push(rgui->selection_buf, "Savestate Directory", RGUI_SAVESTATE_DIR_PATH, 0); + rgui_list_push(rgui->selection_buf, "Savefile Directory", RGUI_SAVEFILE_DIR_PATH, 0); +#ifdef HAVE_OVERLAY + rgui_list_push(rgui->selection_buf, "Overlay Directory", RGUI_OVERLAY_DIR_PATH, 0); +#endif + rgui_list_push(rgui->selection_buf, "System Directory", RGUI_SYSTEM_DIR_PATH, 0); +#ifdef HAVE_SCREENSHOTS + rgui_list_push(rgui->selection_buf, "Screenshot Directory", RGUI_SCREENSHOT_DIR_PATH, 0); +#endif + break; + case RGUI_SETTINGS_INPUT_OPTIONS: + rgui_list_clear(rgui->selection_buf); +#ifdef HAVE_OVERLAY + rgui_list_push(rgui->selection_buf, "Overlay Preset", RGUI_SETTINGS_OVERLAY_PRESET, 0); + rgui_list_push(rgui->selection_buf, "Overlay Opacity", RGUI_SETTINGS_OVERLAY_OPACITY, 0); + rgui_list_push(rgui->selection_buf, "Overlay Scale", RGUI_SETTINGS_OVERLAY_SCALE, 0); +#endif + rgui_list_push(rgui->selection_buf, "Player", RGUI_SETTINGS_BIND_PLAYER, 0); + rgui_list_push(rgui->selection_buf, "Device", RGUI_SETTINGS_BIND_DEVICE, 0); + rgui_list_push(rgui->selection_buf, "Device Type", RGUI_SETTINGS_BIND_DEVICE_TYPE, 0); + + rgui_list_push(rgui->selection_buf, "Configure All (RetroPad)", RGUI_SETTINGS_CUSTOM_BIND_ALL, 0); + rgui_list_push(rgui->selection_buf, "Default All (RetroPad)", RGUI_SETTINGS_CUSTOM_BIND_DEFAULT_ALL, 0); + + if (rgui->current_pad == 0) + rgui_list_push(rgui->selection_buf, "RGUI Menu Toggle", RGUI_SETTINGS_BIND_MENU_TOGGLE, 0); + + last = (driver.input && driver.input->set_keybinds) ? RGUI_SETTINGS_BIND_R3 : RGUI_SETTINGS_BIND_LAST; + for (i = RGUI_SETTINGS_BIND_BEGIN; i <= last; i++) + rgui_list_push(rgui->selection_buf, input_config_bind_map[i - RGUI_SETTINGS_BIND_BEGIN].desc, i, 0); + break; + case RGUI_SETTINGS_AUDIO_OPTIONS: + rgui_list_clear(rgui->selection_buf); + rgui_list_push(rgui->selection_buf, "Mute Audio", RGUI_SETTINGS_AUDIO_MUTE, 0); + rgui_list_push(rgui->selection_buf, "Rate Control Delta", RGUI_SETTINGS_AUDIO_CONTROL_RATE_DELTA, 0); + break; + case RGUI_SETTINGS_DRIVERS: + rgui_list_clear(rgui->selection_buf); + rgui_list_push(rgui->selection_buf, "Video driver", RGUI_SETTINGS_DRIVER_VIDEO, 0); + rgui_list_push(rgui->selection_buf, "Audio driver", RGUI_SETTINGS_DRIVER_AUDIO, 0); + rgui_list_push(rgui->selection_buf, "Input driver", RGUI_SETTINGS_DRIVER_INPUT, 0); + break; + case RGUI_SETTINGS: + rgui_list_clear(rgui->selection_buf); + +#if defined(HAVE_DYNAMIC) || defined(HAVE_LIBRETRO_MANAGEMENT) + rgui_list_push(rgui->selection_buf, "Core", RGUI_SETTINGS_CORE, 0); +#endif + if (rgui->history) + rgui_list_push(rgui->selection_buf, "Load Game (History)", RGUI_SETTINGS_OPEN_HISTORY, 0); + + if (rgui->core_info && core_info_list_num_info_files(rgui->core_info)) + rgui_list_push(rgui->selection_buf, "Load Game (Detect Core)", RGUI_SETTINGS_OPEN_FILEBROWSER_DEFERRED_CORE, 0); + + if (rgui->info.library_name || g_extern.system.info.library_name) + { + char load_game_core_msg[64]; + snprintf(load_game_core_msg, sizeof(load_game_core_msg), "Load Game (%s)", + rgui->info.library_name ? rgui->info.library_name : g_extern.system.info.library_name); + rgui_list_push(rgui->selection_buf, load_game_core_msg, RGUI_SETTINGS_OPEN_FILEBROWSER, 0); + } + + rgui_list_push(rgui->selection_buf, "Core Options", RGUI_SETTINGS_CORE_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Video Options", RGUI_SETTINGS_VIDEO_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Audio Options", RGUI_SETTINGS_AUDIO_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Input Options", RGUI_SETTINGS_INPUT_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Path Options", RGUI_SETTINGS_PATH_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Settings", RGUI_SETTINGS_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Drivers", RGUI_SETTINGS_DRIVERS, 0); + + if (g_extern.main_is_init && !g_extern.libretro_dummy) + { + if (g_extern.system.disk_control.get_num_images) + rgui_list_push(rgui->selection_buf, "Disk Options", RGUI_SETTINGS_DISK_OPTIONS, 0); + rgui_list_push(rgui->selection_buf, "Save State", RGUI_SETTINGS_SAVESTATE_SAVE, 0); + rgui_list_push(rgui->selection_buf, "Load State", RGUI_SETTINGS_SAVESTATE_LOAD, 0); +#ifdef HAVE_SCREENSHOTS + rgui_list_push(rgui->selection_buf, "Take Screenshot", RGUI_SETTINGS_SCREENSHOT, 0); +#endif + rgui_list_push(rgui->selection_buf, "Resume Game", RGUI_SETTINGS_RESUME_GAME, 0); + rgui_list_push(rgui->selection_buf, "Restart Game", RGUI_SETTINGS_RESTART_GAME, 0); + + } +#ifndef HAVE_DYNAMIC + rgui_list_push(rgui->selection_buf, "Restart RetroArch", RGUI_SETTINGS_RESTART_EMULATOR, 0); +#endif + rgui_list_push(rgui->selection_buf, "RetroArch Config", RGUI_SETTINGS_CONFIG, 0); + rgui_list_push(rgui->selection_buf, "Save New Config", RGUI_SETTINGS_SAVE_CONFIG, 0); + rgui_list_push(rgui->selection_buf, "Help", RGUI_START_SCREEN, 0); + rgui_list_push(rgui->selection_buf, "Quit RetroArch", RGUI_SETTINGS_QUIT_RARCH, 0); + break; + } +} + void menu_parse_and_resolve(void *data, unsigned menu_type) { const core_info_t *info = NULL; diff --git a/frontend/menu/menu_common.h b/frontend/menu/menu_common.h index ee6dd5ee1f..325a1744bb 100644 --- a/frontend/menu/menu_common.h +++ b/frontend/menu/menu_common.h @@ -365,7 +365,7 @@ int menu_set_settings(unsigned setting, unsigned action); void menu_set_settings_label(char *type_str, size_t type_str_size, unsigned *w, unsigned type); void menu_key_event(bool down, unsigned keycode, uint32_t character, uint16_t key_modifiers); -void menu_set_settings_populate_entries(void *data, unsigned menu_type); +void menu_populate_entries(void *data, unsigned menu_type); unsigned menu_type_is(unsigned type); #ifdef HAVE_RMENU diff --git a/frontend/menu/menu_settings.c b/frontend/menu/menu_settings.c index f8cfef3e22..53525592df 100644 --- a/frontend/menu/menu_settings.c +++ b/frontend/menu/menu_settings.c @@ -1120,216 +1120,6 @@ int menu_set_settings(unsigned setting, unsigned action) return 0; } -void menu_set_settings_populate_entries(void *data, unsigned menu_type) -{ - rgui_handle_t *rgui = (rgui_handle_t*)data; - unsigned i, last; - - switch (menu_type) - { -#ifdef HAVE_SHADER_MANAGER - case RGUI_SETTINGS_SHADER_OPTIONS: - rgui_list_clear(rgui->selection_buf); - rgui_list_push(rgui->selection_buf, "Apply Shader Changes", - RGUI_SETTINGS_SHADER_APPLY, 0); - rgui_list_push(rgui->selection_buf, "Default Filter", RGUI_SETTINGS_SHADER_FILTER, 0); - rgui_list_push(rgui->selection_buf, "Load Shader Preset", - RGUI_SETTINGS_SHADER_PRESET, 0); - rgui_list_push(rgui->selection_buf, "Shader Passes", - RGUI_SETTINGS_SHADER_PASSES, 0); - - for (i = 0; i < rgui->shader.passes; i++) - { - char buf[64]; - - snprintf(buf, sizeof(buf), "Shader #%u", i); - rgui_list_push(rgui->selection_buf, buf, - RGUI_SETTINGS_SHADER_0 + 3 * i, 0); - - snprintf(buf, sizeof(buf), "Shader #%u Filter", i); - rgui_list_push(rgui->selection_buf, buf, - RGUI_SETTINGS_SHADER_0_FILTER + 3 * i, 0); - - snprintf(buf, sizeof(buf), "Shader #%u Scale", i); - rgui_list_push(rgui->selection_buf, buf, - RGUI_SETTINGS_SHADER_0_SCALE + 3 * i, 0); - } - break; -#endif - case RGUI_SETTINGS_VIDEO_OPTIONS: - rgui_list_clear(rgui->selection_buf); -#ifdef HAVE_SHADER_MANAGER - rgui_list_push(rgui->selection_buf, "Shader Options", RGUI_SETTINGS_SHADER_OPTIONS, 0); -#endif -#ifdef GEKKO - rgui_list_push(rgui->selection_buf, "Screen Resolution", RGUI_SETTINGS_VIDEO_RESOLUTION, 0); -#endif -#ifndef HAVE_SHADER_MANAGER - rgui_list_push(rgui->selection_buf, "Default Filter", RGUI_SETTINGS_VIDEO_FILTER, 0); -#endif -#ifdef HW_RVL - rgui_list_push(rgui->selection_buf, "VI Trap filtering", RGUI_SETTINGS_VIDEO_SOFT_FILTER, 0); - rgui_list_push(rgui->selection_buf, "Gamma", RGUI_SETTINGS_VIDEO_GAMMA, 0); -#endif - rgui_list_push(rgui->selection_buf, "Integer Scale", RGUI_SETTINGS_VIDEO_INTEGER_SCALE, 0); - rgui_list_push(rgui->selection_buf, "Aspect Ratio", RGUI_SETTINGS_VIDEO_ASPECT_RATIO, 0); - rgui_list_push(rgui->selection_buf, "Custom Ratio", RGUI_SETTINGS_CUSTOM_VIEWPORT, 0); -#if !defined(RARCH_CONSOLE) && !defined(RARCH_MOBILE) - rgui_list_push(rgui->selection_buf, "Toggle Fullscreen", RGUI_SETTINGS_TOGGLE_FULLSCREEN, 0); -#endif - rgui_list_push(rgui->selection_buf, "Rotation", RGUI_SETTINGS_VIDEO_ROTATION, 0); - rgui_list_push(rgui->selection_buf, "VSync", RGUI_SETTINGS_VIDEO_VSYNC, 0); - rgui_list_push(rgui->selection_buf, "Hard GPU Sync", RGUI_SETTINGS_VIDEO_HARD_SYNC, 0); - rgui_list_push(rgui->selection_buf, "Hard GPU Sync Frames", RGUI_SETTINGS_VIDEO_HARD_SYNC_FRAMES, 0); - rgui_list_push(rgui->selection_buf, "Black Frame Insertion", RGUI_SETTINGS_VIDEO_BLACK_FRAME_INSERTION, 0); - rgui_list_push(rgui->selection_buf, "VSync Swap Interval", RGUI_SETTINGS_VIDEO_SWAP_INTERVAL, 0); -#ifdef HAVE_THREADS - rgui_list_push(rgui->selection_buf, "Threaded Driver", RGUI_SETTINGS_VIDEO_THREADED, 0); -#endif -#if !defined(RARCH_CONSOLE) && !defined(RARCH_MOBILE) - rgui_list_push(rgui->selection_buf, "Windowed Scale (X)", RGUI_SETTINGS_VIDEO_WINDOW_SCALE_X, 0); - rgui_list_push(rgui->selection_buf, "Windowed Scale (Y)", RGUI_SETTINGS_VIDEO_WINDOW_SCALE_Y, 0); -#endif - rgui_list_push(rgui->selection_buf, "Crop Overscan (reload)", RGUI_SETTINGS_VIDEO_CROP_OVERSCAN, 0); - rgui_list_push(rgui->selection_buf, "Estimated Monitor FPS", RGUI_SETTINGS_VIDEO_REFRESH_RATE_AUTO, 0); - break; - case RGUI_SETTINGS_CORE_OPTIONS: - rgui_list_clear(rgui->selection_buf); - - if (g_extern.system.core_options) - { - size_t i, opts; - - opts = core_option_size(g_extern.system.core_options); - for (i = 0; i < opts; i++) - rgui_list_push(rgui->selection_buf, - core_option_get_desc(g_extern.system.core_options, i), RGUI_SETTINGS_CORE_OPTION_START + i, 0); - } - else - rgui_list_push(rgui->selection_buf, "No options available.", RGUI_SETTINGS_CORE_OPTION_NONE, 0); - break; - case RGUI_SETTINGS_OPTIONS: - rgui_list_clear(rgui->selection_buf); - rgui_list_push(rgui->selection_buf, "Rewind", RGUI_SETTINGS_REWIND_ENABLE, 0); - rgui_list_push(rgui->selection_buf, "Rewind Granularity", RGUI_SETTINGS_REWIND_GRANULARITY, 0); -#ifdef HAVE_SCREENSHOTS - rgui_list_push(rgui->selection_buf, "GPU Screenshots", RGUI_SETTINGS_GPU_SCREENSHOT, 0); -#endif - rgui_list_push(rgui->selection_buf, "Config Save On Exit", RGUI_SETTINGS_CONFIG_SAVE_ON_EXIT, 0); -#if defined(HAVE_THREADS) && !defined(RARCH_CONSOLE) - rgui_list_push(rgui->selection_buf, "SRAM Autosave", RGUI_SETTINGS_SRAM_AUTOSAVE, 0); -#endif - rgui_list_push(rgui->selection_buf, "Show Framerate", RGUI_SETTINGS_DEBUG_TEXT, 0); - break; - case RGUI_SETTINGS_DISK_OPTIONS: - rgui_list_clear(rgui->selection_buf); - rgui_list_push(rgui->selection_buf, "Disk Index", RGUI_SETTINGS_DISK_INDEX, 0); - rgui_list_push(rgui->selection_buf, "Disk Image Append", RGUI_SETTINGS_DISK_APPEND, 0); - break; - case RGUI_SETTINGS_PATH_OPTIONS: - rgui_list_clear(rgui->selection_buf); - rgui_list_push(rgui->selection_buf, "Browser Directory", RGUI_BROWSER_DIR_PATH, 0); - rgui_list_push(rgui->selection_buf, "Config Directory", RGUI_CONFIG_DIR_PATH, 0); -#ifdef HAVE_DYNAMIC - rgui_list_push(rgui->selection_buf, "Core Directory", RGUI_LIBRETRO_DIR_PATH, 0); -#endif - rgui_list_push(rgui->selection_buf, "Core Info Directory", RGUI_LIBRETRO_INFO_DIR_PATH, 0); -#ifdef HAVE_SHADER_MANAGER - rgui_list_push(rgui->selection_buf, "Shader Directory", RGUI_SHADER_DIR_PATH, 0); -#endif - rgui_list_push(rgui->selection_buf, "Savestate Directory", RGUI_SAVESTATE_DIR_PATH, 0); - rgui_list_push(rgui->selection_buf, "Savefile Directory", RGUI_SAVEFILE_DIR_PATH, 0); -#ifdef HAVE_OVERLAY - rgui_list_push(rgui->selection_buf, "Overlay Directory", RGUI_OVERLAY_DIR_PATH, 0); -#endif - rgui_list_push(rgui->selection_buf, "System Directory", RGUI_SYSTEM_DIR_PATH, 0); -#ifdef HAVE_SCREENSHOTS - rgui_list_push(rgui->selection_buf, "Screenshot Directory", RGUI_SCREENSHOT_DIR_PATH, 0); -#endif - break; - case RGUI_SETTINGS_INPUT_OPTIONS: - rgui_list_clear(rgui->selection_buf); -#ifdef HAVE_OVERLAY - rgui_list_push(rgui->selection_buf, "Overlay Preset", RGUI_SETTINGS_OVERLAY_PRESET, 0); - rgui_list_push(rgui->selection_buf, "Overlay Opacity", RGUI_SETTINGS_OVERLAY_OPACITY, 0); - rgui_list_push(rgui->selection_buf, "Overlay Scale", RGUI_SETTINGS_OVERLAY_SCALE, 0); -#endif - rgui_list_push(rgui->selection_buf, "Player", RGUI_SETTINGS_BIND_PLAYER, 0); - rgui_list_push(rgui->selection_buf, "Device", RGUI_SETTINGS_BIND_DEVICE, 0); - rgui_list_push(rgui->selection_buf, "Device Type", RGUI_SETTINGS_BIND_DEVICE_TYPE, 0); - - rgui_list_push(rgui->selection_buf, "Configure All (RetroPad)", RGUI_SETTINGS_CUSTOM_BIND_ALL, 0); - rgui_list_push(rgui->selection_buf, "Default All (RetroPad)", RGUI_SETTINGS_CUSTOM_BIND_DEFAULT_ALL, 0); - - if (rgui->current_pad == 0) - rgui_list_push(rgui->selection_buf, "RGUI Menu Toggle", RGUI_SETTINGS_BIND_MENU_TOGGLE, 0); - - last = (driver.input && driver.input->set_keybinds) ? RGUI_SETTINGS_BIND_R3 : RGUI_SETTINGS_BIND_LAST; - for (i = RGUI_SETTINGS_BIND_BEGIN; i <= last; i++) - rgui_list_push(rgui->selection_buf, input_config_bind_map[i - RGUI_SETTINGS_BIND_BEGIN].desc, i, 0); - break; - case RGUI_SETTINGS_AUDIO_OPTIONS: - rgui_list_clear(rgui->selection_buf); - rgui_list_push(rgui->selection_buf, "Mute Audio", RGUI_SETTINGS_AUDIO_MUTE, 0); - rgui_list_push(rgui->selection_buf, "Rate Control Delta", RGUI_SETTINGS_AUDIO_CONTROL_RATE_DELTA, 0); - break; - case RGUI_SETTINGS_DRIVERS: - rgui_list_clear(rgui->selection_buf); - rgui_list_push(rgui->selection_buf, "Video driver", RGUI_SETTINGS_DRIVER_VIDEO, 0); - rgui_list_push(rgui->selection_buf, "Audio driver", RGUI_SETTINGS_DRIVER_AUDIO, 0); - rgui_list_push(rgui->selection_buf, "Input driver", RGUI_SETTINGS_DRIVER_INPUT, 0); - break; - case RGUI_SETTINGS: - rgui_list_clear(rgui->selection_buf); - -#if defined(HAVE_DYNAMIC) || defined(HAVE_LIBRETRO_MANAGEMENT) - rgui_list_push(rgui->selection_buf, "Core", RGUI_SETTINGS_CORE, 0); -#endif - if (rgui->history) - rgui_list_push(rgui->selection_buf, "Load Game (History)", RGUI_SETTINGS_OPEN_HISTORY, 0); - - if (rgui->core_info && core_info_list_num_info_files(rgui->core_info)) - rgui_list_push(rgui->selection_buf, "Load Game (Detect Core)", RGUI_SETTINGS_OPEN_FILEBROWSER_DEFERRED_CORE, 0); - - if (rgui->info.library_name || g_extern.system.info.library_name) - { - char load_game_core_msg[64]; - snprintf(load_game_core_msg, sizeof(load_game_core_msg), "Load Game (%s)", - rgui->info.library_name ? rgui->info.library_name : g_extern.system.info.library_name); - rgui_list_push(rgui->selection_buf, load_game_core_msg, RGUI_SETTINGS_OPEN_FILEBROWSER, 0); - } - - rgui_list_push(rgui->selection_buf, "Core Options", RGUI_SETTINGS_CORE_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Video Options", RGUI_SETTINGS_VIDEO_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Audio Options", RGUI_SETTINGS_AUDIO_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Input Options", RGUI_SETTINGS_INPUT_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Path Options", RGUI_SETTINGS_PATH_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Settings", RGUI_SETTINGS_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Drivers", RGUI_SETTINGS_DRIVERS, 0); - - if (g_extern.main_is_init && !g_extern.libretro_dummy) - { - if (g_extern.system.disk_control.get_num_images) - rgui_list_push(rgui->selection_buf, "Disk Options", RGUI_SETTINGS_DISK_OPTIONS, 0); - rgui_list_push(rgui->selection_buf, "Save State", RGUI_SETTINGS_SAVESTATE_SAVE, 0); - rgui_list_push(rgui->selection_buf, "Load State", RGUI_SETTINGS_SAVESTATE_LOAD, 0); -#ifdef HAVE_SCREENSHOTS - rgui_list_push(rgui->selection_buf, "Take Screenshot", RGUI_SETTINGS_SCREENSHOT, 0); -#endif - rgui_list_push(rgui->selection_buf, "Resume Game", RGUI_SETTINGS_RESUME_GAME, 0); - rgui_list_push(rgui->selection_buf, "Restart Game", RGUI_SETTINGS_RESTART_GAME, 0); - - } -#ifndef HAVE_DYNAMIC - rgui_list_push(rgui->selection_buf, "Restart RetroArch", RGUI_SETTINGS_RESTART_EMULATOR, 0); -#endif - rgui_list_push(rgui->selection_buf, "RetroArch Config", RGUI_SETTINGS_CONFIG, 0); - rgui_list_push(rgui->selection_buf, "Save New Config", RGUI_SETTINGS_SAVE_CONFIG, 0); - rgui_list_push(rgui->selection_buf, "Help", RGUI_START_SCREEN, 0); - rgui_list_push(rgui->selection_buf, "Quit RetroArch", RGUI_SETTINGS_QUIT_RARCH, 0); - break; - } -} void menu_set_settings_label(char *type_str, size_t type_str_size, unsigned *w, unsigned type) { diff --git a/frontend/menu/rgui.c b/frontend/menu/rgui.c index 02363cdb4c..edee508483 100644 --- a/frontend/menu/rgui.c +++ b/frontend/menu/rgui.c @@ -95,7 +95,7 @@ static void *rgui_init(void) rgui->selection_ptr = 0; rgui->push_start_screen = g_settings.rgui_show_start_screen; g_settings.rgui_show_start_screen = false; - menu_set_settings_populate_entries(rgui, RGUI_SETTINGS); + menu_populate_entries(rgui, RGUI_SETTINGS); return rgui; } @@ -657,9 +657,9 @@ static int rgui_settings_iterate(rgui_handle_t *rgui, rgui_action_t action) || menu_type == RGUI_SETTINGS_VIDEO_OPTIONS || menu_type == RGUI_SETTINGS_SHADER_OPTIONS ) - menu_set_settings_populate_entries(rgui, menu_type); + menu_populate_entries(rgui, menu_type); else - menu_set_settings_populate_entries(rgui, RGUI_SETTINGS); + menu_populate_entries(rgui, RGUI_SETTINGS); } render_text(rgui);