diff options
Diffstat (limited to 'src/osd/windows/drawnone.c')
-rw-r--r-- | src/osd/windows/drawnone.c | 50 |
1 files changed, 34 insertions, 16 deletions
diff --git a/src/osd/windows/drawnone.c b/src/osd/windows/drawnone.c index c7400500ea9..236cd533948 100644 --- a/src/osd/windows/drawnone.c +++ b/src/osd/windows/drawnone.c @@ -17,6 +17,24 @@ #include "window.h" +class renderer_none : public osd_renderer +{ +public: + renderer_none(win_window_info *window) + : osd_renderer(window, FLAG_NONE) { } + + virtual ~renderer_none() { } + + virtual int init(); + virtual render_primitive_list *get_primitives(); + virtual int draw(HDC dc, int update); + virtual void save() { }; + virtual void record() { }; + virtual void toggle_fsfx() { }; + virtual void destroy(); + +private: +}; //============================================================ // PROTOTYPES @@ -24,26 +42,26 @@ // core functions static void drawnone_exit(void); -static int drawnone_window_init(win_window_info *window); -static void drawnone_window_destroy(win_window_info *window); -static render_primitive_list *drawnone_window_get_primitives(win_window_info *window); -static int drawnone_window_draw(win_window_info *window, HDC dc, int update); +//============================================================ +// drawnone_create +//============================================================ +osd_renderer *drawnone_create(win_window_info *window) +{ + return global_alloc(renderer_none(window)); +} //============================================================ // drawnone_init //============================================================ -int drawnone_init(running_machine &machine, win_draw_callbacks *callbacks) +int drawnone_init(running_machine &machine, osd_draw_callbacks *callbacks) { // fill in the callbacks memset(callbacks, 0, sizeof(*callbacks)); callbacks->exit = drawnone_exit; - callbacks->window_init = drawnone_window_init; - callbacks->window_get_primitives = drawnone_window_get_primitives; - callbacks->window_draw = drawnone_window_draw; - callbacks->window_destroy = drawnone_window_destroy; + callbacks->create = drawnone_create; return 0; } @@ -63,7 +81,7 @@ static void drawnone_exit(void) // drawnone_window_init //============================================================ -static int drawnone_window_init(win_window_info *window) +int renderer_none::init() { return 0; } @@ -74,7 +92,7 @@ static int drawnone_window_init(win_window_info *window) // drawnone_window_destroy //============================================================ -static void drawnone_window_destroy(win_window_info *window) +void renderer_none::destroy() { } @@ -84,12 +102,12 @@ static void drawnone_window_destroy(win_window_info *window) // drawnone_window_get_primitives //============================================================ -static render_primitive_list *drawnone_window_get_primitives(win_window_info *window) +render_primitive_list *renderer_none::get_primitives() { RECT client; - GetClientRect(window->m_hwnd, &client); - window->m_target->set_bounds(rect_width(&client), rect_height(&client), window->m_monitor->get_aspect()); - return &window->m_target->get_primitives(); + GetClientRect(window().m_hwnd, &client); + window().m_target->set_bounds(rect_width(&client), rect_height(&client), window().m_monitor->get_aspect()); + return &window().m_target->get_primitives(); } @@ -98,7 +116,7 @@ static render_primitive_list *drawnone_window_get_primitives(win_window_info *wi // drawnone_window_draw //============================================================ -static int drawnone_window_draw(win_window_info *window, HDC dc, int update) +int renderer_none::draw(HDC dc, int update) { return 0; } |