diff options
author | Michael Goddard <michael.goddard@nokia.com> | 2012-01-05 17:22:19 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-06 05:26:01 +0100 |
commit | c97f5f8c2e91c1b76d42583efaf232487d490060 (patch) | |
tree | 533f1142282ebce38bbf7bd4356b4341530f30be /src/plugins/wmf | |
parent | bc7d964a053a3a37a0b286ee17ee15c9ef747c3e (diff) |
Properly handle the case where QtWidgets is not available.
It does use a config test for now, just to make it clearer. The Mac
backend currently requires widgets, but most of the others should work
without it (just not supporting QVideoWidget/WindowControl).
The QVideoDeviceControl interface was modified to remove the QIcon
usage - it was never implemented.
Unfortunately even the QML examples need widgets for the wrapper
application, and will need to be ported to QtGui based wrapper.
Change-Id: I8a55ad5cf09ab51749510bf16f49de0bd3f0bcdb
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Diffstat (limited to 'src/plugins/wmf')
-rw-r--r-- | src/plugins/wmf/player/mfplayerservice.cpp | 8 | ||||
-rw-r--r-- | src/plugins/wmf/player/mfplayerservice.h | 6 | ||||
-rw-r--r-- | src/plugins/wmf/player/player.pri | 2 | ||||
-rw-r--r-- | src/plugins/wmf/wmf.pro | 6 |
4 files changed, 13 insertions, 9 deletions
diff --git a/src/plugins/wmf/player/mfplayerservice.cpp b/src/plugins/wmf/player/mfplayerservice.cpp index 62964663a..0e1f02014 100644 --- a/src/plugins/wmf/player/mfplayerservice.cpp +++ b/src/plugins/wmf/player/mfplayerservice.cpp @@ -95,7 +95,7 @@ QMediaControl* MFPlayerService::requestControl(const char *name) } else if (qstrcmp(name, QMetaDataReaderControl_iid) == 0) { return m_metaDataControl; } else if (qstrcmp(name, QVideoRendererControl_iid) == 0) { -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) if (!m_videoRendererControl && !m_videoWindowControl) { #else if (!m_videoRendererControl) { @@ -103,7 +103,7 @@ QMediaControl* MFPlayerService::requestControl(const char *name) m_videoRendererControl = new MFVideoRendererControl; return m_videoRendererControl; } -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) } else if (qstrcmp(name, QVideoWindowControl_iid) == 0) { if (!m_videoRendererControl && !m_videoWindowControl) { m_videoWindowControl = new Evr9VideoWindowControl; @@ -124,7 +124,7 @@ void MFPlayerService::releaseControl(QMediaControl *control) m_videoRendererControl->setSurface(0); delete m_videoRendererControl; m_videoRendererControl = 0; -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) } else if (control == m_videoWindowControl) { delete m_videoWindowControl; m_videoWindowControl = 0; @@ -142,7 +142,7 @@ MFVideoRendererControl* MFPlayerService::videoRendererControl() const return m_videoRendererControl; } -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) Evr9VideoWindowControl* MFPlayerService::videoWindowControl() const { return m_videoWindowControl; diff --git a/src/plugins/wmf/player/mfplayerservice.h b/src/plugins/wmf/player/mfplayerservice.h index a1eb5048e..fd98c0222 100644 --- a/src/plugins/wmf/player/mfplayerservice.h +++ b/src/plugins/wmf/player/mfplayerservice.h @@ -56,7 +56,7 @@ QT_END_NAMESPACE QT_USE_NAMESPACE -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) class Evr9VideoWindowControl; #endif class MFAudioEndpointControl; @@ -77,7 +77,7 @@ public: MFAudioEndpointControl* audioEndpointControl() const; MFVideoRendererControl* videoRendererControl() const; -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) Evr9VideoWindowControl* videoWindowControl() const; #endif MFMetaDataControl* metaDataControl() const; @@ -86,7 +86,7 @@ private: MFPlayerSession *m_session; MFVideoRendererControl *m_videoRendererControl; MFAudioEndpointControl *m_audioEndpointControl; -#ifndef Q_WS_SIMULATOR +#if defined(HAVE_WIDGETS) && !defined(Q_WS_SIMULATOR) Evr9VideoWindowControl *m_videoWindowControl; #endif MFPlayerControl *m_player; diff --git a/src/plugins/wmf/player/player.pri b/src/plugins/wmf/player/player.pri index 58375ba44..07142130c 100644 --- a/src/plugins/wmf/player/player.pri +++ b/src/plugins/wmf/player/player.pri @@ -24,7 +24,7 @@ SOURCES += \ $$PWD/mfaudioendpointcontrol.cpp \ $$PWD/mfmetadatacontrol.cpp -!simulator { +contains(config_test_widgets, yes):!simulator { HEADERS += $$PWD/evr9videowindowcontrol.h SOURCES += $$PWD/evr9videowindowcontrol.cpp } diff --git a/src/plugins/wmf/wmf.pro b/src/plugins/wmf/wmf.pro index d0b4ec347..7c2e0abe9 100644 --- a/src/plugins/wmf/wmf.pro +++ b/src/plugins/wmf/wmf.pro @@ -1,7 +1,11 @@ load(qt_module) TARGET = wmfengine -QT += multimedia-private network multimediawidgets-private +QT += multimedia-private network +contains(config_test_widgets, yes) { + QT += multimediawidgets-private + DEFINES += HAVE_WIDGETS +} PLUGIN_TYPE=mediaservice load(qt_plugin) |