-rw-r--r-- | core/multimedia/opieplayer/playlistwidget.cpp | 33 | ||||
-rw-r--r-- | core/multimedia/opieplayer/playlistwidget.h | 1 |
2 files changed, 23 insertions, 11 deletions
diff --git a/core/multimedia/opieplayer/playlistwidget.cpp b/core/multimedia/opieplayer/playlistwidget.cpp index c6de5e6..5d0f6de 100644 --- a/core/multimedia/opieplayer/playlistwidget.cpp +++ b/core/multimedia/opieplayer/playlistwidget.cpp @@ -358,26 +358,27 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl ) Config cfg( "OpiePlayer" ); readConfig( cfg ); QString currentPlaylist = cfg.readEntry("CurrentPlaylist","default"); loadList(DocLnk( currentPlaylist)); setCaption(tr("OpiePlayer: ")+ fullBaseName ( QFileInfo(currentPlaylist))); initializeStates(); + // audioUI->setFocus(); } PlayListWidget::~PlayListWidget() { Config cfg( "OpiePlayer" ); writeConfig( cfg ); if ( d->current ) delete d->current; - delete d; + if(d) delete d; } void PlayListWidget::initializeStates() { d->tbPlay->setOn( mediaPlayerState->playing() ); d->tbLoop->setOn( mediaPlayerState->looping() ); d->tbShuffle->setOn( mediaPlayerState->shuffled() ); @@ -489,25 +490,32 @@ void PlayListWidget::addAllVideoToList() { tabWidget->setCurrentPage(0); writeCurrentM3u(); d->selectedFiles->first(); } void PlayListWidget::setDocument(const QString& fileref) { - qDebug(fileref); - fromSetDocument = TRUE; + fromSetDocument = true; + d->setDocumentUsed = TRUE; + mediaPlayerState->setPlaying( FALSE ); + qApp->processEvents(); + mediaPlayerState->setPlaying( TRUE ); +} + +void PlayListWidget::setDocumentEx(const QString& fileref) { + QFileInfo fileInfo(fileref); if ( !fileInfo.exists() ) { QMessageBox::critical( 0, tr( "Invalid File" ), tr( "There was a problem in getting the file." ) ); return; } -// qDebug("setDocument "+fileref); + qDebug("setDocument "+fileref); QString extension = fileInfo.extension(false); if( extension.find( "m3u", 0, false) != -1) { //is m3u readm3u( fileref); } else if( extension.find( "pls", 0, false) != -1 ) { //is pls readPls( fileref); } else if( fileref.find("playlist",0,TRUE) != -1) {//is playlist @@ -525,17 +533,17 @@ void PlayListWidget::setDocument(const QString& fileref) { lnk.setName( fileInfo.baseName() ); //sets name lnk.setFile( fileref ); //sets file name addToSelection( lnk ); // addToSelection( DocLnk( fileref ) ); d->setDocumentUsed = TRUE; mediaPlayerState->setPlaying( FALSE ); qApp->processEvents(); mediaPlayerState->setPlaying( TRUE ); - qApp->processEvents(); + // qApp->processEvents(); setCaption(tr("OpiePlayer")); } } void PlayListWidget::setActiveWindow() { qDebug("SETTING active window"); @@ -754,17 +762,17 @@ void PlayListWidget::addSelected() { void PlayListWidget::removeSelected() { d->selectedFiles->removeSelected( ); } void PlayListWidget::playIt( QListViewItem *) { // d->setDocumentUsed = FALSE; // mediaPlayerState->curPosition =0; qDebug("playIt"); - mediaPlayerState->setPlaying(FALSE); + // mediaPlayerState->setPlaying(FALSE); mediaPlayerState->setPlaying(TRUE); d->selectedFiles->unSelect(); } void PlayListWidget::addToSelection( QListViewItem *it) { d->setDocumentUsed = FALSE; if(it) { @@ -777,16 +785,17 @@ void PlayListWidget::addToSelection( QListViewItem *it) { DocLnk lnk; QString filename; filename=it->text(3); lnk.setName( fullBaseName ( QFileInfo(filename)) ); //sets name lnk.setFile( filename ); //sets file name d->selectedFiles->addToSelection( lnk); + if(tabWidget->currentPageIndex() == 0) writeCurrentM3u(); // tabWidget->setCurrentPage(0); } } void PlayListWidget::tabChanged(QWidget *) { @@ -826,17 +835,17 @@ void PlayListWidget::tabChanged(QWidget *) { tbDeletePlaylist->show(); playLists->reread(); } break; }; } void PlayListWidget::btnPlay(bool b) { - qDebug("<<<<<<<<<<<<<<<BtnPlay"); + qDebug("<<<<<<<<<<<<<<<BtnPlay %d", b); // mediaPlayerState->setPlaying(b); switch ( tabWidget->currentPageIndex()) { case 0: { qDebug("1"); // if( d->selectedFiles->current()->file().find(" ",0,TRUE) != -1 // if( d->selectedFiles->current()->file().find("%20",0,TRUE) != -1) { // QMessageBox::message("Note","You are trying to play\na malformed url."); @@ -847,29 +856,29 @@ void PlayListWidget::btnPlay(bool b) { // } } break; case 1: { qDebug("2"); // d->selectedFiles->unSelect(); addToSelection( audioView->currentItem() ); - mediaPlayerState->setPlaying(true); + mediaPlayerState->setPlaying( b); d->selectedFiles->removeSelected( ); d->selectedFiles->unSelect(); tabWidget->setCurrentPage(1); insanityBool=FALSE; }// audioView->clearSelection(); break; case 2: { qDebug("3"); addToSelection( videoView->currentItem() ); - mediaPlayerState->setPlaying(true); + mediaPlayerState->setPlaying( b); // qApp->processEvents(); d->selectedFiles->removeSelected( ); d->selectedFiles->unSelect(); tabWidget->setCurrentPage(2); insanityBool=FALSE; }// videoView->clearSelection(); break; }; @@ -1454,41 +1463,43 @@ void PlayListWidget::qcopReceive(const QCString &msg, const QByteArray &data) { qDebug("qcop message "+msg ); QDataStream stream ( data, IO_ReadOnly ); if ( msg == "play()" ) { //plays current selection btnPlay( true); } else if ( msg == "stop()" ) { mediaPlayerState->setPlaying( false); } else if ( msg == "togglePause()" ) { mediaPlayerState->togglePaused(); - } else if ( msg == "next()" ) { //select next in list + } else if ( msg == "next()" ) { //select next in lis mediaPlayerState->setNext(); } else if ( msg == "prev()" ) { //select previous in list mediaPlayerState->setPrev(); } else if ( msg == "toggleLooping()" ) { //loop or not loop mediaPlayerState->toggleLooping(); } else if ( msg == "toggleShuffled()" ) { //shuffled or not shuffled mediaPlayerState->toggleShuffled(); } else if ( msg == "volUp()" ) { //volume more // emit moreClicked(); // emit moreReleased(); } else if ( msg == "volDown()" ) { //volume less // emit lessClicked(); // emit lessReleased(); } else if ( msg == "play(QString)" ) { //play this now QString file; stream >> file; - setDocument( (const QString &) file); + setDocumentEx( (const QString &) file); } else if ( msg == "add(QString)" ) { //add to playlist QString file; stream >> file; QFileInfo fileInfo(file); DocLnk lnk; lnk.setName( fileInfo.baseName() ); //sets name lnk.setFile( file ); //sets file name addToSelection( lnk ); } else if ( msg == "rem(QString)" ) { //remove from playlist QString file; stream >> file; + } else if ( msg == "setDocument(QString)" ) { //loop or not loop + QCopEnvelope h("QPE/Application/opieplayer", "raise()"); } } diff --git a/core/multimedia/opieplayer/playlistwidget.h b/core/multimedia/opieplayer/playlistwidget.h index e66bcb9..0c0e367 100644 --- a/core/multimedia/opieplayer/playlistwidget.h +++ b/core/multimedia/opieplayer/playlistwidget.h @@ -97,16 +97,17 @@ private slots: void populateSkinsMenu(); void skinsMenuActivated(int); void writem3u(); void writeCurrentM3u(); void scanForAudio(); void scanForVideo(); void openFile(); void setDocument( const QString& fileref ); + void setDocumentEx( const QString& fileref ); void addToSelection( const DocLnk& ); // Add a media file to the playlist void addToSelection( QListViewItem* ); // Add a media file to the playlist void setActiveWindow(); // need to handle this to show the right view void setPlaylist( bool ); // Show/Hide the playlist void setView( char ); void clearList(); void addAllToList(); void addAllMusicToList(); |