Diffstat (limited to 'noncore/multimedia/opieplayer2/playlistwidget.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 56 |
1 files changed, 45 insertions, 11 deletions
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index 5f4159c..83eb83b 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp @@ -179,8 +179,40 @@ void PlayListWidget::initializeStates() { d->tbShuffle->setOn( mediaPlayerState->isShuffled() ); d->playListFrame->show(); } +void PlayListWidget::setButtons(void) { + bool hasitem; + + switch ( currentTab() ) { + case CurrentPlayList: + { + hasitem = !d->selectedFiles->isEmpty(); + d->tbPlay->setEnabled( hasitem ); + d->tbRemoveFromList->setEnabled( hasitem ); + } + break; + case AudioFiles: + { + d->tbPlay->setEnabled( audioView->hasSelection() ); + d->tbRemoveFromList->setEnabled( false ); + } + break; + case VideoFiles: + { + d->tbPlay->setEnabled( videoView->hasSelection() ); + d->tbRemoveFromList->setEnabled( false ); + } + break; + case PlayLists: + { + d->tbPlay->setEnabled( false ); + d->tbRemoveFromList->setEnabled( false ); + } + break; + }; +} + void PlayListWidget::writeDefaultPlaylist() { Config config( "OpiePlayer" ); config.setGroup( "PlayList" ); @@ -219,8 +251,9 @@ void PlayListWidget::clearList() { Config cfg( "OpiePlayer" ); cfg.setGroup("PlayList"); cfg.writeEntry("CurrentPlaylist","default"); setCaption("OpiePlayer"); + setButtons(); } void PlayListWidget::viewPressed( int mouse, QListViewItem *, const QPoint& , int) { switch (mouse) { @@ -283,8 +316,10 @@ void PlayListWidget::addAllToList() { tabWidget->setCurrentPage(0); writeCurrentM3u(); d->selectedFiles->first(); + + setButtons(); } void PlayListWidget::addAllMusicToList() { @@ -304,8 +339,10 @@ void PlayListWidget::addAllMusicToList() { tabWidget->setCurrentPage(0); writeCurrentM3u(); d->selectedFiles->first(); + + setButtons(); } void PlayListWidget::addAllVideoToList() { @@ -323,8 +360,10 @@ void PlayListWidget::addAllVideoToList() { } tabWidget->setCurrentPage(0); writeCurrentM3u(); d->selectedFiles->first(); + + setButtons(); } void PlayListWidget::setDocument( const QString& _fileref ) { @@ -475,8 +514,9 @@ void PlayListWidget::addSelected() { void PlayListWidget::removeSelected() { d->selectedFiles->removeSelected( ); writeCurrentM3u(); + setButtons(); } void PlayListWidget::playIt( QListViewItem *it) { @@ -509,10 +549,8 @@ void PlayListWidget::addToSelection( QListViewItem *it) { void PlayListWidget::tabChanged(QWidget *) { - d->tbPlay->setEnabled( true ); - disconnect( audioView, SIGNAL( itemsSelected(bool) ), d->tbPlay, SLOT( setEnabled(bool) ) ); disconnect( videoView, SIGNAL( itemsSelected(bool) ), d->tbPlay, SLOT( setEnabled(bool) ) ); @@ -524,12 +562,10 @@ void PlayListWidget::tabChanged(QWidget *) { { if( !tbDeletePlaylist->isHidden() ) { tbDeletePlaylist->hide(); } - d->tbRemoveFromList->setEnabled(TRUE); d->tbAddToList->setEnabled(FALSE); - d->tbPlay->setEnabled( !d->selectedFiles->isEmpty() ); } break; case AudioFiles: { @@ -537,16 +573,13 @@ void PlayListWidget::tabChanged(QWidget *) { if( !tbDeletePlaylist->isHidden() ) { tbDeletePlaylist->hide(); } - d->tbRemoveFromList->setEnabled(FALSE); d->tbAddToList->setEnabled(TRUE); connect( audioView, SIGNAL( itemsSelected(bool) ), d->tbPlay, SLOT( setEnabled(bool) ) ); - d->tbPlay->setEnabled( audioView->hasSelection() ); - currentFileListView = audioView; } break; case VideoFiles: @@ -554,16 +587,13 @@ void PlayListWidget::tabChanged(QWidget *) { videoView->populateView(); if( !tbDeletePlaylist->isHidden() ) { tbDeletePlaylist->hide(); } - d->tbRemoveFromList->setEnabled(FALSE); d->tbAddToList->setEnabled(TRUE); connect( videoView, SIGNAL( itemsSelected(bool) ), d->tbPlay, SLOT( setEnabled(bool) ) ); - d->tbPlay->setEnabled( videoView->hasSelection() ); - currentFileListView = videoView; } break; case PlayLists: @@ -573,12 +603,13 @@ void PlayListWidget::tabChanged(QWidget *) { } playLists->reread(); d->tbAddToList->setEnabled(FALSE); - d->tbPlay->setEnabled( false ); } break; }; + + setButtons(); } void PlayListWidget::btnPlay(bool b) { @@ -709,8 +740,10 @@ void PlayListWidget::openFile() { QFileInfo info( str ); DocLnk lnk = addFileToPlaylist( str, info.baseName() ); d->selectedFiles->setSelectedItem( lnk.name() ); } + + setButtons(); } void PlayListWidget::openDirectory() { QString str = OFileDialog::getDirectory( OFileSelector::DirectorySelector, @@ -778,8 +811,9 @@ void PlayListWidget::readListFromFile( const QString &filename ) { d->selectedFiles->setSelectedItem( s); setCaption(tr("OpiePlayer: ")+ QFileInfo(filename).baseName()); + setButtons(); } // writes current playlist to current m3u file */ void PlayListWidget::writeCurrentM3u() { |