author | llornkcor <llornkcor> | 2002-06-11 23:19:17 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-06-11 23:19:17 (UTC) |
commit | 37ab41238538d7c89090c083953b794cfdc29c6a (patch) (unidiff) | |
tree | 3a7db52fd8f8b2510d798fab094d65484e7227d8 | |
parent | 7bace0e2b8613aaf229acea03107c68159cfa6de (diff) | |
download | opie-37ab41238538d7c89090c083953b794cfdc29c6a.zip opie-37ab41238538d7c89090c083953b794cfdc29c6a.tar.gz opie-37ab41238538d7c89090c083953b794cfdc29c6a.tar.bz2 |
in theory, clicking on a pls, or m3u list will now open them and add the url's to the playlist...
-rw-r--r-- | core/multimedia/opieplayer/playlistwidget.cpp | 50 |
1 files changed, 33 insertions, 17 deletions
diff --git a/core/multimedia/opieplayer/playlistwidget.cpp b/core/multimedia/opieplayer/playlistwidget.cpp index 78c2822..930560e 100644 --- a/core/multimedia/opieplayer/playlistwidget.cpp +++ b/core/multimedia/opieplayer/playlistwidget.cpp | |||
@@ -436,57 +436,55 @@ void PlayListWidget::addAllToList() { | |||
436 | 436 | ||
437 | 437 | ||
438 | void PlayListWidget::addAllMusicToList() { | 438 | void PlayListWidget::addAllMusicToList() { |
439 | QListIterator<DocLnk> dit( files.children() ); | 439 | QListIterator<DocLnk> dit( files.children() ); |
440 | for ( ; dit.current(); ++dit ) | 440 | for ( ; dit.current(); ++dit ) |
441 | d->selectedFiles->addToSelection( **dit ); | 441 | d->selectedFiles->addToSelection( **dit ); |
442 | } | 442 | } |
443 | 443 | ||
444 | 444 | ||
445 | void PlayListWidget::addAllVideoToList() { | 445 | void PlayListWidget::addAllVideoToList() { |
446 | QListIterator<DocLnk> dit( vFiles.children() ); | 446 | QListIterator<DocLnk> dit( vFiles.children() ); |
447 | for ( ; dit.current(); ++dit ) | 447 | for ( ; dit.current(); ++dit ) |
448 | d->selectedFiles->addToSelection( **dit ); | 448 | d->selectedFiles->addToSelection( **dit ); |
449 | } | 449 | } |
450 | 450 | ||
451 | 451 | ||
452 | void PlayListWidget::setDocument(const QString& fileref) { | 452 | void PlayListWidget::setDocument(const QString& fileref) { |
453 | qDebug(fileref); | 453 | qDebug(fileref); |
454 | fromSetDocument = TRUE; | 454 | fromSetDocument = TRUE; |
455 | if ( fileref.isNull() ) { | 455 | if ( fileref.isNull() ) { |
456 | QMessageBox::critical( 0, tr( "Invalid File" ), tr( "There was a problem in getting the file." ) ); | 456 | QMessageBox::critical( 0, tr( "Invalid File" ), tr( "There was a problem in getting the file." ) ); |
457 | return; | 457 | return; |
458 | } | 458 | } |
459 | // qDebug("setDocument "+fileref); | 459 | // qDebug("setDocument "+fileref); |
460 | // if(fileref.find("m3u",0,TRUE) != -1) { //is m3u | 460 | if(fileref.find("m3u",0,TRUE) != -1) { //is m3u |
461 | // clearList(); | 461 | readm3u( fileref); |
462 | // addToSelection( DocLnk( fileref ) ); | 462 | } |
463 | // d->setDocumentUsed = TRUE; | 463 | else if(fileref.find("pls",0,TRUE) != -1) { //is pls |
464 | // d->selectedFiles->first(); | 464 | readPls( fileref); |
465 | // qApp->processEvents(); | 465 | } |
466 | // } | 466 | else if(fileref.find("playlist",0,TRUE) != -1) {//is playlist |
467 | // else | ||
468 | if(fileref.find("playlist",0,TRUE) != -1) {//is playlist | ||
469 | clearList(); | 467 | clearList(); |
470 | loadList(DocLnk(fileref)); | 468 | loadList(DocLnk(fileref)); |
471 | d->selectedFiles->first(); | 469 | d->selectedFiles->first(); |
472 | } else { | 470 | } else { |
473 | clearList(); | 471 | clearList(); |
474 | addToSelection( DocLnk( fileref ) ); | 472 | addToSelection( DocLnk( fileref ) ); |
475 | d->setDocumentUsed = TRUE; | 473 | d->setDocumentUsed = TRUE; |
476 | mediaPlayerState->setPlaying( FALSE ); | 474 | mediaPlayerState->setPlaying( FALSE ); |
477 | qApp->processEvents(); | 475 | qApp->processEvents(); |
478 | mediaPlayerState->setPlaying( TRUE ); | 476 | mediaPlayerState->setPlaying( TRUE ); |
479 | qApp->processEvents(); | 477 | qApp->processEvents(); |
480 | setCaption(tr("OpiePlayer")); | 478 | setCaption(tr("OpiePlayer")); |
481 | } | 479 | } |
482 | } | 480 | } |
483 | 481 | ||
484 | 482 | ||
485 | void PlayListWidget::setActiveWindow() { | 483 | void PlayListWidget::setActiveWindow() { |
486 | // When we get raised we need to ensure that it switches views | 484 | // When we get raised we need to ensure that it switches views |
487 | char origView = mediaPlayerState->view(); | 485 | char origView = mediaPlayerState->view(); |
488 | mediaPlayerState->setView( 'l' ); // invalidate | 486 | mediaPlayerState->setView( 'l' ); // invalidate |
489 | mediaPlayerState->setView( origView ); // now switch back | 487 | mediaPlayerState->setView( origView ); // now switch back |
490 | } | 488 | } |
491 | 489 | ||
492 | 490 | ||
@@ -1165,49 +1163,49 @@ void PlayListWidget::keyPressEvent( QKeyEvent *e) | |||
1165 | void PlayListWidget::doBlank() { | 1163 | void PlayListWidget::doBlank() { |
1166 | qDebug("do blanking"); | 1164 | qDebug("do blanking"); |
1167 | fd=open("/dev/fb0",O_RDWR); | 1165 | fd=open("/dev/fb0",O_RDWR); |
1168 | if (fd != -1) { | 1166 | if (fd != -1) { |
1169 | ioctl(fd,FBIOBLANK,1); | 1167 | ioctl(fd,FBIOBLANK,1); |
1170 | // close(fd); | 1168 | // close(fd); |
1171 | } | 1169 | } |
1172 | } | 1170 | } |
1173 | 1171 | ||
1174 | void PlayListWidget::doUnblank() { | 1172 | void PlayListWidget::doUnblank() { |
1175 | // this crashes opieplayer with a segfault | 1173 | // this crashes opieplayer with a segfault |
1176 | // int fd; | 1174 | // int fd; |
1177 | // fd=open("/dev/fb0",O_RDWR); | 1175 | // fd=open("/dev/fb0",O_RDWR); |
1178 | qDebug("do unblanking"); | 1176 | qDebug("do unblanking"); |
1179 | if (fd != -1) { | 1177 | if (fd != -1) { |
1180 | ioctl(fd,FBIOBLANK,0); | 1178 | ioctl(fd,FBIOBLANK,0); |
1181 | close(fd); | 1179 | close(fd); |
1182 | } | 1180 | } |
1183 | QCopEnvelope h("QPE/System", "setBacklight(int)"); | 1181 | QCopEnvelope h("QPE/System", "setBacklight(int)"); |
1184 | h <<-3;// v[1]; // -3 Force on | 1182 | h <<-3;// v[1]; // -3 Force on |
1185 | } | 1183 | } |
1186 | 1184 | ||
1187 | void PlayListWidget::readm3u(const QString &filename) { | 1185 | void PlayListWidget::readm3u(const QString &filename) { |
1188 | 1186 | ||
1189 | qDebug("playlist filename is "+filename); | 1187 | qDebug("m3u filename is "+filename); |
1190 | QFile f(filename); | 1188 | QFile f(filename); |
1191 | 1189 | ||
1192 | if(f.open(IO_ReadOnly)) { | 1190 | if(f.open(IO_ReadOnly)) { |
1193 | QTextStream t(&f); | 1191 | QTextStream t(&f); |
1194 | QString s;//, first, second; | 1192 | QString s;//, first, second; |
1195 | int i=0; | 1193 | int i=0; |
1196 | while ( !t.atEnd()) { | 1194 | while ( !t.atEnd()) { |
1197 | // Lview->insertLine(t.readLine(),-1); | 1195 | // Lview->insertLine(t.readLine(),-1); |
1198 | s=t.readLine(); | 1196 | s=t.readLine(); |
1199 | if(s.find("#",0,TRUE) == -1) { | 1197 | if(s.find("#",0,TRUE) == -1) { |
1200 | if(s.find(" ",0,TRUE) == -1) { // not sure if this is neede since cf uses vfat | 1198 | if(s.find(" ",0,TRUE) == -1) { // not sure if this is neede since cf uses vfat |
1201 | if(s.left(2) == "E:" || s.left(2) == "P:") { | 1199 | if(s.left(2) == "E:" || s.left(2) == "P:") { |
1202 | s=s.right(s.length()-2); | 1200 | s=s.right(s.length()-2); |
1203 | DocLnk lnk( s ); | 1201 | DocLnk lnk( s ); |
1204 | QFileInfo f(s); | 1202 | QFileInfo f(s); |
1205 | QString name = f.baseName(); | 1203 | QString name = f.baseName(); |
1206 | name = name.right(name.length()-name.findRev("\\",-1,TRUE)-1); | 1204 | name = name.right(name.length()-name.findRev("\\",-1,TRUE)-1); |
1207 | lnk.setName( name); | 1205 | lnk.setName( name); |
1208 | s=s.replace( QRegExp("\\"),"/"); | 1206 | s=s.replace( QRegExp("\\"),"/"); |
1209 | lnk.setFile( s); | 1207 | lnk.setFile( s); |
1210 | // lnk.setIcon(opieplayer/MPEGPlayer); | 1208 | // lnk.setIcon(opieplayer/MPEGPlayer); |
1211 | qDebug("add "+name); | 1209 | qDebug("add "+name); |
1212 | d->selectedFiles->addToSelection( lnk); | 1210 | d->selectedFiles->addToSelection( lnk); |
1213 | } else { // is url | 1211 | } else { // is url |
@@ -1215,49 +1213,67 @@ void PlayListWidget::readm3u(const QString &filename) { | |||
1215 | QString name = s.right( s.length() - 7); | 1213 | QString name = s.right( s.length() - 7); |
1216 | // name = name.right(name.length()-name.findRev("\\",-1,TRUE)-1); | 1214 | // name = name.right(name.length()-name.findRev("\\",-1,TRUE)-1); |
1217 | lnk.setName(name); | 1215 | lnk.setName(name); |
1218 | lnk.setFile( s+"/"); | 1216 | lnk.setFile( s+"/"); |
1219 | // lnk.setFile( filename); | 1217 | // lnk.setFile( filename); |
1220 | // lnk.setComment( s+"/"); | 1218 | // lnk.setComment( s+"/"); |
1221 | lnk.setType("audio/x-mpegurl"); | 1219 | lnk.setType("audio/x-mpegurl"); |
1222 | // lnk.setIcon( "opieplayer/MPEGPlayer"); | 1220 | // lnk.setIcon( "opieplayer/MPEGPlayer"); |
1223 | // qDebug("add "+s); | 1221 | // qDebug("add "+s); |
1224 | d->selectedFiles->addToSelection( lnk); | 1222 | d->selectedFiles->addToSelection( lnk); |
1225 | } | 1223 | } |
1226 | i++; | 1224 | i++; |
1227 | } | 1225 | } |
1228 | } | 1226 | } |
1229 | } | 1227 | } |
1230 | } | 1228 | } |
1231 | } | 1229 | } |
1232 | 1230 | ||
1233 | void PlayListWidget::writem3u(const QString &filename) { | 1231 | void PlayListWidget::writem3u(const QString &filename) { |
1234 | 1232 | ||
1235 | } | 1233 | } |
1236 | 1234 | ||
1237 | void PlayListWidget::readPls(const QString &filename) { | 1235 | void PlayListWidget::readPls(const QString &filename) { |
1238 | 1236 | ||
1239 | qDebug("playlist filename is "+filename); | 1237 | qDebug("pls filename is "+filename); |
1240 | QFile f(filename); | 1238 | QFile f(filename); |
1241 | 1239 | ||
1242 | if(f.open(IO_ReadOnly)) { | 1240 | if(f.open(IO_ReadOnly)) { |
1243 | QTextStream t(&f); | 1241 | QTextStream t(&f); |
1244 | QString s;//, first, second; | 1242 | QString s;//, first, second; |
1245 | int i=0; | 1243 | int i=0; |
1246 | while ( !t.atEnd()) { | 1244 | while ( !t.atEnd()) { |
1245 | s=t.readLine(); | ||
1246 | if(s.left(4) == "File") { | ||
1247 | s=s.right(s.length() - 6); | ||
1248 | qDebug("adding "+s+" to playlist"); | ||
1249 | // numberofentries=2 | ||
1250 | // File1=http | ||
1251 | // Title | ||
1252 | // Length | ||
1253 | // Version | ||
1254 | // File2=http | ||
1255 | |||
1256 | s=s.replace( QRegExp("\\"),"/"); | ||
1247 | // Lview->insertLine(t.readLine(),-1); | 1257 | // Lview->insertLine(t.readLine(),-1); |
1248 | // s=t.readLine(); | 1258 | // s=t.readLine(); |
1249 | // s=s.right(s.length()-2); | 1259 | // s=s.right(s.length()-2); |
1250 | // DocLnk lnk( s ); | 1260 | DocLnk lnk( s ); |
1261 | QFileInfo f(s); | ||
1262 | QString name = f.baseName(); | ||
1263 | name = name.right(name.length()-name.findRev("\\",-1,TRUE)-1); | ||
1251 | // QFileInfo f(s); | 1264 | // QFileInfo f(s); |
1252 | // QString name = f.baseName(); | 1265 | // QString name = f.baseName(); |
1253 | // // name = name.left(name.length()-4); | 1266 | // // name = name.left(name.length()-4); |
1254 | // name = name.right(name.findRev("/",0,TRUE)); | 1267 | // name = name.right(name.findRev("/",0,TRUE)); |
1255 | // lnk.setName( name); | 1268 | lnk.setName( name); |
1256 | // lnk.setFile( s); | 1269 | lnk.setFile( s+"/"); |
1257 | // qDebug("add "+name); | 1270 | lnk.setType("audio/x-mpegurl"); |
1258 | // d->selectedFiles->addToSelection( lnk); | 1271 | |
1272 | qDebug("DocLnk add "+name); | ||
1273 | d->selectedFiles->addToSelection( lnk); | ||
1274 | } | ||
1259 | } | 1275 | } |
1260 | i++; | 1276 | i++; |
1261 | } | 1277 | } |
1262 | } | 1278 | } |
1263 | 1279 | ||