From 5742539904bb7feb0b21d465d7d71f6deb70b238 Mon Sep 17 00:00:00 2001
From: Justin McPherson <justin.mcpherson@nokia.com>
Date: Mon, 22 Feb 2010 14:38:04 +1000
Subject: Add a qRegisterQmlElements function to QtMultimedia

Avoid exposing private classes.

Reviewed-by: Bill King
---
 src/multimedia/qml/qml.cpp                       | 68 ++++++++++++++++++++++++
 src/multimedia/qml/qml.h                         | 60 +++++++++++++++++++++
 src/multimedia/qml/qml.pri                       |  2 +
 src/multimedia/qml/qmlaudio_p.h                  |  2 +-
 src/multimedia/qml/qmlgraphicsvideo_p.h          |  2 +-
 src/multimedia/qml/qsoundeffect_p.h              |  2 +-
 src/plugins/qmlmodules/multimedia/multimedia.cpp |  8 +--
 7 files changed, 135 insertions(+), 9 deletions(-)
 create mode 100644 src/multimedia/qml/qml.cpp
 create mode 100644 src/multimedia/qml/qml.h

diff --git a/src/multimedia/qml/qml.cpp b/src/multimedia/qml/qml.cpp
new file mode 100644
index 0000000..b9ee212
--- /dev/null
+++ b/src/multimedia/qml/qml.cpp
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtMultimedia module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file.  Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights.  These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QtMultimedia/qml.h>
+#include <QtMultimedia/private/qsoundeffect_p.h>
+#include <QtMultimedia/private/qmlaudio_p.h>
+#include <QtMultimedia/private/qmlgraphicsvideo_p.h>
+
+
+QT_BEGIN_NAMESPACE
+
+namespace QtMultimedia
+{
+
+/*!
+    Register the Multimedia QML elements.
+    \internal
+*/
+
+void qRegisterQmlElements()
+{
+    qmlRegisterType<QSoundEffect>("Qt.multimedia", 4, 7, "SoundEffect", "SoundEffect");
+    qmlRegisterType<QmlAudio>("Qt.multimedia", 4, 7, "Audio", "Audio");
+    qmlRegisterType<QmlGraphicsVideo>("Qt.multimedia", 4, 7, "Video", "Video");
+}
+
+}
+
+QT_END_NAMESPACE
+
diff --git a/src/multimedia/qml/qml.h b/src/multimedia/qml/qml.h
new file mode 100644
index 0000000..41274c8
--- /dev/null
+++ b/src/multimedia/qml/qml.h
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtMultimedia module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file.  Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights.  These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QTMULTIMEDIA_QML_H
+#define QTMULTIMEDIA_QML_H
+
+#include <QtCore/qglobal.h>
+
+QT_BEGIN_HEADER
+QT_BEGIN_NAMESPACE
+
+QT_MODULE(Multimedia)
+
+namespace QtMultimedia
+{
+extern void Q_MULTIMEDIA_EXPORT qRegisterQmlElements();
+}
+
+QT_END_NAMESPACE
+QT_END_HEADER
+
+#endif  // ifndef QTMULTIMEDIA_QML_H
diff --git a/src/multimedia/qml/qml.pri b/src/multimedia/qml/qml.pri
index 370232e..e506632 100644
--- a/src/multimedia/qml/qml.pri
+++ b/src/multimedia/qml/qml.pri
@@ -17,6 +17,7 @@ contains(QT_CONFIG, declarative) {
     }
 
     HEADERS += \
+        $$PWD/qml.h \
         $$PWD/qmetadatacontrolmetaobject_p.h \
         $$PWD/qmlaudio_p.h \
         $$PWD/qmlgraphicsvideo_p.h \
