mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-06 14:16:32 +02:00
* Display track charts as a Grid.
This commit is contained in:
@@ -74,15 +74,12 @@ ChartsWidget::ChartsWidget( QWidget* parent )
|
|||||||
ui->breadCrumbLeft->setRootIcon( TomahawkUtils::defaultPixmap( TomahawkUtils::Charts, TomahawkUtils::Original ) );
|
ui->breadCrumbLeft->setRootIcon( TomahawkUtils::defaultPixmap( TomahawkUtils::Charts, TomahawkUtils::Original ) );
|
||||||
connect( ui->breadCrumbLeft, SIGNAL( activateIndex( QModelIndex ) ), SLOT( leftCrumbIndexChanged( QModelIndex ) ) );
|
connect( ui->breadCrumbLeft, SIGNAL( activateIndex( QModelIndex ) ), SLOT( leftCrumbIndexChanged( QModelIndex ) ) );
|
||||||
|
|
||||||
ui->tracksViewLeft->setHeaderHidden( true );
|
ui->artistsView->setItemSize( TomahawkUtils::DpiScaler::scaled( this, QSize( 190, 190 + 38 ) ) );
|
||||||
ui->tracksViewLeft->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
ui->albumsView->setItemSize( TomahawkUtils::DpiScaler::scaled( this, QSize( 190, 190 + 56 ) ) );
|
||||||
PlaylistChartItemDelegate* del = new PlaylistChartItemDelegate( ui->tracksViewLeft, ui->tracksViewLeft->proxyModel() );
|
ui->tracksView->setItemSize( TomahawkUtils::DpiScaler::scaled( this, QSize( 190, 190 + 56 ) ) );
|
||||||
ui->tracksViewLeft->setPlaylistItemDelegate( del );
|
|
||||||
ui->tracksViewLeft->setUniformRowHeights( false );
|
|
||||||
|
|
||||||
ui->artistsView->setItemSize( TomahawkUtils::DpiScaler::scaled( this, QSize( 170, 170 + 38 ) ) );
|
|
||||||
ui->artistsView->delegate()->setShowPosition( true );
|
ui->artistsView->delegate()->setShowPosition( true );
|
||||||
ui->albumsView->delegate()->setShowPosition( true );
|
ui->albumsView->delegate()->setShowPosition( true );
|
||||||
|
ui->tracksView->delegate()->setShowPosition( true );
|
||||||
|
|
||||||
m_workerThread = new QThread( this );
|
m_workerThread = new QThread( this );
|
||||||
m_workerThread->start();
|
m_workerThread->start();
|
||||||
@@ -98,7 +95,7 @@ ChartsWidget::ChartsWidget( QWidget* parent )
|
|||||||
tDebug( LOGVERBOSE ) << "Reloading last chartIds:" << m_currentVIds;
|
tDebug( LOGVERBOSE ) << "Reloading last chartIds:" << m_currentVIds;
|
||||||
|
|
||||||
MetaPlaylistInterface* mpl = new MetaPlaylistInterface();
|
MetaPlaylistInterface* mpl = new MetaPlaylistInterface();
|
||||||
mpl->addChildInterface( ui->tracksViewLeft->playlistInterface() );
|
mpl->addChildInterface( ui->tracksView->playlistInterface() );
|
||||||
mpl->addChildInterface( ui->artistsView->playlistInterface() );
|
mpl->addChildInterface( ui->artistsView->playlistInterface() );
|
||||||
mpl->addChildInterface( ui->albumsView->playlistInterface() );
|
mpl->addChildInterface( ui->albumsView->playlistInterface() );
|
||||||
m_playlistInterface = playlistinterface_ptr( mpl );
|
m_playlistInterface = playlistinterface_ptr( mpl );
|
||||||
@@ -149,7 +146,7 @@ ChartsWidget::jumpToCurrentTrack()
|
|||||||
if ( ui->artistsView->model() && ui->artistsView->jumpToCurrentTrack() )
|
if ( ui->artistsView->model() && ui->artistsView->jumpToCurrentTrack() )
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if ( ui->tracksViewLeft->model() && ui->tracksViewLeft->jumpToCurrentTrack() )
|
if ( ui->tracksView->model() && ui->tracksView->jumpToCurrentTrack() )
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if ( ui->albumsView->model() && ui->albumsView->jumpToCurrentTrack() )
|
if ( ui->albumsView->model() && ui->albumsView->jumpToCurrentTrack() )
|
||||||
@@ -276,7 +273,7 @@ ChartsWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestData,
|
|||||||
|
|
||||||
connect( loader, SIGNAL( tracks( Tomahawk::ChartDataLoader*, QList< Tomahawk::query_ptr > ) ), SLOT( chartTracksLoaded( Tomahawk::ChartDataLoader*, QList< Tomahawk::query_ptr > ) ) );
|
connect( loader, SIGNAL( tracks( Tomahawk::ChartDataLoader*, QList< Tomahawk::query_ptr > ) ), SLOT( chartTracksLoaded( Tomahawk::ChartDataLoader*, QList< Tomahawk::query_ptr > ) ) );
|
||||||
|
|
||||||
PlaylistModel* trackModel = new PlaylistModel( ui->tracksViewLeft );
|
PlayableModel* trackModel = new PlayableModel( ui->tracksView );
|
||||||
trackModel->startLoading();
|
trackModel->startLoading();
|
||||||
|
|
||||||
m_trackModels[ chartId ] = trackModel;
|
m_trackModels[ chartId ] = trackModel;
|
||||||
@@ -540,11 +537,10 @@ ChartsWidget::setLeftViewArtists( PlayableModel* model )
|
|||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
ChartsWidget::setLeftViewTracks( PlaylistModel* model )
|
ChartsWidget::setLeftViewTracks( PlayableModel* model )
|
||||||
{
|
{
|
||||||
ui->tracksViewLeft->proxyModel()->setStyle( PlayableProxyModel::Large );
|
ui->tracksView->setPlayableModel( model );
|
||||||
ui->tracksViewLeft->setPlaylistModel( model );
|
ui->tracksView->proxyModel()->sort( -1 );
|
||||||
ui->tracksViewLeft->proxyModel()->sort( -1 );
|
|
||||||
ui->stackLeft->setCurrentIndex( 0 );
|
ui->stackLeft->setCurrentIndex( 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -573,7 +569,7 @@ ChartsWidget::chartTracksLoaded( ChartDataLoader* loader, const QList< query_ptr
|
|||||||
|
|
||||||
if ( m_trackModels.contains( chartId ) )
|
if ( m_trackModels.contains( chartId ) )
|
||||||
{
|
{
|
||||||
Pipeline::instance()->resolve( tracks );
|
// Pipeline::instance()->resolve( tracks );
|
||||||
m_trackModels[ chartId ]->appendQueries( tracks );
|
m_trackModels[ chartId ]->appendQueries( tracks );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -87,7 +87,7 @@ private slots:
|
|||||||
private:
|
private:
|
||||||
void setLeftViewArtists( PlayableModel* artistModel );
|
void setLeftViewArtists( PlayableModel* artistModel );
|
||||||
void setLeftViewAlbums( PlayableModel* albumModel );
|
void setLeftViewAlbums( PlayableModel* albumModel );
|
||||||
void setLeftViewTracks( PlaylistModel* trackModel );
|
void setLeftViewTracks( PlayableModel* trackModel );
|
||||||
void setViewData( const QVariantMap& data );
|
void setViewData( const QVariantMap& data );
|
||||||
|
|
||||||
QStandardItem* parseNode( QStandardItem* parentItem, const QString& label, const QVariant& data );
|
QStandardItem* parseNode( QStandardItem* parentItem, const QString& label, const QVariant& data );
|
||||||
@@ -107,7 +107,7 @@ private:
|
|||||||
// Cache our model data
|
// Cache our model data
|
||||||
QHash< QString, PlayableModel* > m_albumModels;
|
QHash< QString, PlayableModel* > m_albumModels;
|
||||||
QHash< QString, PlayableModel* > m_artistModels;
|
QHash< QString, PlayableModel* > m_artistModels;
|
||||||
QHash< QString, PlaylistModel* > m_trackModels;
|
QHash< QString, PlayableModel* > m_trackModels;
|
||||||
QString m_queueItemToShow;
|
QString m_queueItemToShow;
|
||||||
QSet< QString > m_queuedFetches;
|
QSet< QString > m_queuedFetches;
|
||||||
QMap<QString, QVariant> m_currentVIds;
|
QMap<QString, QVariant> m_currentVIds;
|
||||||
|
@@ -19,13 +19,7 @@
|
|||||||
<widget class="QWidget" name="page">
|
<widget class="QWidget" name="page">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||||
<item>
|
<item>
|
||||||
<widget class="PlaylistView" name="tracksViewLeft">
|
<widget class="GridView" name="tracksView">
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>320</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
Reference in New Issue
Block a user