-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index c0d3108..d53c423 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp @@ -54,12 +54,14 @@ #include "audiowidget.h" #include "videowidget.h" extern MediaPlayerState *mediaPlayerState; +QString audioMimes ="audio/mpeg;audio/x-wav;audio/x-ogg"; +// no m3u's here please PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl ) : PlayListWidgetGui( parent, name, fl ) { d->tbAddToList = new ToolButton( bar, tr( "Add to Playlist" ), "opieplayer2/add_to_playlist", @@ -202,13 +204,13 @@ void PlayListWidget::writeDefaultPlaylist() { void PlayListWidget::addToSelection( const DocLnk& lnk ) { d->setDocumentUsed = FALSE; if ( mediaPlayerState->playlist() ) { if( QFileInfo( lnk.file() ).exists() || lnk.file().left(4) == "http" ) d->selectedFiles->addToSelection( lnk ); - writeCurrentM3u(); +// writeCurrentM3u(); } else mediaPlayerState->setPlaying( TRUE ); } @@ -249,35 +251,39 @@ void PlayListWidget::playlistViewPressed( int mouse, QListViewItem *, const QPoi } } void PlayListWidget::addAllToList() { DocLnkSet filesAll; - Global::findDocuments(&filesAll, "video/*;audio/*"); + Global::findDocuments(&filesAll, "video/*;"+audioMimes); QListIterator<DocLnk> Adit( filesAll.children() ); for ( ; Adit.current(); ++Adit ) { if( QFileInfo( Adit.current()->file() ).exists() ) { d->selectedFiles->addToSelection( **Adit ); } } writeCurrentM3u(); } void PlayListWidget::addAllMusicToList() { + if(!audioScan) + scanForAudio(); QListIterator<DocLnk> dit( files.children() ); for ( ; dit.current(); ++dit ) { if( QFileInfo(dit.current()->file() ).exists() ) { d->selectedFiles->addToSelection( **dit ); } } writeCurrentM3u(); } void PlayListWidget::addAllVideoToList() { + if(!videoScan) + scanForVideo(); QListIterator<DocLnk> dit( vFiles.children() ); for ( ; dit.current(); ++dit ) { if( QFileInfo( dit.current()->file() ).exists() ) { d->selectedFiles->addToSelection( **dit ); } } @@ -303,12 +309,14 @@ void PlayListWidget::setDocument( const QString& fileref ) { readPls( fileref ); } else if( DocLnk( fileref).file().find( "pls", 0, TRUE) != -1 ) { readPls( DocLnk( fileref).file() ); } else { clearList(); addToSelection( DocLnk( fileref ) ); + writeCurrentM3u(); + d->setDocumentUsed = TRUE; mediaPlayerState->setPlaying( FALSE ); mediaPlayerState->setPlaying( TRUE ); } } @@ -609,13 +617,13 @@ void PlayListWidget::scanForAudio() { files.detachChildren(); QListIterator<DocLnk> sdit( files.children() ); for ( ; sdit.current(); ++sdit ) { delete sdit.current(); } // Global::findDocuments( &files, "audio/*"); - Global::findDocuments( &files, "audio/mpeg;audio/x-wav;audio/x-ogg"); + Global::findDocuments( &files, audioMimes); audioScan = TRUE; } void PlayListWidget::scanForVideo() { // qDebug("scan for video"); vFiles.detachChildren(); @@ -841,22 +849,23 @@ void PlayListWidget::readPls( const QString &filename ) { writes current playlist to current m3u file */ void PlayListWidget::writeCurrentM3u() { qDebug("writing to current m3u"); Config cfg( "OpiePlayer" ); cfg.setGroup("PlayList"); QString currentPlaylist = cfg.readEntry("CurrentPlaylist",""); - // int noOfFiles = cfg.readNumEntry("NumberOfFiles", 0 ); + Om3u *m3uList; m3uList = new Om3u( currentPlaylist, IO_ReadWrite |IO_Truncate ); d->selectedFiles->first(); - + qDebug( d->selectedFiles->current()->file()); do { + qDebug( d->selectedFiles->current()->file()); m3uList->add( d->selectedFiles->current()->file()); } while ( d->selectedFiles->next() ); -// qDebug( list ); + qDebug( "<<<<<<<<<<<<>>>>>>>>>>>>>>>>>" ); m3uList->write(); m3uList->close(); if(m3uList) delete m3uList; } |