diff --git a/menu/drivers/glui.c b/menu/drivers/glui.c index f5be37a9a5..654e278bd3 100644 --- a/menu/drivers/glui.c +++ b/menu/drivers/glui.c @@ -463,15 +463,11 @@ static void glui_free(void *data) } -static void glui_context_reset(void *data) +static void glui_context_reset(menu_handle_t *menu) { char bgpath[PATH_MAX_LENGTH]; glui_handle_t *glui = NULL; - menu_handle_t *menu = (menu_handle_t*)data; - gl_t *gl = (gl_t*)video_driver_resolve(NULL); - (void)gl; - if (!menu) return; @@ -494,17 +490,15 @@ static void glui_context_reset(void *data) TEXTURE_FILTER_LINEAR); } -static void glui_navigation_clear(void *data, bool pending_push) +static void glui_navigation_clear(menu_handle_t *menu, bool pending_push) { - menu_handle_t *menu = (menu_handle_t*)data; if (menu) menu->begin = 0; } -static void glui_navigation_set(void *data, bool scroll) +static void glui_navigation_set(menu_handle_t *menu, bool scroll) { glui_handle_t *glui = NULL; - menu_handle_t *menu = (menu_handle_t*)data; if (!menu) return; @@ -528,19 +522,19 @@ static void glui_navigation_set(void *data, bool scroll) - glui->term_height; } -static void glui_navigation_set_last(void *data) +static void glui_navigation_set_last(menu_handle_t *menu) { - glui_navigation_set(data, true); + glui_navigation_set(menu, true); } -static void glui_navigation_descend_alphabet(void *data, size_t *unused) +static void glui_navigation_descend_alphabet(menu_handle_t *menu, size_t *unused) { - glui_navigation_set(data, true); + glui_navigation_set(menu, true); } -static void glui_navigation_ascend_alphabet(void *data, size_t *unused) +static void glui_navigation_ascend_alphabet(menu_handle_t *menu, size_t *unused) { - glui_navigation_set(data, true); + glui_navigation_set(menu, true); } menu_ctx_driver_t menu_ctx_glui = { diff --git a/menu/drivers/rgui.c b/menu/drivers/rgui.c index 456a351379..d9149a9f93 100644 --- a/menu/drivers/rgui.c +++ b/menu/drivers/rgui.c @@ -525,15 +525,14 @@ static void rgui_set_texture(menu_handle_t *menu) menu->frame_buf.data, false, menu->width, menu->height, 1.0f); } -static void rgui_navigation_clear(void *data, bool pending_push) +static void rgui_navigation_clear(menu_handle_t *menu, bool pending_push) { - driver.menu->begin = 0; + if (menu) + menu->begin = 0; } -static void rgui_navigation_set(void *data, bool scroll) +static void rgui_navigation_set(menu_handle_t *menu, bool scroll) { - menu_handle_t *menu = (menu_handle_t*)data; - if (!menu) return; if (!scroll) @@ -551,25 +550,25 @@ static void rgui_navigation_set(void *data, bool scroll) - RGUI_TERM_HEIGHT; } -static void rgui_navigation_set_last(void *data) +static void rgui_navigation_set_last(menu_handle_t *menu) { - rgui_navigation_set(data, true); + rgui_navigation_set(menu, true); } -static void rgui_navigation_descend_alphabet(void *data, size_t *unused) +static void rgui_navigation_descend_alphabet(menu_handle_t *menu, size_t *unused) { - rgui_navigation_set(data, true); + rgui_navigation_set(menu, true); } -static void rgui_navigation_ascend_alphabet(void *data, size_t *unused) +static void rgui_navigation_ascend_alphabet(menu_handle_t *menu, size_t *unused) { - rgui_navigation_set(data, true); + rgui_navigation_set(menu, true); } -static void rgui_populate_entries(void *data, const char *path, +static void rgui_populate_entries(menu_handle_t *menu, const char *path, const char *label, unsigned k) { - rgui_navigation_set(data, true); + rgui_navigation_set(menu, true); } menu_ctx_driver_t menu_ctx_rgui = { diff --git a/menu/drivers/rmenu_xui.cpp b/menu/drivers/rmenu_xui.cpp index d0273a5f11..2b9f856623 100644 --- a/menu/drivers/rmenu_xui.cpp +++ b/menu/drivers/rmenu_xui.cpp @@ -612,33 +612,30 @@ static void rmenu_xui_render(menu_handle_t *menu) } } -static void rmenu_xui_populate_entries(void *data, const char *path, +static void rmenu_xui_populate_entries(menu_handle_t *menu, const char *path, const char *label, unsigned i) { - menu_handle_t *menu = (menu_handle_t*)data; + (void)menu; (void)label; (void)path; XuiListSetCurSelVisible(m_menulist, menu->selection_ptr); } -static void rmenu_xui_navigation_clear(void *data, bool pending_push) +static void rmenu_xui_navigation_clear(menu_handle_t *menu, bool pending_push) { - menu_handle_t *menu = (menu_handle_t*)data; - (void)pending_push; if (menu) XuiListSetCurSelVisible(m_menulist, menu->selection_ptr); } -static void rmenu_xui_navigation_set_visible(void *data) +static void rmenu_xui_navigation_set_visible(menu_handle_t *menu) { - menu_handle_t *menu = (menu_handle_t*)data; XuiListSetCurSelVisible(m_menulist, menu->selection_ptr); } -static void rmenu_xui_navigation_alphabet(void *data, size_t *ptr_out) +static void rmenu_xui_navigation_alphabet(menu_handle_t *menu, size_t *ptr_out) { XuiListSetCurSelVisible(m_menulist, *ptr_out); } @@ -674,9 +671,8 @@ static void rmenu_xui_list_clear(void *data) XuiListDeleteItems(m_menulist, 0, XuiListGetItemCount(m_menulist)); } -static void rmenu_xui_list_set_selection(void *data) +static void rmenu_xui_list_set_selection(file_list_t *list) { - file_list_t *list = (file_list_t*)data; if (list) XuiListSetCurSel(m_menulist, file_list_get_directory_ptr(list)); } diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index bb8626ba9d..fdcd9a823f 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -740,16 +740,15 @@ static void xmb_list_switch(menu_handle_t *menu, xmb_handle_t *xmb) xmb->old_depth = xmb->depth; } -static void xmb_populate_entries(void *data, const char *path, +static void xmb_populate_entries(menu_handle_t *menu, const char *path, const char *label, unsigned k) { - menu_handle_t *menu = driver.menu; xmb_handle_t *xmb = NULL; if (!menu) return; - xmb = (xmb_handle_t*)driver.menu->userdata; + xmb = (xmb_handle_t*)menu->userdata; if (!xmb) return; @@ -762,7 +761,7 @@ static void xmb_populate_entries(void *data, const char *path, xmb_set_title(xmb); - if (driver.menu->cat_selection_ptr != xmb->active_category_old) + if (menu->cat_selection_ptr != xmb->active_category_old) xmb_list_open(xmb); else xmb_list_switch(menu, xmb); @@ -1198,7 +1197,7 @@ static bool xmb_font_init_first(const gl_font_renderer_t **font_driver, font_path, xmb_font_size); } -static void xmb_context_reset(void *data) +static void xmb_context_reset(menu_handle_t *menu) { int i, k; char bgpath[PATH_MAX_LENGTH]; @@ -1210,7 +1209,6 @@ static void xmb_context_reset(void *data) core_info_list_t* info_list = NULL; gl_t *gl = NULL; xmb_handle_t *xmb = NULL; - menu_handle_t *menu = (menu_handle_t*)data; xmb_node_t *node = NULL; if (!menu) @@ -1347,44 +1345,44 @@ static void xmb_context_reset(void *data) } } -static void xmb_navigation_clear(void *data, bool pending_push) +static void xmb_navigation_clear(menu_handle_t *menu, bool pending_push) { if (!pending_push) - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } -static void xmb_navigation_decrement(void *data) +static void xmb_navigation_decrement(menu_handle_t *menu) { - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } -static void xmb_navigation_increment(void *data) +static void xmb_navigation_increment(menu_handle_t *menu) { - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } -static void xmb_navigation_set(void *data, bool scroll) +static void xmb_navigation_set(menu_handle_t *menu, bool scroll) { (void)scroll; - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } -static void xmb_navigation_set_last(void *data) +static void xmb_navigation_set_last(menu_handle_t *menu) { - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } -static void xmb_navigation_descend_alphabet(void *data, size_t *unused) +static void xmb_navigation_descend_alphabet(menu_handle_t *menu, size_t *unused) { (void)unused; - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } -static void xmb_navigation_ascend_alphabet(void *data, size_t *unused) +static void xmb_navigation_ascend_alphabet(menu_handle_t *menu, size_t *unused) { (void)unused; - xmb_selection_pointer_changed((menu_handle_t*)data); + xmb_selection_pointer_changed(menu); } static void xmb_list_insert(void *data, @@ -1488,16 +1486,15 @@ static void xmb_list_cache(bool horizontal, unsigned action) MENU_SETTING_HORIZONTAL_MENU; } -static void xmb_list_set_selection(void *data) +static void xmb_list_set_selection(file_list_t *list) { - (void)data; + (void)list; } -static void xmb_context_destroy(void *data) +static void xmb_context_destroy(menu_handle_t *menu) { unsigned i; xmb_handle_t *xmb = NULL; - menu_handle_t *menu = (menu_handle_t*)driver.menu; if (!menu) return; @@ -1510,7 +1507,7 @@ static void xmb_context_destroy(void *data) for (i = 0; i < XMB_TEXTURE_LAST; i++) glDeleteTextures(1, &xmb->textures[i].id); - for (i = 1; i < driver.menu->num_categories; i++) + for (i = 1; i < menu->num_categories; i++) { xmb_node_t *node = xmb_node_for_core(xmb, i - 1); diff --git a/menu/menu_driver.h b/menu/menu_driver.h index 04a7e640fd..28692c3315 100644 --- a/menu/menu_driver.h +++ b/menu/menu_driver.h @@ -187,23 +187,23 @@ typedef struct menu_ctx_driver void (*frame)(menu_handle_t *menu); void* (*init)(void); void (*free)(void*); - void (*context_reset)(void*); - void (*context_destroy)(void*); - void (*populate_entries)(void*, const char *, const char *, - unsigned); + void (*context_reset)(menu_handle_t *menu); + void (*context_destroy)(menu_handle_t *menu); + void (*populate_entries)(menu_handle_t *menu, const char *path, const char *label, + unsigned k); void (*toggle)(bool); - void (*navigation_clear)(void *, bool); - void (*navigation_decrement)(void *); - void (*navigation_increment)(void *); - void (*navigation_set)(void *, bool); - void (*navigation_set_last)(void *); - void (*navigation_descend_alphabet)(void *, size_t *); - void (*navigation_ascend_alphabet)(void *, size_t *); + void (*navigation_clear)(menu_handle_t *menu, bool); + void (*navigation_decrement)(menu_handle_t *menu); + void (*navigation_increment)(menu_handle_t *menu); + void (*navigation_set)(menu_handle_t *menu, bool); + void (*navigation_set_last)(menu_handle_t *menu); + void (*navigation_descend_alphabet)(menu_handle_t *menu, size_t *); + void (*navigation_ascend_alphabet)(menu_handle_t *menu, size_t *); void (*list_insert)(void *, const char *, const char *, size_t); void (*list_delete)(void *, size_t, size_t); void (*list_clear)(void *); void (*list_cache)(bool, unsigned); - void (*list_set_selection)(void *); + void (*list_set_selection)(file_list_t *list); int (*entry_iterate)(menu_handle_t *menu, unsigned); const char *ident; } menu_ctx_driver_t;