static void startPlayback(void) { if (!checkStorageGroup() || !checkMusicAvailable()) return; gMusicData->loadMusic(); MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack(); PlaylistView *view = new PlaylistView(mainStack, NULL); if (view->Create()) mainStack->AddScreen(view); else delete view; }
FlexibleView* ViewManager::createPageForPlaylist( const playlist_ptr& playlist ) { FlexibleView* view = new FlexibleView(); PlaylistModel* model = new PlaylistModel(); PlaylistView* pv = new PlaylistView(); pv->setPlaylistModel( model ); view->setDetailedView( pv ); view->setPixmap( pv->pixmap() ); model->loadPlaylist( playlist ); view->setPlayableModel( model ); playlist->resolve(); return view; }
FlexibleView* ViewManager::createPageForPlaylist( const playlist_ptr& playlist ) { FlexibleView* view = new FlexibleView(); PlaylistModel* model = new PlaylistModel(); PlaylistView* pv = new PlaylistView(); view->setDetailedView( pv ); view->setPixmap( pv->pixmap() ); // We need to set the model on the view before loading the playlist, so spinners & co are connected view->setPlaylistModel( model ); pv->setPlaylistModel( model ); model->loadPlaylist( playlist ); playlist->resolve(); return view; }
FlexibleView* ViewManager::createPageForList( const QString& title, const QList< query_ptr >& queries ) { FlexibleView* view = new FlexibleView(); PlaylistModel* model = new PlaylistModel(); PlaylistView* pv = new PlaylistView(); view->setDetailedView( pv ); view->setPixmap( pv->pixmap() ); view->setTemporaryPage( true ); // We need to set the model on the view before loading the playlist, so spinners & co are connected view->setPlaylistModel( model ); pv->setPlaylistModel( model ); model->setTitle( title ); model->appendQueries( queries ); return view; }
Tomahawk::ViewPage* ViewManager::showRecentPlaysPage() { if ( !m_recentPlaysWidget ) { PlaylistView* pv = new PlaylistView( m_widget ); pv->setFrameShape( QFrame::NoFrame ); pv->setAttribute( Qt::WA_MacShowFocusRect, 0 ); RecentlyPlayedModel* raModel = new RecentlyPlayedModel( source_ptr(), pv ); raModel->setStyle( TrackModel::Large ); pv->setItemDelegate( new PlaylistLargeItemDelegate( PlaylistLargeItemDelegate::RecentlyPlayed, pv, pv->proxyModel() ) ); pv->setPlaylistModel( raModel ); m_recentPlaysWidget = pv; } return show( m_recentPlaysWidget ); }
Tomahawk::ViewPage* ViewManager::showRecentPlaysPage() { if ( !m_recentPlaysWidget ) { PlaylistView* pv = new PlaylistView( m_widget ); RecentlyPlayedModel* raModel = new RecentlyPlayedModel( source_ptr(), pv ); raModel->setTitle( tr( "Recently Played Tracks" ) ); raModel->setDescription( tr( "Recently played tracks from all your friends" ) ); raModel->setStyle( PlayableModel::Large ); PlaylistLargeItemDelegate* del = new PlaylistLargeItemDelegate( PlaylistLargeItemDelegate::RecentlyPlayed, pv, pv->proxyModel() ); connect( del, SIGNAL( updateIndex( QModelIndex ) ), pv, SLOT( update( QModelIndex ) ) ); pv->setItemDelegate( del ); pv->setPlaylistModel( raModel ); m_recentPlaysWidget = pv; } return show( m_recentPlaysWidget ); }