author | llornkcor <llornkcor> | 2002-12-16 03:24:09 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-12-16 03:24:09 (UTC) |
commit | ffefde3701c0aed084872d05710d78b7201efaa8 (patch) (unidiff) | |
tree | 735f2fe5e07792685234b6b84011bdfdb4928365 | |
parent | 64bc40080abc56e6bd804dadb44d2510f25f2efa (diff) | |
download | opie-ffefde3701c0aed084872d05710d78b7201efaa8.zip opie-ffefde3701c0aed084872d05710d78b7201efaa8.tar.gz opie-ffefde3701c0aed084872d05710d78b7201efaa8.tar.bz2 |
fix writng m3u filenames when user specifies a directory
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index 6e2457f..707f4d2 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp | |||
@@ -782,109 +782,110 @@ void PlayListWidget::readListFromFile( const QString &filename ) { | |||
782 | // } | 782 | // } |
783 | // lnk.setType( "audio/x-mpegurl" ); | 783 | // lnk.setType( "audio/x-mpegurl" ); |
784 | 784 | ||
785 | // lnk.writeLink(); | 785 | // lnk.writeLink(); |
786 | // d->selectedFiles->addToSelection( lnk ); | 786 | // d->selectedFiles->addToSelection( lnk ); |
787 | // } | 787 | // } |
788 | 788 | ||
789 | // m3uList->close(); | 789 | // m3uList->close(); |
790 | // delete m3uList; | 790 | // delete m3uList; |
791 | // } | 791 | // } |
792 | 792 | ||
793 | // /* | 793 | // /* |
794 | // writes current playlist to current m3u file */ | 794 | // writes current playlist to current m3u file */ |
795 | void PlayListWidget::writeCurrentM3u() { | 795 | void PlayListWidget::writeCurrentM3u() { |
796 | qDebug("writing to current m3u"); | 796 | qDebug("writing to current m3u"); |
797 | Config cfg( "OpiePlayer" ); | 797 | Config cfg( "OpiePlayer" ); |
798 | cfg.setGroup("PlayList"); | 798 | cfg.setGroup("PlayList"); |
799 | QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default"); | 799 | QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default"); |
800 | 800 | ||
801 | Om3u *m3uList; | 801 | Om3u *m3uList; |
802 | m3uList = new Om3u( currentPlaylist, IO_ReadWrite | IO_Truncate ); | 802 | m3uList = new Om3u( currentPlaylist, IO_ReadWrite | IO_Truncate ); |
803 | if( d->selectedFiles->first()) { | 803 | if( d->selectedFiles->first()) { |
804 | 804 | ||
805 | do { | 805 | do { |
806 | // qDebug( "add writeCurrentM3u " +d->selectedFiles->current()->file()); | 806 | // qDebug( "add writeCurrentM3u " +d->selectedFiles->current()->file()); |
807 | m3uList->add( d->selectedFiles->current()->file() ); | 807 | m3uList->add( d->selectedFiles->current()->file() ); |
808 | } | 808 | } |
809 | while ( d->selectedFiles->next() ); | 809 | while ( d->selectedFiles->next() ); |
810 | // qDebug( "<<<<<<<<<<<<>>>>>>>>>>>>>>>>>" ); | 810 | // qDebug( "<<<<<<<<<<<<>>>>>>>>>>>>>>>>>" ); |
811 | m3uList->write(); | 811 | m3uList->write(); |
812 | m3uList->close(); | 812 | m3uList->close(); |
813 | } | 813 | } |
814 | delete m3uList; | 814 | delete m3uList; |
815 | 815 | ||
816 | } | 816 | } |
817 | 817 | ||
818 | /* | 818 | /* |
819 | writes current playlist to m3u file */ | 819 | writes current playlist to m3u file */ |
820 | void PlayListWidget::writem3u() { | 820 | void PlayListWidget::writem3u() { |
821 | InputDialog *fileDlg; | 821 | InputDialog *fileDlg; |
822 | fileDlg = new InputDialog( this, tr( "Save m3u Playlist " ), TRUE, 0); | 822 | fileDlg = new InputDialog( this, tr( "Save m3u Playlist " ), TRUE, 0); |
823 | fileDlg->exec(); | 823 | fileDlg->exec(); |
824 | QString name, filename, list; | 824 | QString name, filename, list; |
825 | Om3u *m3uList; | 825 | Om3u *m3uList; |
826 | 826 | ||
827 | if( fileDlg->result() == 1 ) { | 827 | if( fileDlg->result() == 1 ) { |
828 | name = fileDlg->text(); | 828 | name = fileDlg->text(); |
829 | // qDebug( filename ); | 829 | // qDebug( filename ); |
830 | 830 | if( name.find("/",0,true) != -1) {// assume they specify a file path | |
831 | if( name.left( 1) != "/" ) { | 831 | filename = name; |
832 | filename = QPEApplication::documentDir() + "/" + name; | 832 | name = name.right(name.length()- name.findRev("/",-1,true) - 1 ); |
833 | } | ||
834 | |||
835 | if( name.right( 3 ) != "m3u" ) { | ||
836 | filename = QPEApplication::documentDir() + "/" +name+".m3u"; | ||
837 | } | 833 | } |
834 | else //otherwise dump it somewhere noticable | ||
835 | filename = QPEApplication::documentDir() + "/" + name; | ||
838 | 836 | ||
839 | if( d->selectedFiles->first()) { | 837 | if( filename.right( 3 ) != "m3u" ) //needs filename extension |
840 | m3uList = new Om3u(filename, IO_ReadWrite); | 838 | filename += ".m3u"; |
839 | |||
840 | if( d->selectedFiles->first()) { //ramble through playlist view | ||
841 | m3uList = new Om3u( filename, IO_ReadWrite); | ||
841 | 842 | ||
842 | do { | 843 | do { |
843 | m3uList->add( d->selectedFiles->current()->file()); | 844 | m3uList->add( d->selectedFiles->current()->file()); |
844 | } | 845 | } |
845 | while ( d->selectedFiles->next() ); | 846 | while ( d->selectedFiles->next() ); |
846 | // qDebug( list ); | 847 | // qDebug( list ); |
847 | m3uList->write(); | 848 | m3uList->write(); |
848 | m3uList->close(); | 849 | m3uList->close(); |
849 | delete m3uList; | 850 | delete m3uList; |
850 | 851 | ||
851 | delete fileDlg; | 852 | delete fileDlg; |
852 | 853 | ||
853 | DocLnk lnk; | 854 | DocLnk lnk; |
854 | lnk.setFile( filename); | 855 | lnk.setFile( filename); |
855 | lnk.setIcon("opieplayer2/playlist2"); | 856 | lnk.setIcon("opieplayer2/playlist2"); |
856 | lnk.setName( name); //sets file name | 857 | lnk.setName( name); //sets file name |
857 | 858 | ||
858 | // qDebug(filename); | 859 | // qDebug(filename); |
859 | Config config( "OpiePlayer" ); | 860 | Config config( "OpiePlayer" ); |
860 | config.setGroup( "PlayList" ); | 861 | config.setGroup( "PlayList" ); |
861 | 862 | ||
862 | config.writeEntry("CurrentPlaylist",filename); | 863 | config.writeEntry("CurrentPlaylist",filename); |
863 | currentPlayList=filename; | 864 | currentPlayList=filename; |
864 | 865 | ||
865 | if(!lnk.writeLink()) { | 866 | if(!lnk.writeLink()) { |
866 | qDebug("Writing doclink did not work"); | 867 | qDebug("Writing doclink did not work"); |
867 | } | 868 | } |
868 | 869 | ||
869 | setCaption(tr("OpiePlayer: ") + name); | 870 | setCaption(tr("OpiePlayer: ") + name); |
870 | } | 871 | } |
871 | } | 872 | } |
872 | } | 873 | } |
873 | 874 | ||
874 | void PlayListWidget::keyReleaseEvent( QKeyEvent *e ) { | 875 | void PlayListWidget::keyReleaseEvent( QKeyEvent *e ) { |
875 | switch ( e->key() ) { | 876 | switch ( e->key() ) { |
876 | ////////////////////////////// Zaurus keys | 877 | ////////////////////////////// Zaurus keys |
877 | case Key_F9: //activity | 878 | case Key_F9: //activity |
878 | // if(audioUI->isHidden()) | 879 | // if(audioUI->isHidden()) |
879 | // audioUI->showMaximized(); | 880 | // audioUI->showMaximized(); |
880 | break; | 881 | break; |
881 | case Key_F10: //contacts | 882 | case Key_F10: //contacts |
882 | // if( videoUI->isHidden()) | 883 | // if( videoUI->isHidden()) |
883 | // videoUI->showMaximized(); | 884 | // videoUI->showMaximized(); |
884 | break; | 885 | break; |
885 | case Key_F11: //menu | 886 | case Key_F11: //menu |
886 | break; | 887 | break; |
887 | case Key_F12: //home | 888 | case Key_F12: //home |
888 | // doBlank(); | 889 | // doBlank(); |
889 | break; | 890 | break; |
890 | case Key_F13: //mail | 891 | case Key_F13: //mail |