void MediaObject::readyContent() { d->tickTimer->stop(); if (d->content) delete d->content; if (d->sources.empty()) { emit finished(); return; } MediaSource const& h = d->sources.head(); if (h.type() == MediaSource::Invalid) { d->state = d->requiredState = QtopiaMedia::Stopped; d->sources.dequeue(); emit finished(); return; } d->content = new QMediaContent(h.url(), "Media", this); connect(d->content, SIGNAL(mediaError(QString)), SLOT(mediaError(QString))); connect(d->content, SIGNAL(controlAvailable(QString)), SLOT(controlAvailable(QString))); connect(d->content, SIGNAL(controlUnavailable(QString)), SLOT(controlUnavailable(QString))); d->valid = false; emit currentSourceChanged(h); emit stateChanged(Phonon::LoadingState, qtopiaStateToPhononState(d->state)); }
//private slots: void MediaContentServer::interfaceAvailable(const QString& name) { setValue("controls", d->session->interfaces() << "Session"); emit controlAvailable(name); }