(Menu) Update menu_navigation

This commit is contained in:
twinaphex 2014-03-08 05:48:52 +01:00
parent 4da1d1f8a3
commit 16eb15376d
4 changed files with 16 additions and 6 deletions

View File

@ -35,6 +35,8 @@
rgui_handle_t *rgui;
const menu_ctx_driver_t *menu_ctx;
static void menu_parse_and_resolve(void *data, unsigned menu_type);
static void menu_update_system_info(void *data, bool *load_no_rom)
{
rgui_handle_t *rgui = (rgui_handle_t*)data;
@ -1093,9 +1095,9 @@ static int menu_iterate_func(void *data, void *video_data, unsigned action)
case RGUI_ACTION_RIGHT:
if (rgui->selection_ptr + fast_scroll_speed < rgui->selection_buf->size)
rgui->selection_ptr += fast_scroll_speed;
menu_set_navigation(rgui, rgui->selection_ptr + fast_scroll_speed);
else
rgui->selection_ptr = rgui->selection_buf->size - 1;
menu_set_navigation_last(rgui);
break;
case RGUI_ACTION_SCROLL_UP:
@ -1108,8 +1110,8 @@ static int menu_iterate_func(void *data, void *video_data, unsigned action)
case RGUI_ACTION_CANCEL:
if (rgui->menu_stack->size > 1)
{
rgui->need_refresh = true;
file_list_pop(rgui->menu_stack, &rgui->selection_ptr);
rgui->need_refresh = true;
}
break;
@ -2157,7 +2159,7 @@ void menu_populate_entries(void *data, unsigned menu_type)
menu_ctx->populate_entries(rgui, menu_type);
}
void menu_parse_and_resolve(void *data, unsigned menu_type)
static void menu_parse_and_resolve(void *data, unsigned menu_type)
{
const core_info_t *info = NULL;
const char *dir;

View File

@ -420,8 +420,6 @@ void shader_manager_save_preset(void *data, const char *basename, bool apply);
void menu_ticker_line(char *buf, size_t len, unsigned tick, const char *str, bool selected);
void menu_parse_and_resolve(void *data, unsigned menu_type);
void menu_init_core_info(void *data);
void load_menu_game_prepare(void *video_data);

View File

@ -66,6 +66,15 @@ void menu_set_navigation(void *data, size_t i)
#endif
}
void menu_set_navigation_last(void *data)
{
rgui_handle_t *rgui = (rgui_handle_t*)data;
rgui->selection_ptr = rgui->selection_buf->size - 1;
#ifdef HAVE_RMENU_XUI
XuiListSetCurSelVisible(m_menulist, rgui->selection_ptr);
#endif
}
void menu_descend_alphabet(void *data, size_t *ptr_out)
{
rgui_handle_t *rgui = (rgui_handle_t*)data;

View File

@ -21,6 +21,7 @@ void menu_clear_navigation(void *data);
void menu_decrement_navigation(void *data);
void menu_increment_navigation(void *data);
void menu_set_navigation(void *data, size_t i);
void menu_set_navigation_last(void *data);
void menu_descend_alphabet(void *data, size_t *ptr_out);
void menu_ascend_alphabet(void *data, size_t *ptr_out);