-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayerstate.cpp | 3 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayerstate.h | 1 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 92 |
3 files changed, 35 insertions, 61 deletions
diff --git a/noncore/multimedia/opieplayer2/mediaplayerstate.cpp b/noncore/multimedia/opieplayer2/mediaplayerstate.cpp index 43040c2..586870c 100644 --- a/noncore/multimedia/opieplayer2/mediaplayerstate.cpp +++ b/noncore/multimedia/opieplayer2/mediaplayerstate.cpp | |||
@@ -65,11 +65,9 @@ void MediaPlayerState::readConfig( Config& cfg ) { | |||
65 | fullscreen = cfg.readBoolEntry( "FullScreen" ); | 65 | fullscreen = cfg.readBoolEntry( "FullScreen" ); |
66 | scaled = cfg.readBoolEntry( "Scaling" ); | 66 | scaled = cfg.readBoolEntry( "Scaling" ); |
67 | looping = cfg.readBoolEntry( "Looping" ); | 67 | looping = cfg.readBoolEntry( "Looping" ); |
68 | shuffled = cfg.readBoolEntry( "Shuffle" ); | 68 | shuffled = cfg.readBoolEntry( "Shuffle" ); |
69 | usePlaylist = cfg.readBoolEntry( "UsePlayList" ); | ||
70 | videoGamma = cfg.readNumEntry( "VideoGamma" ); | 69 | videoGamma = cfg.readNumEntry( "VideoGamma" ); |
71 | usePlaylist = TRUE; | ||
72 | playing = FALSE; | 70 | playing = FALSE; |
73 | streaming = FALSE; | 71 | streaming = FALSE; |
74 | paused = FALSE; | 72 | paused = FALSE; |
75 | curPosition = 0; | 73 | curPosition = 0; |
@@ -83,9 +81,8 @@ void MediaPlayerState::writeConfig( Config& cfg ) const { | |||
83 | cfg.writeEntry( "FullScreen", fullscreen ); | 81 | cfg.writeEntry( "FullScreen", fullscreen ); |
84 | cfg.writeEntry( "Scaling", scaled ); | 82 | cfg.writeEntry( "Scaling", scaled ); |
85 | cfg.writeEntry( "Looping", looping ); | 83 | cfg.writeEntry( "Looping", looping ); |
86 | cfg.writeEntry( "Shuffle", shuffled ); | 84 | cfg.writeEntry( "Shuffle", shuffled ); |
87 | cfg.writeEntry( "UsePlayList", usePlaylist ); | ||
88 | cfg.writeEntry( "VideoGamma", videoGamma ); | 85 | cfg.writeEntry( "VideoGamma", videoGamma ); |
89 | } | 86 | } |
90 | 87 | ||
91 | // slots | 88 | // slots |
diff --git a/noncore/multimedia/opieplayer2/mediaplayerstate.h b/noncore/multimedia/opieplayer2/mediaplayerstate.h index 7a80ad8..fc4e6cb 100644 --- a/noncore/multimedia/opieplayer2/mediaplayerstate.h +++ b/noncore/multimedia/opieplayer2/mediaplayerstate.h | |||
@@ -55,9 +55,8 @@ public: | |||
55 | bool isFullscreen() const { return fullscreen; } | 55 | bool isFullscreen() const { return fullscreen; } |
56 | bool isScaled() const { return scaled; } | 56 | bool isScaled() const { return scaled; } |
57 | bool isLooping() const { return looping; } | 57 | bool isLooping() const { return looping; } |
58 | bool isShuffled() const { return shuffled; } | 58 | bool isShuffled() const { return shuffled; } |
59 | bool isUsingPlaylist() const { return usePlaylist; } | ||
60 | bool isPaused() const { return paused; } | 59 | bool isPaused() const { return paused; } |
61 | bool isPlaying() const { return playing; } | 60 | bool isPlaying() const { return playing; } |
62 | bool isStopped() const { return stopped; } | 61 | bool isStopped() const { return stopped; } |
63 | long position() const { return curPosition; } | 62 | long position() const { return curPosition; } |
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index 5b277cc..f53def6 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp | |||
@@ -204,17 +204,13 @@ void PlayListWidget::writeDefaultPlaylist() { | |||
204 | } | 204 | } |
205 | 205 | ||
206 | void PlayListWidget::addToSelection( const DocLnk& lnk ) { | 206 | void PlayListWidget::addToSelection( const DocLnk& lnk ) { |
207 | d->setDocumentUsed = FALSE; | 207 | d->setDocumentUsed = FALSE; |
208 | if ( mediaPlayerState->isUsingPlaylist() ) { | 208 | if( QFileInfo( lnk.file() ).exists() || |
209 | if( QFileInfo( lnk.file() ).exists() || | 209 | lnk.file().left(4) == "http" ) { |
210 | lnk.file().left(4) == "http" ) { | 210 | d->selectedFiles->addToSelection( lnk ); |
211 | d->selectedFiles->addToSelection( lnk ); | ||
212 | } | ||
213 | // writeCurrentM3u(); | ||
214 | } | 211 | } |
215 | else | 212 | // writeCurrentM3u(); |
216 | mediaPlayerState->setPlaying( TRUE ); | ||
217 | } | 213 | } |
218 | 214 | ||
219 | 215 | ||
220 | void PlayListWidget::clearList() { | 216 | void PlayListWidget::clearList() { |
@@ -421,80 +417,62 @@ void PlayListWidget::useSelectedDocument() { | |||
421 | 417 | ||
422 | const DocLnk *PlayListWidget::current() const { // this is fugly | 418 | const DocLnk *PlayListWidget::current() const { // this is fugly |
423 | assert( currentTab() == CurrentPlayList ); | 419 | assert( currentTab() == CurrentPlayList ); |
424 | 420 | ||
425 | // qDebug("playlist"); | 421 | return d->selectedFiles->current(); |
426 | if ( mediaPlayerState->isUsingPlaylist() ) | ||
427 | return d->selectedFiles->current(); | ||
428 | |||
429 | assert( false ); | ||
430 | } | 422 | } |
431 | 423 | ||
432 | 424 | ||
433 | bool PlayListWidget::prev() { | 425 | bool PlayListWidget::prev() { |
434 | if ( mediaPlayerState->isUsingPlaylist() ) { | 426 | if ( mediaPlayerState->isShuffled() ) { |
435 | if ( mediaPlayerState->isShuffled() ) { | 427 | const DocLnk *cur = current(); |
436 | const DocLnk *cur = current(); | 428 | int j = 1 + (int)(97.0 * rand() / (RAND_MAX + 1.0)); |
437 | int j = 1 + (int)(97.0 * rand() / (RAND_MAX + 1.0)); | 429 | for ( int i = 0; i < j; i++ ) { |
438 | for ( int i = 0; i < j; i++ ) { | 430 | if ( !d->selectedFiles->next() ) |
439 | if ( !d->selectedFiles->next() ) | 431 | d->selectedFiles->first(); |
440 | d->selectedFiles->first(); | 432 | } |
433 | if ( cur == current() ) | ||
434 | if ( !d->selectedFiles->next() ) { | ||
435 | d->selectedFiles->first(); | ||
441 | } | 436 | } |
442 | if ( cur == current() ) | 437 | return TRUE; |
443 | if ( !d->selectedFiles->next() ) { | 438 | } else { |
444 | d->selectedFiles->first(); | 439 | if ( !d->selectedFiles->prev() ) { |
445 | } | 440 | if ( mediaPlayerState->isLooping() ) { |
446 | return TRUE; | 441 | return d->selectedFiles->last(); |
447 | } else { | 442 | } else { |
448 | if ( !d->selectedFiles->prev() ) { | 443 | return FALSE; |
449 | if ( mediaPlayerState->isLooping() ) { | ||
450 | return d->selectedFiles->last(); | ||
451 | } else { | ||
452 | return FALSE; | ||
453 | } | ||
454 | } | 444 | } |
455 | return TRUE; | ||
456 | } | 445 | } |
457 | } else { | 446 | return TRUE; |
458 | return mediaPlayerState->isLooping(); | 447 | } |
459 | } | ||
460 | } | 448 | } |
461 | 449 | ||
462 | 450 | ||
463 | bool PlayListWidget::next() { | 451 | bool PlayListWidget::next() { |
464 | //qDebug("<<<<<<<<<<<<next()"); | 452 | //qDebug("<<<<<<<<<<<<next()"); |
465 | if ( mediaPlayerState->isUsingPlaylist() ) { | 453 | if ( mediaPlayerState->isShuffled() ) { |
466 | if ( mediaPlayerState->isShuffled() ) { | 454 | return prev(); |
467 | return prev(); | 455 | } else { |
468 | } else { | 456 | if ( !d->selectedFiles->next() ) { |
469 | if ( !d->selectedFiles->next() ) { | 457 | if ( mediaPlayerState->isLooping() ) { |
470 | if ( mediaPlayerState->isLooping() ) { | 458 | return d->selectedFiles->first(); |
471 | return d->selectedFiles->first(); | 459 | } else { |
472 | } else { | 460 | return FALSE; |
473 | return FALSE; | ||
474 | } | ||
475 | } | 461 | } |
476 | return TRUE; | ||
477 | } | 462 | } |
478 | } else { | 463 | return TRUE; |
479 | return mediaPlayerState->isLooping(); | ||
480 | } | 464 | } |
481 | } | 465 | } |
482 | 466 | ||
483 | 467 | ||
484 | bool PlayListWidget::first() { | 468 | bool PlayListWidget::first() { |
485 | if ( mediaPlayerState->isUsingPlaylist() ) | 469 | return d->selectedFiles->first(); |
486 | return d->selectedFiles->first(); | ||
487 | else | ||
488 | return mediaPlayerState->isLooping(); | ||
489 | } | 470 | } |
490 | 471 | ||
491 | 472 | ||
492 | bool PlayListWidget::last() { | 473 | bool PlayListWidget::last() { |
493 | if ( mediaPlayerState->isUsingPlaylist() ) | 474 | return d->selectedFiles->last(); |
494 | return d->selectedFiles->last(); | ||
495 | else | ||
496 | return mediaPlayerState->isLooping(); | ||
497 | } | 475 | } |
498 | 476 | ||
499 | 477 | ||
500 | void PlayListWidget::saveList() { | 478 | void PlayListWidget::saveList() { |