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->setTitle( tr( "Recently Played Tracks" ) ); raModel->setDescription( tr( "Recently played tracks from all your friends" ) ); raModel->setStyle( TrackModel::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 ); }
PlaylistView* ViewManager::createPageForPlaylist( const playlist_ptr& pl ) { PlaylistView* view = new PlaylistView(); PlaylistModel* model = new PlaylistModel(); view->setPlaylistModel( model ); model->loadPlaylist( pl ); pl->resolve(); m_playlistViews.insert( pl, view ); return view; }
PlaylistView* ViewManager::createPageForPlaylist( const playlist_ptr& pl ) { PlaylistView* view = new PlaylistView(); PlaylistModel* model = new PlaylistModel(); view->setPlaylistModel( model ); model->loadPlaylist( pl ); view->setFrameShape( QFrame::NoFrame ); view->setAttribute( Qt::WA_MacShowFocusRect, 0 ); pl->resolve(); m_playlistViews.insert( pl, view ); return 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 ); }