void PlaylistDialog::o_downBClicked() { timer->stop(); Playlist* pList = Playlist::get_instance(); QTreeWidget* m_pPlaylist = m_pPlaylistTree; int length = m_pPlaylist->topLevelItemCount(); QTreeWidgetItem* m_pPlaylistItem = m_pPlaylistTree->currentItem(); int index = m_pPlaylist->indexOfTopLevelItem ( m_pPlaylistItem ); if ( index == length - 1){ timer->start( 1000 ); return; } QTreeWidgetItem* tmpPlaylistItem = m_pPlaylist->takeTopLevelItem ( index ); m_pPlaylist->insertTopLevelItem ( index +1, tmpPlaylistItem ); m_pPlaylist->setCurrentItem ( tmpPlaylistItem ); if ( pList->getSelectedSongNr() >= 0 ) pList->setSelectedSongNr( pList->getSelectedSongNr() +1 ); if (pList ->getActiveSongNumber() == index ){ pList->setActiveSongNumber( pList->getActiveSongNumber() +1 ); }else if ( pList->getActiveSongNumber() == index +1 ){ pList->setActiveSongNumber( pList->getActiveSongNumber() -1 ); } updatePlayListVector(); }
void PlaylistDialog::o_upBClicked() { timer->stop(); Playlist* pPlaylist = Playlist::get_instance(); QTreeWidget* pPlaylistTree = m_pPlaylistTree; QTreeWidgetItem* pPlaylistTreeItem = m_pPlaylistTree->currentItem(); int index = pPlaylistTree->indexOfTopLevelItem ( pPlaylistTreeItem ); if (index == 0 ){ timer->start( 1000 ); return; } QTreeWidgetItem* tmpPlaylistItem = pPlaylistTree->takeTopLevelItem ( index ); pPlaylistTree->insertTopLevelItem ( index -1, tmpPlaylistItem ); pPlaylistTree->setCurrentItem ( tmpPlaylistItem ); if ( pPlaylist->getSelectedSongNr() >= 0 ){ pPlaylist->setSelectedSongNr( pPlaylist->getSelectedSongNr() -1 ); } if ( pPlaylist->getActiveSongNumber() == index ){ pPlaylist->setActiveSongNumber( pPlaylist->getActiveSongNumber() -1 ); }else if ( pPlaylist->getActiveSongNumber() == index -1 ){ pPlaylist->setActiveSongNumber( pPlaylist->getActiveSongNumber() +1 ); } updatePlayListVector(); }