Removed QMediaServiceProvider parameter from media objects constructors.

QMediaServiceProvider should be removed from the public API,
to provide media objects with a custom media service.

A protected QMediaPlayer/QCamera/QRadioTuner/etc constructor
with QMediaService* parameter is a cleaner and more
flexible solution.

Change-Id: I335cce4bbebe0e548c3df338f206e7be7c93c3dd
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
This commit is contained in:
Dmytro Poplavskiy
2012-01-19 10:01:02 +10:00
committed by Qt by Nokia
parent adb2bd2cd4
commit a78a95ccd4
26 changed files with 309 additions and 371 deletions

View File

@@ -43,6 +43,7 @@
#include "qmediaservice.h"
#include "qmediaobject_p.h"
#include "qradiotunercontrol.h"
#include "qmediaserviceprovider.h"
#include <QPair>
@@ -106,12 +107,14 @@ public:
The \a parent is passed to QMediaObject.
*/
QRadioTuner::QRadioTuner(QObject *parent, QMediaServiceProvider* provider):
QMediaObject(*new QRadioTunerPrivate, parent, provider->requestService(Q_MEDIASERVICE_RADIO))
QRadioTuner::QRadioTuner(QObject *parent):
QMediaObject(*new QRadioTunerPrivate,
parent,
QMediaServiceProvider::defaultServiceProvider()->requestService(Q_MEDIASERVICE_RADIO))
{
Q_D(QRadioTuner);
d->provider = provider;
d->provider = QMediaServiceProvider::defaultServiceProvider();
if (d->service != 0) {
d->control = qobject_cast<QRadioTunerControl*>(d->service->requestControl(QRadioTunerControl_iid));