From e196fdf1414e7b976d4dd5cd987e7d913a65df04 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sat, 5 Dec 2015 10:49:28 +0100 Subject: [PATCH] font_driver_render_msg - make it possible to pass special font data --- gfx/d3d/d3d.cpp | 4 ++-- gfx/drivers/gl.c | 15 ++------------- gfx/drivers/vita2d_gfx.c | 2 +- gfx/font_driver.c | 4 ++-- gfx/font_driver.h | 2 +- 5 files changed, 8 insertions(+), 19 deletions(-) diff --git a/gfx/d3d/d3d.cpp b/gfx/d3d/d3d.cpp index 16dcac928c..9d7a946497 100644 --- a/gfx/d3d/d3d.cpp +++ b/gfx/d3d/d3d.cpp @@ -525,7 +525,7 @@ static void d3d_set_osd_msg(void *data, const char *msg, if (d3d->renderchain_driver->set_font_rect && params) d3d->renderchain_driver->set_font_rect(d3d, params); - font_driver_render_msg(msg, params); + font_driver_render_msg(NULL, msg, params); } /* Delay constructor due to lack of exceptions. */ @@ -1509,7 +1509,7 @@ static bool d3d_frame(void *data, const void *frame, font_parms.y = msg_height; font_parms.scale = 21; #endif - font_driver_render_msg(msg, &font_params); + font_driver_render_msg(NULL, msg, &font_params); } #ifdef HAVE_MENU diff --git a/gfx/drivers/gl.c b/gfx/drivers/gl.c index da7246b917..70ddf2a45b 100644 --- a/gfx/drivers/gl.c +++ b/gfx/drivers/gl.c @@ -1795,7 +1795,7 @@ static bool gl_frame(void *data, const void *frame, #endif if (msg) - font_driver_render_msg(msg, NULL); + font_driver_render_msg(NULL, msg, NULL); #ifdef HAVE_OVERLAY if (gl->overlay_enable) @@ -3373,18 +3373,7 @@ static void gl_apply_state_changes(void *data) static void gl_set_osd_msg(void *data, const char *msg, const struct font_params *params, void *font) { - driver_t *driver = driver_get_ptr(); - const struct font_renderer *font_driver = driver ? - driver->font_osd_driver : NULL; - gl_t *gl = (gl_t*)data; - if (!gl) - return; - - if (!font) - font = driver->font_osd_data; - - if (driver->font_osd_driver && font) - font_driver->render_msg(font, msg, params); + font_driver_render_msg(font, msg, params); } static void gl_show_mouse(void *data, bool state) diff --git a/gfx/drivers/vita2d_gfx.c b/gfx/drivers/vita2d_gfx.c index dbcb9fc22b..19d4c1d5d8 100644 --- a/gfx/drivers/vita2d_gfx.c +++ b/gfx/drivers/vita2d_gfx.c @@ -278,7 +278,7 @@ static bool vita2d_gfx_frame(void *data, const void *frame, } if(msg && strcmp(msg,"")) - font_driver_render_msg(msg, NULL); + font_driver_render_msg(NULL, msg, NULL); vita2d_end_drawing(); vita2d_swap_buffers(); diff --git a/gfx/font_driver.c b/gfx/font_driver.c index cd0838136e..0ae44239af 100644 --- a/gfx/font_driver.c +++ b/gfx/font_driver.c @@ -152,13 +152,13 @@ bool font_driver_has_render_msg(void) return true; } -void font_driver_render_msg(const char *msg, const struct font_params *params) +void font_driver_render_msg(void *font_data, const char *msg, const struct font_params *params) { driver_t *driver = driver_get_ptr(); const font_renderer_t *font_ctx = driver->font_osd_driver; if (font_ctx->render_msg) - font_ctx->render_msg(driver->font_osd_data, msg, params); + font_ctx->render_msg(font_data ? font_data : driver->font_osd_data, msg, params); } void font_driver_free(void) diff --git a/gfx/font_driver.h b/gfx/font_driver.h index 56c42d612e..ada7738e7d 100644 --- a/gfx/font_driver.h +++ b/gfx/font_driver.h @@ -63,7 +63,7 @@ bool font_init_first( bool font_driver_has_render_msg(void); -void font_driver_render_msg(const char *msg, const struct font_params *params); +void font_driver_render_msg(void *data, const char *msg, const struct font_params *params); void font_driver_free(void);