1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-11 16:44:05 +02:00

Integrate Loved Tracks into NetworkActivity

This commit is contained in:
Uwe L. Korn
2013-07-31 21:18:43 +02:00
parent 387091e198
commit 866a9b148f

View File

@@ -23,6 +23,8 @@
#include "database/DatabaseCommand_NetworkCharts.h" #include "database/DatabaseCommand_NetworkCharts.h"
#include "database/DatabaseCommand_TrendingTracks.h" #include "database/DatabaseCommand_TrendingTracks.h"
#include "playlist/AlbumItemDelegate.h" #include "playlist/AlbumItemDelegate.h"
#include "playlist/RecentlyLovedTracksModel.h"
#include "playlist/TopLovedTracksModel.h"
#include "playlist/TreeProxyModel.h" #include "playlist/TreeProxyModel.h"
#include "playlist/ViewHeader.h" #include "playlist/ViewHeader.h"
#include "utils/AnimatedSpinner.h" #include "utils/AnimatedSpinner.h"
@@ -89,7 +91,7 @@ NetworkActivityWidget::NetworkActivityWidget( QWidget* parent )
topItem->setData( TopLoved, Breadcrumb::DefaultRole ); topItem->setData( TopLoved, Breadcrumb::DefaultRole );
lovedItem->appendRow( topItem ); lovedItem->appendRow( topItem );
QStandardItem* recentlyItem = new QStandardItem( tr( "Recently Loved" ) ); QStandardItem* recentlyItem = new QStandardItem( tr( "Recently Loved" ) );
recentlyItem->setData( TopLoved, Breadcrumb::DefaultRole ); recentlyItem->setData( RecentlyLoved, Breadcrumb::DefaultRole );
lovedItem->appendRow( recentlyItem ); lovedItem->appendRow( recentlyItem );
} }
d->sortedProxy->setSourceModel( d->crumbModelLeft ); d->sortedProxy->setSourceModel( d->crumbModelLeft );
@@ -427,8 +429,10 @@ NetworkActivityWidget::leftCrumbIndexChanged( const QModelIndex& index )
showOverallCharts(); showOverallCharts();
break; break;
case TopLoved: case TopLoved:
showTopLoved();
break; break;
case RecentlyLoved: case RecentlyLoved:
showRecentlyLoved();
break; break;
} }
} }
@@ -557,3 +561,40 @@ NetworkActivityWidget::showOverallCharts()
fetchOverallCharts(); fetchOverallCharts();
} }
} }
void
NetworkActivityWidget::showTopLoved()
{
Q_D( NetworkActivityWidget );
d->activeView = TopLoved;
if ( d->topLovedModel.isNull() )
{
TopLovedTracksModel* model = new TopLovedTracksModel( this );
model->setLimit( numberOfNetworkChartEntries );
model->setSource( source_ptr() );
d->topLovedModel = model;
}
d->ui->tracksViewLeft->setPlaylistModel( d->topLovedModel );
d->ui->tracksViewLeft->setAutoResize( true );
}
void
NetworkActivityWidget::showRecentlyLoved()
{
Q_D( NetworkActivityWidget );
d->activeView = RecentlyLoved;
if ( d->recentlyLovedModel.isNull() )
{
RecentlyLovedTracksModel* model = new RecentlyLovedTracksModel( this );
model->setLimit( numberOfNetworkChartEntries );
model->setSource( source_ptr() );
d->recentlyLovedModel = model;
}
d->ui->tracksViewLeft->setPlaylistModel( d->recentlyLovedModel );
d->ui->tracksViewLeft->setAutoResize( true );
}