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)); }
void DataMediaWidget::loadUri() { if (FUriIndex < FMedia.uris.count()) { const IDataMediaURI &uri = FMedia.uris.at(FUriIndex); if (FDataForms->isSupportedUri(uri)) { setToolTip(uri.url.toString()); setText(tr("Loading data...")); FDataForms->loadUrl(uri.url); } else { FUriIndex++; loadUri(); } } else { disconnect(FDataForms->instance()); setText(FLastError.errorMessage()); emit mediaError(FLastError); } }