summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayerstate.cpp3
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayerstate.h1
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp92
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
206void PlayListWidget::addToSelection( const DocLnk& lnk ) { 206void 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
220void PlayListWidget::clearList() { 216void PlayListWidget::clearList() {
@@ -421,80 +417,62 @@ void PlayListWidget::useSelectedDocument() {
421 417
422const DocLnk *PlayListWidget::current() const { // this is fugly 418const 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
433bool PlayListWidget::prev() { 425bool 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
463bool PlayListWidget::next() { 451bool 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
484bool PlayListWidget::first() { 468bool 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
492bool PlayListWidget::last() { 473bool 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() {