summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/windows/window.h
diff options
context:
space:
mode:
author couriersud <couriersud@arcor.de>2015-02-26 01:40:18 +0100
committer couriersud <couriersud@arcor.de>2015-02-26 01:40:18 +0100
commiteb8144a3bb8f5d443b5062b13e3e18b6b8e8c43c (patch)
tree0dbb6487e5cc7db623f2d9acd9d2db3efa792aca /src/osd/windows/window.h
parent2c2994aeb52b700c206ca6c94513a92601097bdb (diff)
Moved opengl related stuff to modules/opengl
Diffstat (limited to 'src/osd/windows/window.h')
-rw-r--r--src/osd/windows/window.h118
1 files changed, 1 insertions, 117 deletions
diff --git a/src/osd/windows/window.h b/src/osd/windows/window.h
index 7e99ec04b38..d1486f755c5 100644
--- a/src/osd/windows/window.h
+++ b/src/osd/windows/window.h
@@ -12,6 +12,7 @@
#include "video.h"
#include "render.h"
+#include "modules/osdwindow.h"
//============================================================
// PARAMETERS
@@ -32,121 +33,6 @@
// TYPE DEFINITIONS
//============================================================
-/* ------------------------------------------------------
- *
- * All types named osd_* will ultimately be located in
- * the modules tree. They are temporarily maintained in
- * window.h until basic code simplification is finished.
- *
- */
-
-class win_window_info;
-
-class osd_window
-{
-public:
- osd_window()
- :
-#ifdef OSD_SDL
-#else
- m_hwnd(0), m_dc(0), m_focus_hwnd(0), m_resize_state(0),
-#endif
- m_prescale(1),
- m_primlist(NULL)
- {}
- virtual ~osd_window() { }
-
- virtual render_target *target() = 0;
- virtual int fullscreen() const = 0;
- virtual running_machine &machine() const = 0;
-
- int prescale() const { return m_prescale; };
-
- float aspect() const { return monitor()->aspect(); }
-
- virtual void get_size(int &w, int &h) = 0;
-
-#ifdef OSD_SDL
- virtual void blit_surface_size(int &blitwidth, int &blitheight) = 0;
- virtual sdl_monitor_info *monitor() const = 0;
-#if (SDLMAME_SDL2)
- virtual SDL_Window *sdl_window() = 0;
-#else
- virtual SDL_Surface *sdl_surface() = 0;
-#endif
-#else
- virtual win_monitor_info *monitor() const = 0;
- virtual bool win_has_menu() = 0;
- // FIXME: cann we replace winwindow_video_window_monitor(NULL) with monitor() ?
- virtual win_monitor_info *winwindow_video_window_monitor(const RECT *proposed) = 0;
-
- // window handle and info
- HWND m_hwnd;
- HDC m_dc; // only used by GDI renderer!
- // FIXME: this is the same as win_window_list->m_hwnd, i.e. first window.
- // During modularization, this should be passed in differently
- HWND m_focus_hwnd;
-
- int m_resize_state;
-#endif
-
- osd_window_config m_win_config;
- int m_prescale;
- render_primitive_list * m_primlist;
-};
-
-class osd_renderer
-{
-public:
-
- /* Generic flags */
- static const int FLAG_NONE = 0x0000;
- static const int FLAG_NEEDS_OPENGL = 0x0001;
- static const int FLAG_HAS_VECTOR_SCREEN = 0x0002;
-
- /* SDL 1.2 flags */
- static const int FLAG_NEEDS_DOUBLEBUF = 0x0100;
- static const int FLAG_NEEDS_ASYNCBLIT = 0x0200;
-
- osd_renderer(osd_window *window, const int flags)
- : m_window(window), m_flags(flags) { }
-
- virtual ~osd_renderer() { }
-
- osd_window &window() { return *m_window; }
- bool has_flags(const int flag) { return ((m_flags & flag)) == flag; }
- void set_flags(int aflag) { m_flags |= aflag; }
- void clear_flags(int aflag) { m_flags &= ~aflag; }
-
-
- void notify_changed() { set_flags(FI_CHANGED); }
-
- /* Interface to be implemented by render code */
-
- virtual int create() = 0;
- virtual render_primitive_list *get_primitives() = 0;
-
- virtual int draw(const int update) = 0;
-#ifdef OSD_SDL
- virtual int xy_to_render_target(const int x, const int y, int *xt, int *yt) = 0;
-#else
- virtual void save() = 0;
- virtual void record() = 0;
- virtual void toggle_fsfx() = 0;
-#endif
-
- virtual void destroy() = 0;
-
-protected:
- /* Internal flags */
- static const int FI_CHANGED = 0x010000;
-
-private:
-
- osd_window *m_window;
- int m_flags;
-};
-
class win_window_info : public osd_window
{
public:
@@ -226,8 +112,6 @@ struct osd_draw_callbacks
void (*exit)(void);
};
-
-
//============================================================
// GLOBAL VARIABLES
//============================================================