mirror of
https://github.com/libretro/RetroArch
synced 2025-03-29 22:20:21 +00:00
Create MENU_DISPLAY_CTL_SET_STUB_DRAW_FRAME/MENU_DISPLAY_CTL_UNSET_STUB_DRAW_FRAME
This commit is contained in:
parent
5ec501f934
commit
faad85e596
@ -256,12 +256,25 @@ bool menu_display_init_main_font(void *data,
|
||||
bool menu_display_ctl(enum menu_display_ctl_state state, void *data)
|
||||
{
|
||||
unsigned width, height;
|
||||
static menu_display_draw_t draw_bak = NULL;
|
||||
static menu_display_draw_bg_t draw_bg_bak = NULL;
|
||||
menu_framebuf_t *frame_buf = menu_display_fb_get_ptr();
|
||||
menu_display_t *disp = menu_display_get_ptr();
|
||||
menu_display_ctx_driver_t *menu_disp = menu_display_context_get_ptr();
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
switch (state)
|
||||
{
|
||||
case MENU_DISPLAY_CTL_SET_STUB_DRAW_FRAME:
|
||||
draw_bak = menu_disp->draw;
|
||||
draw_bg_bak = menu_disp->draw_bg;
|
||||
menu_disp->draw = menu_display_ctx_null.draw;
|
||||
menu_disp->draw_bg = menu_display_ctx_null.draw_bg;
|
||||
break;
|
||||
case MENU_DISPLAY_CTL_UNSET_STUB_DRAW_FRAME:
|
||||
menu_disp->draw = draw_bak;
|
||||
menu_disp->draw_bg = draw_bg_bak;
|
||||
break;
|
||||
case MENU_DISPLAY_CTL_FONT_BUF:
|
||||
{
|
||||
void **ptr = (void**)data;
|
||||
|
@ -50,6 +50,8 @@ enum menu_display_ctl_state
|
||||
MENU_DISPLAY_CTL_SET_FB_PITCH,
|
||||
MENU_DISPLAY_CTL_LIBRETRO,
|
||||
MENU_DISPLAY_CTL_LIBRETRO_RUNNING,
|
||||
MENU_DISPLAY_CTL_SET_STUB_DRAW_FRAME,
|
||||
MENU_DISPLAY_CTL_UNSET_STUB_DRAW_FRAME,
|
||||
MENU_DISPLAY_CTL_FONT_DATA_INIT,
|
||||
MENU_DISPLAY_CTL_SET_FONT_DATA_INIT,
|
||||
MENU_DISPLAY_CTL_FONT_SIZE,
|
||||
@ -76,16 +78,14 @@ enum menu_display_driver_type
|
||||
MENU_VIDEO_DRIVER_DIRECT3D
|
||||
};
|
||||
|
||||
typedef struct menu_display_ctx_driver
|
||||
{
|
||||
void (*draw)(float x, float y,
|
||||
typedef void (*menu_display_draw_t)(float x, float y,
|
||||
unsigned width, unsigned height,
|
||||
struct gfx_coords *coords,
|
||||
void *matrix_data,
|
||||
uintptr_t texture,
|
||||
enum menu_display_prim_type prim_type
|
||||
);
|
||||
void (*draw_bg)(
|
||||
typedef void (*menu_display_draw_bg_t)(
|
||||
unsigned width, unsigned height,
|
||||
uintptr_t texture,
|
||||
float handle_alpha,
|
||||
@ -97,6 +97,11 @@ typedef struct menu_display_ctx_driver
|
||||
size_t vertex_count,
|
||||
enum menu_display_prim_type prim_type
|
||||
);
|
||||
|
||||
typedef struct menu_display_ctx_driver
|
||||
{
|
||||
menu_display_draw_t draw;
|
||||
menu_display_draw_bg_t draw_bg;
|
||||
void (*blend_begin)(void);
|
||||
void (*blend_end)(void);
|
||||
void (*restore_clear_color)(void);
|
||||
|
Loading…
x
Reference in New Issue
Block a user