From 4810f2e98e20c1d91a687c7b82f527ba4c8a5ab7 Mon Sep 17 00:00:00 2001 From: Miodrag Milanovic Date: Sun, 27 Dec 2015 13:49:04 +0100 Subject: [PATCH] Fix for windows Qt5 compile (nw) --- src/osd/modules/debugger/debugqt.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/osd/modules/debugger/debugqt.cpp b/src/osd/modules/debugger/debugqt.cpp index 1819eaa24dd..0c7967609b7 100644 --- a/src/osd/modules/debugger/debugqt.cpp +++ b/src/osd/modules/debugger/debugqt.cpp @@ -18,6 +18,8 @@ #include #include +#include +#include #include "emu.h" #include "config.h" @@ -32,7 +34,7 @@ #include "qt/deviceswindow.h" #include "qt/deviceinformationwindow.h" -class debug_qt : public osd_module, public debug_module +class debug_qt : public osd_module, public debug_module, public QAbstractNativeEventFilter { public: debug_qt() @@ -49,7 +51,7 @@ public: virtual void init_debugger(running_machine &machine); virtual void wait_for_debugger(device_t &device, bool firststop); virtual void debugger_update(); - + virtual bool nativeEventFilter(const QByteArray &eventType, void *message, long *) Q_DECL_OVERRIDE; private: running_machine *m_machine; }; @@ -231,6 +233,12 @@ static void bring_main_window_to_front() #if defined(WIN32) && !defined(SDLMAME_WIN32) bool winwindow_qt_filter(void *message); + +bool debug_qt::nativeEventFilter(const QByteArray &eventType, void *message, long *) +{ + winwindow_qt_filter(message); + return false; +} #endif void debug_qt::init_debugger(running_machine &machine) @@ -240,7 +248,7 @@ void debug_qt::init_debugger(running_machine &machine) // If you're starting from scratch, create a new qApp new QApplication(qtArgc, qtArgv); #if defined(WIN32) && !defined(SDLMAME_WIN32) - QAbstractEventDispatcher::instance()->setEventFilter((QAbstractEventDispatcher::EventFilter)&winwindow_qt_filter); + QAbstractEventDispatcher::instance()->installNativeEventFilter(this); #endif } else