Add more logic

This commit is contained in:
twinaphex 2015-05-21 22:40:31 +02:00
parent 9ddcd4aa87
commit 69d34c9dbc
3 changed files with 26 additions and 15 deletions

View File

@ -88,6 +88,7 @@ typedef enum
MENU_FILE_RDB_ENTRY,
MENU_FILE_CURSOR,
MENU_FILE_RECORD_CONFIG,
MENU_FILE_PLAYLIST_COLLECTION,
MENU_SETTINGS,
MENU_SETTING_DRIVER,
MENU_SETTING_ACTION,

View File

@ -1657,29 +1657,29 @@ static int menu_displaylist_parse_generic(menu_displaylist_info_t *info, bool *n
if (*info->path && !path_is_compressed)
path = path_basename(path);
#ifdef HAVE_LIBRETRO_MANAGEMENT
#ifdef RARCH_CONSOLE
if (!strcmp(info->label, "core_list") && (is_dir ||
strcasecmp(path, SALAMANDER_FILE) == 0))
continue;
#endif
#endif
/* Push type further down in the chain.
* Needed for shader manager currently. */
if (!strcmp(info->label, "core_list"))
if (!strcmp(info->label, "content_collection_list"))
{
file_type = MENU_FILE_PLAYLIST_COLLECTION;
}
else if (!strcmp(info->label, "core_list"))
{
#ifdef HAVE_LIBRETRO_MANAGEMENT
#ifdef RARCH_CONSOLE
if (is_dir || strcasecmp(path, SALAMANDER_FILE) == 0)
continue;
#endif
#endif
/* Compressed cores are unsupported */
if (file_type == MENU_FILE_CARCHIVE)
continue;
menu_list_push(info->list, path, "",
is_dir ? MENU_FILE_DIRECTORY : MENU_FILE_CORE, 0);
file_type = is_dir ? MENU_FILE_DIRECTORY : MENU_FILE_CORE;
}
else
menu_list_push(info->list, path, "",
file_type, 0);
menu_list_push(info->list, path, "",
file_type, 0);
}
string_list_free(str_list);

View File

@ -1289,6 +1289,13 @@ static int action_ok_help(const char *path,
return menu_displaylist_push_list(&info, DISPLAYLIST_HELP);
}
static int action_ok_playlist_collection(const char *path,
const char *label, unsigned type, size_t idx)
{
RARCH_LOG("Gets here.\n");
return 0;
}
static int action_ok_video_resolution(const char *path,
const char *label, unsigned type, size_t idx)
{
@ -1479,6 +1486,9 @@ void menu_entries_cbs_init_bind_ok(menu_file_list_cbs_t *cbs,
case MENU_SETTINGS_VIDEO_RESOLUTION:
cbs->action_ok = action_ok_video_resolution;
break;
case MENU_FILE_PLAYLIST_COLLECTION:
cbs->action_ok = action_ok_playlist_collection;
break;
case MENU_FILE_PLAYLIST_ENTRY:
if (!strcmp(label, "rdb_entry_start_game"))
cbs->action_ok = action_ok_rdb_playlist_entry;