Begin phasing in playlist support
[groove] / splayer.cpp
index 0509b3e..4b6b07e 100644 (file)
@@ -20,6 +20,20 @@ sPlayer::~sPlayer()
     buffer->~QBuffer();
     media->~MediaNode();
 }
+void sPlayer::abortDownload()
+{
+    //pd->hide();
+    //reply->abort();
+}
+void sPlayer::play(QString StreamKey, QUrl server, QMaemo5Rotator::Orientation orientation)
+{
+    this->play(StreamKey, server);
+#ifdef Q_WS_MAEMO_5
+    if(orientation == QMaemo5Rotator::PortraitOrientation)
+        pd->rot->setCurrentOrientation(orientation);
+#endif
+    //isPortrait = false; //just make the compilier happy on non-maemo
+}
 
 void sPlayer::play(QString StreamKey,QUrl server)
 {
@@ -27,7 +41,10 @@ void sPlayer::play(QString StreamKey,QUrl server)
     {
         //reply->abort();
     }
-
+    pd = new grooveProgressBar();
+    //pd->setAttribute();
+    pd->show();
+    pd->setValue(0);
     QNetworkRequest req;
     req.setUrl(server);
     qDebug() << server;
@@ -36,6 +53,7 @@ void sPlayer::play(QString StreamKey,QUrl server)
     buffer->open(buffer->ReadWrite | buffer->Truncate);
     connect(reply,SIGNAL(finished()),this,SLOT(start()));
     connect(reply,SIGNAL(downloadProgress(qint64,qint64)),this,SLOT(putb(qint64,qint64)));
+    //connect(pd,SIGNAL(canceled()),this,SLOT(abortDownload()));
     media->stop();
     playing = false;
     startStreamT = QTime::currentTime();
@@ -59,6 +77,7 @@ void sPlayer::start()
             playing = true;
             media->setCurrentSource(Phonon::MediaSource(buffer));
             media->play();
+            pd->hide();
             qDebug() << "Playing";
         }
     }
@@ -101,6 +120,9 @@ void sPlayer::putb(qint64 b, qint64 t)
     }
     else
     {
+        if(pd->maximum() != t)
+            pd->setMaximum(t);
+        pd->setValue(b);
 
         buffer->buffer().append(reply->readAll());
         //qDebug() << buffer->bytesAvailable();
@@ -120,8 +142,9 @@ void sPlayer::putb(qint64 b, qint64 t)
         buffer->seek(last);
         //buffer->data().append(reply->readAll());*/
         //qDebug() << "Download speed (KB/S): " << b/(startStreamT.msecsTo(QTime::currentTime()) + 1)*100/1024;
-        if ( b >= t*0.05 && !playing && b/(startStreamT.msecsTo(QTime::currentTime()) + 1)*100/1024 >= 35)
+        if ( b >= t*0.05 && !playing && b/(startStreamT.msecsTo(QTime::currentTime()) + 1)*100/1024 >= 10)
         {
+            pd->hide();
             playing = true;
             //Start playback at 25% download
             media->setCurrentSource(Phonon::MediaSource(buffer));