@@ -25,6 +26,7 @@ contains(QT_CONFIG, declarative) {
         $$PWD/wavedecoder_p.h
 
     SOURCES += \
+        $$PWD/qml.cpp \
         $$PWD/qmetadatacontrolmetaobject.cpp \
         $$PWD/qmlaudio.cpp \
         $$PWD/qmlgraphicsvideo.cpp \
diff --git a/src/multimedia/qml/qmlaudio_p.h b/src/multimedia/qml/qmlaudio_p.h
index f6c5cbf..f034518 100644
--- a/src/multimedia/qml/qmlaudio_p.h
+++ b/src/multimedia/qml/qmlaudio_p.h
@@ -54,7 +54,7 @@ QT_BEGIN_NAMESPACE
 
 class QTimerEvent;
 
-class Q_MULTIMEDIA_EXPORT QmlAudio : public QObject, public QmlMediaBase, public QmlParserStatus
+class Q_AUTOTEST_EXPORT QmlAudio : public QObject, public QmlMediaBase, public QmlParserStatus
 {
     Q_OBJECT
     Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
diff --git a/src/multimedia/qml/qmlgraphicsvideo_p.h b/src/multimedia/qml/qmlgraphicsvideo_p.h
index bd15b7f..a4f8e32 100644
--- a/src/multimedia/qml/qmlgraphicsvideo_p.h
+++ b/src/multimedia/qml/qmlgraphicsvideo_p.h
@@ -58,7 +58,7 @@ class QTimerEvent;
 class QVideoSurfaceFormat;
 
 
-class Q_MULTIMEDIA_EXPORT QmlGraphicsVideo : public QmlGraphicsItem, public QmlMediaBase
+class Q_AUTOTEST_EXPORT QmlGraphicsVideo : public QmlGraphicsItem, public QmlMediaBase
 {
     Q_OBJECT
     Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
diff --git a/src/multimedia/qml/qsoundeffect_p.h b/src/multimedia/qml/qsoundeffect_p.h
index 2610a69..ab6f9e5 100644
--- a/src/multimedia/qml/qsoundeffect_p.h
+++ b/src/multimedia/qml/qsoundeffect_p.h
@@ -64,7 +64,7 @@ QT_BEGIN_HEADER
 QT_BEGIN_NAMESPACE
 
 class QSoundEffectPrivate;
-class Q_MULTIMEDIA_EXPORT QSoundEffect : public QObject
+class Q_AUTOTEST_EXPORT QSoundEffect : public QObject
 {
     Q_OBJECT
     Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
diff --git a/src/plugins/qmlmodules/multimedia/multimedia.cpp b/src/plugins/qmlmodules/multimedia/multimedia.cpp
index 381fb56..d9414ee 100644
--- a/src/plugins/qmlmodules/multimedia/multimedia.cpp
+++ b/src/plugins/qmlmodules/multimedia/multimedia.cpp
@@ -41,9 +41,7 @@
 
 #include <QtDeclarative/qmlmoduleplugin.h>
 #include <QtDeclarative/qml.h>
-#include <QtMultimedia/private/qsoundeffect_p.h>
-#include <QtMultimedia/private/qmlaudio_p.h>
-#include <QtMultimedia/private/qmlgraphicsvideo_p.h>
+#include <QtMultimedia/qml.h>
 
 QT_BEGIN_NAMESPACE
 
@@ -61,9 +59,7 @@ public:
         Q_UNUSED(uri)
         Q_ASSERT(uri == QLatin1String("Qt.multimedia"));
 
-        qmlRegisterType<QSoundEffect>("Qt.multimedia", 4, 7, "SoundEffect", "SoundEffect");
-        qmlRegisterType<QmlAudio>("Qt.multimedia", 4, 7, "Audio", "Audio");
-        qmlRegisterType<QmlGraphicsVideo>("Qt.multimedia", 4, 7, "Video", "Video");
+        QtMultimedia::qRegisterQmlElements();
     }
 };
 
-- 
cgit v0.12


From 129b6b9b5c6502058c7701367119bfe6607fbff5 Mon Sep 17 00:00:00 2001
From: Justin McPherson <justin.mcpherson@nokia.com>
Date: Mon, 22 Feb 2010 15:04:43 +1000
Subject: Documentation fixes.

Reviewed-by: Nicholas Young
---
 src/multimedia/base/qmediaplaylist.cpp                   |  8 ++++++--
 src/multimedia/base/qtmedianamespace.qdoc                | 16 ++++++++--------
 src/multimedia/qml/qmlaudio.cpp                          |  4 ++--
 src/multimedia/qml/qmlgraphicsvideo.cpp                  |  4 ++--
 src/multimedia/qml/qsoundeffect.cpp                      |  4 ++--
 .../mediaservices/gstreamer/qgstreamerbushelper.cpp      |  2 +-
 .../mediaservices/gstreamer/qgstreamermessage.cpp        |  2 +-
 7 files changed, 22 insertions(+), 18 deletions(-)

diff --git a/src/multimedia/base/qmediaplaylist.cpp b/src/multimedia/base/qmediaplaylist.cpp
index 8a0de80..ab91fd7 100644
--- a/src/multimedia/base/qmediaplaylist.cpp
+++ b/src/multimedia/base/qmediaplaylist.cpp
@@ -145,6 +145,10 @@ QMediaPlaylist::~QMediaPlaylist()
     delete d_ptr;
 }
 
+/*!
+    Returns the QMediaObject that is being used to play the contents of this playlist.
+*/
+
 QMediaObject *QMediaPlaylist::mediaObject() const
 {
     return d_func()->mediaObject;
@@ -308,7 +312,7 @@ int QMediaPlaylist::mediaCount() const
 
 /*!
   Returns true if the playlist contains no items; otherwise returns false.
-  \sa size()
+  \sa mediaCount()
   */
 bool QMediaPlaylist::isEmpty() const
 {
@@ -317,7 +321,7 @@ bool QMediaPlaylist::isEmpty() const
 
 /*!
   Returns true if the playlist can be modified; otherwise returns false.
-  \sa size()
+  \sa mediaCount()
   */
 bool QMediaPlaylist::isReadOnly() const
 {
diff --git a/src/multimedia/base/qtmedianamespace.qdoc b/src/multimedia/base/qtmedianamespace.qdoc
index 0fb39f5..270c7d6 100644
--- a/src/multimedia/base/qtmedianamespace.qdoc
+++ b/src/multimedia/base/qtmedianamespace.qdoc
@@ -40,15 +40,15 @@
 ****************************************************************************/
 
 /*!
-    \namespace QtMedia
+    \namespace QtMultimedia
     \ingroup multimedia
 
-    \brief The QtMedia namespace contains miscellaneous identifiers used throughout the Qt Media
-    library.
+    \brief The QtMultimedia namespace contains miscellaneous identifiers used
+    throughout the Qt Multimedia library.
 */
 
 /*!
-    \enum QtMedia::MetaData
+    \enum QtMultimedia::MetaData
 
     This enum provides identifiers for meta-data attributes.
 
@@ -165,7 +165,7 @@
 */
 
 /*!
-    \enum QtMedia::SupportEstimate
+    \enum QtMultimedia::SupportEstimate
 
     Enumerates the levels of support a media service provider may have for a feature.
 
@@ -176,7 +176,7 @@
 */
 
 /*!
-    \enum QtMedia::EncodingQuality
+    \enum QtMultimedia::EncodingQuality
 
     Enumerates quality encoding levels.
 
@@ -188,7 +188,7 @@
 */
 
 /*!
-    \enum QtMedia::EncodingMode
+    \enum QtMultimedia::EncodingMode
 
     Enumerates encoding modes.
 
@@ -199,7 +199,7 @@
 */
 
 /*!
-    \enum QtMedia::AvailabilityError
+    \enum QtMultimedia::AvailabilityError
 
     Enumerates Service status errors.
 
diff --git a/src/multimedia/qml/qmlaudio.cpp b/src/multimedia/qml/qmlaudio.cpp
index 5719050..b54d644 100644
--- a/src/multimedia/qml/qmlaudio.cpp
+++ b/src/multimedia/qml/qmlaudio.cpp
@@ -280,7 +280,7 @@ QmlAudio::Status QmlAudio::status() const
 */
 
 /*!
-    \qmlproperty qreal playbackRate
+    \qmlproperty qreal Audio::playbackRate
 
     This property holds the rate at which audio is played at as a multiple of the normal rate.
 */
@@ -313,7 +313,7 @@ QmlAudio::Error QmlAudio::error() const
 */
 
 /*!
-    \qmlproperty Audio::onError(error, errorString)
+    \qmlsignal Audio::onError(error, errorString)
 
     This property is called when an \l {Error}{error} has occurred.  The errorString parameter
     may contain more detailed information about the error.
diff --git a/src/multimedia/qml/qmlgraphicsvideo.cpp b/src/multimedia/qml/qmlgraphicsvideo.cpp
index fde505d..9e30774 100644
--- a/src/multimedia/qml/qmlgraphicsvideo.cpp
+++ b/src/multimedia/qml/qmlgraphicsvideo.cpp
@@ -280,7 +280,7 @@ bool QmlGraphicsVideo::hasVideo() const
 */
 
 /*!
-    \qmlproperty qreal playbackRate
+    \qmlproperty qreal Video::playbackRate
 
     This property holds the rate at which video is played at as a multiple of the normal rate.
 */
@@ -314,7 +314,7 @@ QmlGraphicsVideo::Error QmlGraphicsVideo::error() const
 */
 
 /*!
-    \qmlproperty Video::onError(error, errorString)
+    \qmlsignal Video::onError(error, errorString)
 
     This property is called when an \l {Error}{error} has occurred.  The errorString parameter
     may contain more detailed information about the error.
diff --git a/src/multimedia/qml/qsoundeffect.cpp b/src/multimedia/qml/qsoundeffect.cpp
index 1a67414..f0c9659 100644
--- a/src/multimedia/qml/qsoundeffect.cpp
+++ b/src/multimedia/qml/qsoundeffect.cpp
@@ -54,7 +54,7 @@
 
 
 /*!
-    \qmlclass QSoundEffect
+    \qmlclass SoundEffect QSoundEffect
     \brief The SoundEffect element provides a way to play sound effects in qml.
 
     The following example plays a wav file on mouse click.
@@ -71,7 +71,7 @@
             playSound.play()
         }
     }
-    \endeml
+    \endqml
 
     \sa SoundEffect
 */
diff --git a/src/plugins/mediaservices/gstreamer/qgstreamerbushelper.cpp b/src/plugins/mediaservices/gstreamer/qgstreamerbushelper.cpp
index 4649c21..59ae5be 100644
--- a/src/plugins/mediaservices/gstreamer/qgstreamerbushelper.cpp
+++ b/src/plugins/mediaservices/gstreamer/qgstreamerbushelper.cpp
@@ -174,7 +174,7 @@ static GstBusSyncReply syncGstBusFilter(GstBus* bus, GstMessage* message, QGstre
 
 
 /*!
-    \class gstreamer::QGstreamerBusHelper
+    \class QGstreamerBusHelper
     \internal
 */
 
diff --git a/src/plugins/mediaservices/gstreamer/qgstreamermessage.cpp b/src/plugins/mediaservices/gstreamer/qgstreamermessage.cpp
index 13a2454..0a689d9 100644
--- a/src/plugins/mediaservices/gstreamer/qgstreamermessage.cpp
+++ b/src/plugins/mediaservices/gstreamer/qgstreamermessage.cpp
@@ -48,7 +48,7 @@ static int wuchi = qRegisterMetaType<QGstreamerMessage>();
 
 
 /*!
-    \class gstreamer::QGstreamerMessage
+    \class QGstreamerMessage
     \internal
 */
 
-- 
cgit v0.12


From 460394f8f225cc60e5dc1ad9804a6c8dd078fc05 Mon Sep 17 00:00:00 2001
From: aavit <qt-info@nokia.com>
Date: Mon, 22 Feb 2010 12:30:55 +0100
Subject: Compilation fix for AIX

---
 src/3rdparty/libpng/png.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/3rdparty/libpng/png.h b/src/3rdparty/libpng/png.h
index 14e3416..5ea2b0d 100644
--- a/src/3rdparty/libpng/png.h
+++ b/src/3rdparty/libpng/png.h
@@ -386,7 +386,7 @@
 #include "zlib.h"
 #endif
 
-#ifdef AIX
+#ifdef _AIX
 #define jmpbuf __jmpbuf
 #endif
 
-- 
cgit v0.12


From 66fb4038649cfd1d660204bf7c70f99a409ede4f Mon Sep 17 00:00:00 2001
From: aavit <qt-info@nokia.com>
Date: Mon, 22 Feb 2010 13:02:23 +0100
Subject: Compilation fix for Symbian

---
 src/3rdparty/libpng/pngpriv.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/3rdparty/libpng/pngpriv.h b/src/3rdparty/libpng/pngpriv.h
index 13c2b3f..87a4ba6 100644
--- a/src/3rdparty/libpng/pngpriv.h
+++ b/src/3rdparty/libpng/pngpriv.h
@@ -74,7 +74,9 @@
 
 #if defined(WIN32) || defined(_Windows) || defined(_WINDOWS) || \
     defined(_WIN32) || defined(__WIN32__)
-#  include <windows.h>  /* defines _WINDOWS_ macro */
+#  if !defined(__SYMBIAN32__)
+#    include <windows.h>  /* defines _WINDOWS_ macro */
+#  endif
 /* I have no idea why is this necessary... */
 #  ifdef _MSC_VER
 #    include <malloc.h>
-- 
cgit v0.12