(Menu) Some cleanups
This commit is contained in:
parent
3a884262cb
commit
aa0b6c0f10
|
@ -134,9 +134,11 @@ int entries_push_main_menu_list(menu_handle_t *menu,
|
||||||
const char *path, const char *label,
|
const char *path, const char *label,
|
||||||
unsigned menu_type)
|
unsigned menu_type)
|
||||||
{
|
{
|
||||||
|
rarch_setting_t *setting = NULL;
|
||||||
|
|
||||||
settings_list_free(menu->list_mainmenu);
|
settings_list_free(menu->list_mainmenu);
|
||||||
menu->list_mainmenu = (rarch_setting_t *)setting_data_new(SL_FLAG_MAIN_MENU);
|
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);
|
label);
|
||||||
|
|
||||||
if (!setting)
|
if (!setting)
|
||||||
|
@ -199,13 +201,12 @@ int entries_push_horizontal_menu_list(menu_handle_t *menu,
|
||||||
const char *path, const char *label,
|
const char *path, const char *label,
|
||||||
unsigned menu_type)
|
unsigned menu_type)
|
||||||
{
|
{
|
||||||
menu_list_clear(list);
|
|
||||||
|
|
||||||
core_info_t *info = NULL;
|
core_info_t *info = NULL;
|
||||||
core_info_list_t *info_list = NULL;
|
core_info_list_t *info_list = NULL;
|
||||||
|
|
||||||
|
menu_list_clear(list);
|
||||||
|
|
||||||
info_list = (core_info_list_t*)g_extern.core_info;
|
info_list = (core_info_list_t*)g_extern.core_info;
|
||||||
info = NULL;
|
|
||||||
|
|
||||||
if (!info_list)
|
if (!info_list)
|
||||||
return -1;
|
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)
|
unsigned default_type_plain, const char *exts)
|
||||||
{
|
{
|
||||||
size_t i, list_size;
|
size_t i, list_size;
|
||||||
|
bool path_is_compressed, push_dir;
|
||||||
struct string_list *str_list = NULL;
|
struct string_list *str_list = NULL;
|
||||||
|
|
||||||
menu_list_clear(list);
|
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);
|
LWP_MutexUnlock(gx_device_mutex);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
bool path_is_compressed = path_is_compressed_file(dir);
|
path_is_compressed = path_is_compressed_file(dir);
|
||||||
bool push_dir = menu_common_type_is(label, type) == MENU_FILE_DIRECTORY;
|
push_dir = menu_common_type_is(label, type) == MENU_FILE_DIRECTORY;
|
||||||
|
|
||||||
if (path_is_compressed)
|
if (path_is_compressed)
|
||||||
str_list = compressed_file_list_new(dir,exts);
|
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;
|
list_size = str_list->size;
|
||||||
for (i = 0; i < str_list->size; i++)
|
for (i = 0; i < str_list->size; i++)
|
||||||
{
|
{
|
||||||
|
bool is_dir;
|
||||||
|
const char *path = NULL;
|
||||||
menu_file_type_t file_type = MENU_FILE_NONE;
|
menu_file_type_t file_type = MENU_FILE_NONE;
|
||||||
|
|
||||||
switch (str_list->elems[i].attr.i)
|
switch (str_list->elems[i].attr.i)
|
||||||
{
|
{
|
||||||
case RARCH_DIRECTORY:
|
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;
|
file_type = (menu_file_type_t)default_type_plain;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
bool is_dir = (file_type == MENU_FILE_DIRECTORY);
|
|
||||||
|
is_dir = (file_type == MENU_FILE_DIRECTORY);
|
||||||
|
|
||||||
if (push_dir && !is_dir)
|
if (push_dir && !is_dir)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|
||||||
/* Need to preserve slash first time. */
|
/* 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)
|
if (*dir && !path_is_compressed)
|
||||||
path = path_basename(path);
|
path = path_basename(path);
|
||||||
|
@ -472,7 +477,6 @@ 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)
|
int menu_entries_deferred_push(file_list_t *list, file_list_t *menu_list)
|
||||||
{
|
{
|
||||||
unsigned type = 0;
|
unsigned type = 0;
|
||||||
|
|
||||||
const char *path = NULL;
|
const char *path = NULL;
|
||||||
const char *label = NULL;
|
const char *label = NULL;
|
||||||
menu_file_list_cbs_t *cbs = NULL;
|
menu_file_list_cbs_t *cbs = NULL;
|
||||||
|
|
|
@ -22,6 +22,7 @@
|
||||||
void menu_list_destroy(file_list_t *list)
|
void menu_list_destroy(file_list_t *list)
|
||||||
{
|
{
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
if (!list)
|
if (!list)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -70,9 +71,9 @@ void *menu_list_new(void)
|
||||||
|
|
||||||
size_t menu_list_get_stack_size(menu_list_t *list)
|
size_t menu_list_get_stack_size(menu_list_t *list)
|
||||||
{
|
{
|
||||||
if (list)
|
if (!list)
|
||||||
return file_list_get_size(list->menu_stack);
|
|
||||||
return 0;
|
return 0;
|
||||||
|
return file_list_get_size(list->menu_stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
void menu_list_get_at_offset(const file_list_t *list, size_t idx,
|
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)
|
size_t menu_list_get_size(menu_list_t *list)
|
||||||
{
|
{
|
||||||
if (list)
|
if (!list)
|
||||||
return file_list_get_size(list->selection_buf);
|
|
||||||
return 0;
|
return 0;
|
||||||
|
return file_list_get_size(list->selection_buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
void menu_list_get_last(const file_list_t *list,
|
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)
|
void *menu_list_get_actiondata_at_offset(const file_list_t *list, size_t idx)
|
||||||
{
|
{
|
||||||
if (list)
|
if (!list)
|
||||||
return file_list_get_actiondata_at_offset(list, idx);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
|
return file_list_get_actiondata_at_offset(list, idx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *menu_list_get_last_stack_actiondata(const menu_list_t *list)
|
void *menu_list_get_last_stack_actiondata(const menu_list_t *list)
|
||||||
{
|
{
|
||||||
if (list)
|
if (!list)
|
||||||
return file_list_get_last_actiondata(list->menu_stack);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
|
return file_list_get_last_actiondata(list->menu_stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
void menu_list_flush_stack(menu_list_t *list,
|
void menu_list_flush_stack(menu_list_t *list,
|
||||||
|
@ -238,6 +239,7 @@ void menu_list_push(file_list_t *list,
|
||||||
{
|
{
|
||||||
if (!list)
|
if (!list)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
file_list_push(list, path, label, type, directory_ptr);
|
file_list_push(list, path, label, type, directory_ptr);
|
||||||
|
|
||||||
if (!driver.menu_ctx)
|
if (!driver.menu_ctx)
|
||||||
|
@ -255,6 +257,7 @@ void menu_list_push_refresh(file_list_t *list,
|
||||||
{
|
{
|
||||||
if (!list)
|
if (!list)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
menu_list_push(list, path, label, type, directory_ptr);
|
menu_list_push(list, path, label, type, directory_ptr);
|
||||||
menu_navigation_clear(driver.menu, true);
|
menu_navigation_clear(driver.menu, true);
|
||||||
driver.menu->need_refresh = true;
|
driver.menu->need_refresh = true;
|
||||||
|
|
Loading…
Reference in New Issue