summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-06-11 23:19:17 (UTC)
committer llornkcor <llornkcor>2002-06-11 23:19:17 (UTC)
commit37ab41238538d7c89090c083953b794cfdc29c6a (patch) (unidiff)
tree3a7db52fd8f8b2510d798fab094d65484e7227d8
parent7bace0e2b8613aaf229acea03107c68159cfa6de (diff)
downloadopie-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...
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/multimedia/opieplayer/playlistwidget.cpp50
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
438void PlayListWidget::addAllMusicToList() { 438void 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
445void PlayListWidget::addAllVideoToList() { 445void 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
452void PlayListWidget::setDocument(const QString& fileref) { 452void 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
485void PlayListWidget::setActiveWindow() { 483void 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)
1165void PlayListWidget::doBlank() { 1163void 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
1174void PlayListWidget::doUnblank() { 1172void 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
1187void PlayListWidget::readm3u(const QString &filename) { 1185void 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
1233void PlayListWidget::writem3u(const QString &filename) { 1231void PlayListWidget::writem3u(const QString &filename) {
1234 1232
1235} 1233}
1236 1234
1237void PlayListWidget::readPls(const QString &filename) { 1235void 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