-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index 0825eed..60eb0c8 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp | |||
@@ -487,87 +487,94 @@ void PlayListWidget::addSelected() { | |||
487 | // tabWidget->setCurrentPage(0); | 487 | // tabWidget->setCurrentPage(0); |
488 | writeCurrentM3u(); | 488 | writeCurrentM3u(); |
489 | 489 | ||
490 | } | 490 | } |
491 | break; | 491 | break; |
492 | }; | 492 | }; |
493 | } | 493 | } |
494 | 494 | ||
495 | 495 | ||
496 | void PlayListWidget::removeSelected() { | 496 | void PlayListWidget::removeSelected() { |
497 | d->selectedFiles->removeSelected( ); | 497 | d->selectedFiles->removeSelected( ); |
498 | writeCurrentM3u(); | 498 | writeCurrentM3u(); |
499 | } | 499 | } |
500 | 500 | ||
501 | 501 | ||
502 | void PlayListWidget::playIt( QListViewItem *it) { | 502 | void PlayListWidget::playIt( QListViewItem *it) { |
503 | if(!it) return; | 503 | if(!it) return; |
504 | mediaPlayerState->setPlaying(FALSE); | 504 | mediaPlayerState->setPlaying(FALSE); |
505 | mediaPlayerState->setPlaying(TRUE); | 505 | mediaPlayerState->setPlaying(TRUE); |
506 | d->selectedFiles->unSelect(); | 506 | d->selectedFiles->unSelect(); |
507 | } | 507 | } |
508 | 508 | ||
509 | 509 | ||
510 | void PlayListWidget::addToSelection( QListViewItem *it) { | 510 | void PlayListWidget::addToSelection( QListViewItem *it) { |
511 | d->setDocumentUsed = FALSE; | 511 | d->setDocumentUsed = FALSE; |
512 | 512 | ||
513 | if(it) { | 513 | if(it) { |
514 | switch ( whichList()) { | 514 | switch ( whichList()) { |
515 | case 1: { | 515 | case 1: { |
516 | QListIterator<DocLnk> dit( files.children() ); | 516 | QListIterator<DocLnk> dit( files.children() ); |
517 | for ( ; dit.current(); ++dit ) { | 517 | for ( ; dit.current(); ++dit ) { |
518 | if( dit.current()->name() == it->text(0)) { | 518 | if( dit.current()->name() == it->text(0)) { |
519 | if(QFileInfo( dit.current()->file()).exists()) | 519 | if(QFileInfo( dit.current()->file()).exists()) { |
520 | d->selectedFiles->addToSelection( **dit ); | 520 | d->selectedFiles->addToSelection( **dit ); |
521 | qDebug("blah "+ dit.current()->name()); | ||
522 | d->selectedFiles->setSelectedItem( dit.current()->name()); | ||
523 | } | ||
521 | } | 524 | } |
522 | } | 525 | } |
523 | writeCurrentM3u(); | 526 | writeCurrentM3u(); |
524 | } | 527 | } |
525 | break; | 528 | break; |
526 | case 2: { | 529 | case 2: { |
527 | QListIterator<DocLnk> dit( vFiles.children() ); | 530 | QListIterator<DocLnk> dit( vFiles.children() ); |
528 | for ( ; dit.current(); ++dit ) { | 531 | for ( ; dit.current(); ++dit ) { |
529 | if( dit.current()->name() == it->text(0)) { | 532 | if( dit.current()->name() == it->text(0)) { |
530 | if( QFileInfo( dit.current()->file()).exists() ) | 533 | if( QFileInfo( dit.current()->file()).exists() ) { |
531 | d->selectedFiles->addToSelection( **dit ); | 534 | d->selectedFiles->addToSelection( **dit ); |
535 | qDebug("blah "+ dit.current()->name()); | ||
536 | d->selectedFiles->setSelectedItem( dit.current()->name()); | ||
537 | } | ||
532 | } | 538 | } |
533 | } | 539 | } |
534 | writeCurrentM3u(); | 540 | writeCurrentM3u(); |
535 | 541 | ||
536 | } | 542 | } |
537 | break; | 543 | break; |
538 | case 0: | 544 | case 0: |
539 | break; | 545 | break; |
540 | }; | 546 | }; |
541 | tabWidget->setCurrentPage(0); | 547 | tabWidget->setCurrentPage(0); |
548 | |||
542 | } | 549 | } |
543 | } | 550 | } |
544 | 551 | ||
545 | 552 | ||
546 | void PlayListWidget::tabChanged(QWidget *) { | 553 | void PlayListWidget::tabChanged(QWidget *) { |
547 | 554 | ||
548 | switch ( whichList()) { | 555 | switch ( whichList()) { |
549 | case 0: | 556 | case 0: |
550 | { | 557 | { |
551 | if( !tbDeletePlaylist->isHidden() ) { | 558 | if( !tbDeletePlaylist->isHidden() ) { |
552 | tbDeletePlaylist->hide(); | 559 | tbDeletePlaylist->hide(); |
553 | } | 560 | } |
554 | d->tbRemoveFromList->setEnabled(TRUE); | 561 | d->tbRemoveFromList->setEnabled(TRUE); |
555 | d->tbAddToList->setEnabled(FALSE); | 562 | d->tbAddToList->setEnabled(FALSE); |
556 | } | 563 | } |
557 | break; | 564 | break; |
558 | case 1: | 565 | case 1: |
559 | { | 566 | { |
560 | audioView->clear(); | 567 | audioView->clear(); |
561 | populateAudioView(); | 568 | populateAudioView(); |
562 | 569 | ||
563 | if( !tbDeletePlaylist->isHidden() ) { | 570 | if( !tbDeletePlaylist->isHidden() ) { |
564 | tbDeletePlaylist->hide(); | 571 | tbDeletePlaylist->hide(); |
565 | } | 572 | } |
566 | d->tbRemoveFromList->setEnabled(FALSE); | 573 | d->tbRemoveFromList->setEnabled(FALSE); |
567 | d->tbAddToList->setEnabled(TRUE); | 574 | d->tbAddToList->setEnabled(TRUE); |
568 | } | 575 | } |
569 | break; | 576 | break; |
570 | case 2: | 577 | case 2: |
571 | { | 578 | { |
572 | videoView->clear(); | 579 | videoView->clear(); |
573 | populateVideoView(); | 580 | populateVideoView(); |
@@ -716,75 +723,77 @@ void PlayListWidget::openFile() { | |||
716 | QString filename, name; | 723 | QString filename, name; |
717 | InputDialog *fileDlg; | 724 | InputDialog *fileDlg; |
718 | fileDlg = new InputDialog(this,tr("Open file or URL"),TRUE, 0); | 725 | fileDlg = new InputDialog(this,tr("Open file or URL"),TRUE, 0); |
719 | fileDlg->exec(); | 726 | fileDlg->exec(); |
720 | if( fileDlg->result() == 1 ) { | 727 | if( fileDlg->result() == 1 ) { |
721 | filename = fileDlg->text(); | 728 | filename = fileDlg->text(); |
722 | qDebug( "Selected filename is " + filename ); | 729 | qDebug( "Selected filename is " + filename ); |
723 | Om3u *m3uList; | 730 | Om3u *m3uList; |
724 | DocLnk lnk; | 731 | DocLnk lnk; |
725 | Config cfg( "OpiePlayer" ); | 732 | Config cfg( "OpiePlayer" ); |
726 | cfg.setGroup("PlayList"); | 733 | cfg.setGroup("PlayList"); |
727 | 734 | ||
728 | if(filename.left(4) == "http") { | 735 | if(filename.left(4) == "http") { |
729 | QString m3uFile, m3uFilePath; | 736 | QString m3uFile, m3uFilePath; |
730 | if(filename.find(":",8,TRUE) != -1) { //found a port | 737 | if(filename.find(":",8,TRUE) != -1) { //found a port |
731 | m3uFile = filename.left( filename.find( ":",8,TRUE)); | 738 | m3uFile = filename.left( filename.find( ":",8,TRUE)); |
732 | m3uFile = m3uFile.right( 7); | 739 | m3uFile = m3uFile.right( 7); |
733 | } else if(filename.left(4) == "http"){ | 740 | } else if(filename.left(4) == "http"){ |
734 | m3uFile=filename; | 741 | m3uFile=filename; |
735 | m3uFile = m3uFile.right( m3uFile.length() - 7); | 742 | m3uFile = m3uFile.right( m3uFile.length() - 7); |
736 | } else{ | 743 | } else{ |
737 | m3uFile=filename; | 744 | m3uFile=filename; |
738 | } | 745 | } |
739 | 746 | ||
740 | // qDebug("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"+ m3uFile); | 747 | // qDebug("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"+ m3uFile); |
741 | lnk.setName( filename ); //sets name | 748 | lnk.setName( filename ); //sets name |
742 | lnk.setFile( filename ); //sets file name | 749 | lnk.setFile( filename ); //sets file name |
743 | 750 | ||
744 | // lnk.setIcon("opieplayer2/musicfile"); | 751 | // lnk.setIcon("opieplayer2/musicfile"); |
745 | 752 | ||
746 | d->selectedFiles->addToSelection( lnk ); | 753 | d->selectedFiles->addToSelection( lnk ); |
747 | writeCurrentM3u(); | 754 | writeCurrentM3u(); |
755 | d->selectedFiles->setSelectedItem( lnk->name()); | ||
748 | } | 756 | } |
749 | else if( filename.right( 3) == "m3u" ) { | 757 | else if( filename.right( 3) == "m3u" ) { |
750 | readm3u( filename ); | 758 | readm3u( filename ); |
751 | 759 | ||
752 | } else if( filename.right(3) == "pls" ) { | 760 | } else if( filename.right(3) == "pls" ) { |
753 | readPls( filename ); | 761 | readPls( filename ); |
754 | } else { | 762 | } else { |
755 | lnk.setName( QFileInfo(filename).baseName() ); //sets name | 763 | lnk.setName( QFileInfo(filename).baseName() ); //sets name |
756 | lnk.setFile( filename ); //sets file name | 764 | lnk.setFile( filename ); //sets file name |
757 | d->selectedFiles->addToSelection( lnk); | 765 | d->selectedFiles->addToSelection( lnk); |
758 | writeCurrentM3u(); | 766 | writeCurrentM3u(); |
767 | d->selectedFiles->setSelectedItem( lnk.name()); | ||
759 | } | 768 | } |
760 | } | 769 | } |
761 | 770 | ||
762 | if( fileDlg ) { | 771 | if( fileDlg ) { |
763 | delete fileDlg; | 772 | delete fileDlg; |
764 | } | 773 | } |
765 | } | 774 | } |
766 | 775 | ||
767 | /* | 776 | /* |
768 | reads m3u and shows files/urls to playlist widget */ | 777 | reads m3u and shows files/urls to playlist widget */ |
769 | void PlayListWidget::readm3u( const QString &filename ) { | 778 | void PlayListWidget::readm3u( const QString &filename ) { |
770 | qDebug( "read m3u filename " + filename ); | 779 | qDebug( "read m3u filename " + filename ); |
771 | 780 | ||
772 | Om3u *m3uList; | 781 | Om3u *m3uList; |
773 | QString s, name; | 782 | QString s, name; |
774 | m3uList = new Om3u( filename, IO_ReadOnly ); | 783 | m3uList = new Om3u( filename, IO_ReadOnly ); |
775 | m3uList->readM3u(); | 784 | m3uList->readM3u(); |
776 | DocLnk lnk; | 785 | DocLnk lnk; |
777 | for ( QStringList::ConstIterator it = m3uList->begin(); it != m3uList->end(); ++it ) { | 786 | for ( QStringList::ConstIterator it = m3uList->begin(); it != m3uList->end(); ++it ) { |
778 | s = *it; | 787 | s = *it; |
779 | // qDebug("reading "+ s); | 788 | // qDebug("reading "+ s); |
780 | if(s.left(4)=="http") { | 789 | if(s.left(4)=="http") { |
781 | lnk.setName( s ); //sets file name | 790 | lnk.setName( s ); //sets file name |
782 | lnk.setIcon("opieplayer2/musicfile"); | 791 | lnk.setIcon("opieplayer2/musicfile"); |
783 | // if(s.right(4) != '.' || s.right(5) != '.') | 792 | // if(s.right(4) != '.' || s.right(5) != '.') |
784 | // lnk.setFile( s+"/"); //if url with no extension | 793 | // lnk.setFile( s+"/"); //if url with no extension |
785 | // else | 794 | // else |
786 | lnk.setFile( s ); //sets file name | 795 | lnk.setFile( s ); //sets file name |
787 | 796 | ||
788 | } else { | 797 | } else { |
789 | // if( QFileInfo( s ).exists() ) { | 798 | // if( QFileInfo( s ).exists() ) { |
790 | lnk.setName( QFileInfo(s).baseName()); | 799 | lnk.setName( QFileInfo(s).baseName()); |
@@ -857,64 +866,65 @@ void PlayListWidget::readPls( const QString &filename ) { | |||
857 | 866 | ||
858 | lnk.writeLink(); | 867 | lnk.writeLink(); |
859 | d->selectedFiles->addToSelection( lnk ); | 868 | d->selectedFiles->addToSelection( lnk ); |
860 | } | 869 | } |
861 | 870 | ||
862 | m3uList->close(); | 871 | m3uList->close(); |
863 | if(m3uList) delete m3uList; | 872 | if(m3uList) delete m3uList; |
864 | } | 873 | } |
865 | 874 | ||
866 | /* | 875 | /* |
867 | writes current playlist to current m3u file */ | 876 | writes current playlist to current m3u file */ |
868 | void PlayListWidget::writeCurrentM3u() { | 877 | void PlayListWidget::writeCurrentM3u() { |
869 | qDebug("writing to current m3u"); | 878 | qDebug("writing to current m3u"); |
870 | Config cfg( "OpiePlayer" ); | 879 | Config cfg( "OpiePlayer" ); |
871 | cfg.setGroup("PlayList"); | 880 | cfg.setGroup("PlayList"); |
872 | QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default"); | 881 | QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default"); |
873 | 882 | ||
874 | Om3u *m3uList; | 883 | Om3u *m3uList; |
875 | m3uList = new Om3u( currentPlaylist, IO_ReadWrite | IO_Truncate ); | 884 | m3uList = new Om3u( currentPlaylist, IO_ReadWrite | IO_Truncate ); |
876 | if( d->selectedFiles->first()) { | 885 | if( d->selectedFiles->first()) { |
877 | 886 | ||
878 | do { | 887 | do { |
879 | qDebug( "add writeCurrentM3u " +d->selectedFiles->current()->file()); | 888 | qDebug( "add writeCurrentM3u " +d->selectedFiles->current()->file()); |
880 | m3uList->add( d->selectedFiles->current()->file() ); | 889 | m3uList->add( d->selectedFiles->current()->file() ); |
881 | } | 890 | } |
882 | while ( d->selectedFiles->next() ); | 891 | while ( d->selectedFiles->next() ); |
883 | qDebug( "<<<<<<<<<<<<>>>>>>>>>>>>>>>>>" ); | 892 | qDebug( "<<<<<<<<<<<<>>>>>>>>>>>>>>>>>" ); |
884 | m3uList->write(); | 893 | m3uList->write(); |
885 | m3uList->close(); | 894 | m3uList->close(); |
886 | 895 | ||
887 | if(m3uList) delete m3uList; | 896 | if(m3uList) delete m3uList; |
888 | } | 897 | } |
898 | |||
889 | } | 899 | } |
890 | 900 | ||
891 | /* | 901 | /* |
892 | writes current playlist to m3u file */ | 902 | writes current playlist to m3u file */ |
893 | void PlayListWidget::writem3u() { | 903 | void PlayListWidget::writem3u() { |
894 | InputDialog *fileDlg; | 904 | InputDialog *fileDlg; |
895 | fileDlg = new InputDialog( this, tr( "Save m3u Playlist " ), TRUE, 0); | 905 | fileDlg = new InputDialog( this, tr( "Save m3u Playlist " ), TRUE, 0); |
896 | fileDlg->exec(); | 906 | fileDlg->exec(); |
897 | QString name, filename, list; | 907 | QString name, filename, list; |
898 | Om3u *m3uList; | 908 | Om3u *m3uList; |
899 | 909 | ||
900 | if( fileDlg->result() == 1 ) { | 910 | if( fileDlg->result() == 1 ) { |
901 | name = fileDlg->text(); | 911 | name = fileDlg->text(); |
902 | // qDebug( filename ); | 912 | // qDebug( filename ); |
903 | 913 | ||
904 | if( name.left( 1) != "/" ) { | 914 | if( name.left( 1) != "/" ) { |
905 | filename = QPEApplication::documentDir() + "/" + name; | 915 | filename = QPEApplication::documentDir() + "/" + name; |
906 | } | 916 | } |
907 | 917 | ||
908 | if( name.right( 3 ) != "m3u" ) { | 918 | if( name.right( 3 ) != "m3u" ) { |
909 | filename = QPEApplication::documentDir() + "/" +name+".m3u"; | 919 | filename = QPEApplication::documentDir() + "/" +name+".m3u"; |
910 | } | 920 | } |
911 | 921 | ||
912 | if( d->selectedFiles->first()) { | 922 | if( d->selectedFiles->first()) { |
913 | m3uList = new Om3u(filename, IO_ReadWrite); | 923 | m3uList = new Om3u(filename, IO_ReadWrite); |
914 | 924 | ||
915 | do { | 925 | do { |
916 | m3uList->add( d->selectedFiles->current()->file()); | 926 | m3uList->add( d->selectedFiles->current()->file()); |
917 | } | 927 | } |
918 | while ( d->selectedFiles->next() ); | 928 | while ( d->selectedFiles->next() ); |
919 | // qDebug( list ); | 929 | // qDebug( list ); |
920 | m3uList->write(); | 930 | m3uList->write(); |