summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/windows/video.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/windows/video.cpp')
-rw-r--r--src/osd/windows/video.cpp23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/osd/windows/video.cpp b/src/osd/windows/video.cpp
index b441121f1ca..6406221a471 100644
--- a/src/osd/windows/video.cpp
+++ b/src/osd/windows/video.cpp
@@ -12,6 +12,7 @@
// MAME headers
#include "emu.h"
+#include "ui/ui.h"
#include "emuopts.h"
#include "render.h"
#include "uiinput.h"
@@ -23,6 +24,8 @@
#include "input.h"
#include "strconv.h"
+#include "modules/osdwindow.h"
+
//============================================================
// CONSTANTS
//============================================================
@@ -64,8 +67,6 @@ static osd_window_config windows[MAX_WINDOWS]; // configuration data pe
bool windows_osd_interface::video_init()
{
- int index;
-
// extract data from the options
extract_video_config();
@@ -77,14 +78,25 @@ bool windows_osd_interface::video_init()
// create the windows
windows_options &options = downcast<windows_options &>(machine().options());
- for (index = 0; index < video_config.numscreens; index++)
+ for (int index = 0; index < video_config.numscreens; index++)
+ {
win_window_info::create(machine(), index, osd_monitor_info::pick_monitor(options, index), &windows[index]);
+ }
+
if (video_config.mode != VIDEO_MODE_NONE)
SetForegroundWindow(win_window_list->m_hwnd);
return true;
}
+//============================================================
+// get_slider_list
+//============================================================
+
+slider_state *windows_osd_interface::get_slider_list()
+{
+ return m_sliders;
+}
//============================================================
// video_exit
@@ -181,6 +193,8 @@ void windows_osd_interface::update(bool skip_redraw)
// ping the watchdog on each update
winmain_watchdog_ping();
+ update_slider_list();
+
// if we're not skipping this redraw, update all windows
if (!skip_redraw)
{
@@ -266,8 +280,9 @@ static void init_monitors(void)
// pick_monitor
//============================================================
-osd_monitor_info *osd_monitor_info::pick_monitor(windows_options &options, int index)
+osd_monitor_info *osd_monitor_info::pick_monitor(osd_options &osdopts, int index)
{
+ windows_options &options = reinterpret_cast<windows_options &>(osdopts);
osd_monitor_info *monitor;
const char *scrname, *scrname2;
int moncount = 0;