(Menu) Some cleanups

This commit is contained in:
twinaphex 2015-01-10 04:06:56 +01:00
parent 3a884262cb
commit aa0b6c0f10
2 changed files with 31 additions and 24 deletions

View File

@ -134,9 +134,11 @@ int entries_push_main_menu_list(menu_handle_t *menu,
const char *path, const char *label,
unsigned menu_type)
{
rarch_setting_t *setting = NULL;
settings_list_free(menu->list_mainmenu);
menu->list_mainmenu = (rarch_setting_t *)setting_data_new(SL_FLAG_MAIN_MENU);
rarch_setting_t *setting = (rarch_setting_t*)setting_data_find_setting(menu->list_mainmenu,
setting = (rarch_setting_t*)setting_data_find_setting(menu->list_mainmenu,
label);
if (!setting)
@ -199,13 +201,12 @@ int entries_push_horizontal_menu_list(menu_handle_t *menu,
const char *path, const char *label,
unsigned menu_type)
{
menu_list_clear(list);
core_info_t *info = NULL;
core_info_list_t *info_list = NULL;
menu_list_clear(list);
info_list = (core_info_list_t*)g_extern.core_info;
info = NULL;
if (!info_list)
return -1;
@ -326,6 +327,7 @@ int menu_entries_parse_list(file_list_t *list, file_list_t *menu_list,
unsigned default_type_plain, const char *exts)
{
size_t i, list_size;
bool path_is_compressed, push_dir;
struct string_list *str_list = NULL;
menu_list_clear(list);
@ -348,8 +350,8 @@ int menu_entries_parse_list(file_list_t *list, file_list_t *menu_list,
LWP_MutexUnlock(gx_device_mutex);
#endif
bool path_is_compressed = path_is_compressed_file(dir);
bool push_dir = menu_common_type_is(label, type) == MENU_FILE_DIRECTORY;
path_is_compressed = path_is_compressed_file(dir);
push_dir = menu_common_type_is(label, type) == MENU_FILE_DIRECTORY;
if (path_is_compressed)
str_list = compressed_file_list_new(dir,exts);
@ -368,7 +370,10 @@ int menu_entries_parse_list(file_list_t *list, file_list_t *menu_list,
list_size = str_list->size;
for (i = 0; i < str_list->size; i++)
{
bool is_dir;
const char *path = NULL;
menu_file_type_t file_type = MENU_FILE_NONE;
switch (str_list->elems[i].attr.i)
{
case RARCH_DIRECTORY:
@ -396,14 +401,14 @@ int menu_entries_parse_list(file_list_t *list, file_list_t *menu_list,
file_type = (menu_file_type_t)default_type_plain;
break;
}
bool is_dir = (file_type == MENU_FILE_DIRECTORY);
is_dir = (file_type == MENU_FILE_DIRECTORY);
if (push_dir && !is_dir)
continue;
/* Need to preserve slash first time. */
const char *path = str_list->elems[i].data;
path = str_list->elems[i].data;
if (*dir && !path_is_compressed)
path = path_basename(path);
@ -471,10 +476,9 @@ int menu_entries_parse_list(file_list_t *list, file_list_t *menu_list,
int menu_entries_deferred_push(file_list_t *list, file_list_t *menu_list)
{
unsigned type = 0;
const char *path = NULL;
const char *label = NULL;
unsigned type = 0;
const char *path = NULL;
const char *label = NULL;
menu_file_list_cbs_t *cbs = NULL;
menu_list_get_last_stack(driver.menu->menu_list, &path, &label, &type);

View File

@ -22,6 +22,7 @@
void menu_list_destroy(file_list_t *list)
{
unsigned i;
if (!list)
return;
@ -70,9 +71,9 @@ void *menu_list_new(void)
size_t menu_list_get_stack_size(menu_list_t *list)
{
if (list)
return file_list_get_size(list->menu_stack);
return 0;
if (!list)
return 0;
return file_list_get_size(list->menu_stack);
}
void menu_list_get_at_offset(const file_list_t *list, size_t idx,
@ -83,9 +84,9 @@ void menu_list_get_at_offset(const file_list_t *list, size_t idx,
size_t menu_list_get_size(menu_list_t *list)
{
if (list)
return file_list_get_size(list->selection_buf);
return 0;
if (!list)
return 0;
return file_list_get_size(list->selection_buf);
}
void menu_list_get_last(const file_list_t *list,
@ -106,16 +107,16 @@ void menu_list_get_last_stack(const menu_list_t *list,
void *menu_list_get_actiondata_at_offset(const file_list_t *list, size_t idx)
{
if (list)
return file_list_get_actiondata_at_offset(list, idx);
return NULL;
if (!list)
return NULL;
return file_list_get_actiondata_at_offset(list, idx);
}
void *menu_list_get_last_stack_actiondata(const menu_list_t *list)
{
if (list)
if (!list)
return NULL;
return file_list_get_last_actiondata(list->menu_stack);
return NULL;
}
void menu_list_flush_stack(menu_list_t *list,
@ -238,6 +239,7 @@ void menu_list_push(file_list_t *list,
{
if (!list)
return;
file_list_push(list, path, label, type, directory_ptr);
if (!driver.menu_ctx)
@ -255,6 +257,7 @@ void menu_list_push_refresh(file_list_t *list,
{
if (!list)
return;
menu_list_push(list, path, label, type, directory_ptr);
menu_navigation_clear(driver.menu, true);
driver.menu->need_refresh = true;