mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-09 07:36:48 +02:00
* Style fixes in WhatsHotWidget.
This commit is contained in:
@@ -103,12 +103,7 @@ WhatsHotWidget::WhatsHotWidget( QWidget* parent )
|
||||
|
||||
// Read last viewed charts, to be used as defaults
|
||||
m_currentVIds = TomahawkSettings::instance()->lastChartIds();
|
||||
qDebug() << "Got last chartIds:" << m_currentVIds;
|
||||
|
||||
// TracksView is first shown, show spinner on that
|
||||
// After fadeOut, charts are loaded
|
||||
m_loadingSpinner = new AnimatedSpinner( ui->tracksViewLeft );
|
||||
m_loadingSpinner->fadeIn();
|
||||
tDebug( LOGVERBOSE ) << "Re-loading last chartIds:" << m_currentVIds;
|
||||
|
||||
MetaPlaylistInterface* mpl = new MetaPlaylistInterface();
|
||||
mpl->addChildInterface( ui->tracksViewLeft->playlistInterface() );
|
||||
@@ -120,14 +115,15 @@ WhatsHotWidget::WhatsHotWidget( QWidget* parent )
|
||||
|
||||
WhatsHotWidget::~WhatsHotWidget()
|
||||
{
|
||||
qDebug() << "Deleting whatshot";
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO;
|
||||
|
||||
// Write the settings
|
||||
qDebug() << "Writing chartIds to settings:" << m_currentVIds;
|
||||
TomahawkSettings::instance()->setLastChartIds( m_currentVIds );
|
||||
|
||||
qDeleteAll( m_workers );
|
||||
m_workers.clear();
|
||||
m_workerThread->exit( 0 );
|
||||
m_playlistInterface.clear();
|
||||
|
||||
delete ui;
|
||||
}
|
||||
|
||||
@@ -212,7 +208,7 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
{
|
||||
case InfoSystem::InfoChartCapabilities:
|
||||
{
|
||||
QStandardItem *rootItem= m_crumbModelLeft->invisibleRootItem();
|
||||
QStandardItem* rootItem= m_crumbModelLeft->invisibleRootItem();
|
||||
QVariantMap defaults;
|
||||
if ( returnedData.contains( "defaults" ) )
|
||||
defaults = returnedData.take( "defaults" ).toMap();
|
||||
@@ -221,22 +217,23 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
QString defaultSource = returnedData.take( "defaultSource" ).toString();
|
||||
// Here, we dont want current sessions last view, but rather what was current on previus quit
|
||||
QString lastSeen = TomahawkSettings::instance()->lastChartIds().value( "lastseen" ).toString();
|
||||
if( !lastSeen.isEmpty() )
|
||||
if ( !lastSeen.isEmpty() )
|
||||
defaultSource = lastSeen;
|
||||
|
||||
// Merge defaults with current defaults, split the value in to a list
|
||||
foreach( const QString&key, m_currentVIds.keys() )
|
||||
foreach ( const QString& key, m_currentVIds.keys() )
|
||||
defaults[ key ] = m_currentVIds.value( key ).toString().split( "/" );
|
||||
qDebug() << "Defaults after merge" << defaults;
|
||||
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "Defaults after merge" << defaults;
|
||||
foreach ( const QString label, returnedData.keys() )
|
||||
{
|
||||
QStandardItem *childItem = parseNode( rootItem, label, returnedData[ label ] );
|
||||
QStandardItem* childItem = parseNode( rootItem, label, returnedData[ label ] );
|
||||
rootItem->appendRow( childItem );
|
||||
}
|
||||
|
||||
// Set the default source
|
||||
// Set the default chart for each source
|
||||
if( !defaults.empty() )
|
||||
if ( !defaults.empty() )
|
||||
{
|
||||
for ( int i = 0; i < rootItem->rowCount(); i++ )
|
||||
{
|
||||
@@ -251,7 +248,7 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
QStringList defaultIndices = defaults[ source->text().toLower() ].toStringList();
|
||||
QStandardItem* cur = source;
|
||||
|
||||
foreach( const QString& index, defaultIndices )
|
||||
foreach ( const QString& index, defaultIndices )
|
||||
{
|
||||
// Go through the children of the current item, marking the default one as default
|
||||
for ( int k = 0; k < cur->rowCount(); k++ )
|
||||
@@ -276,10 +273,9 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
|
||||
case InfoSystem::InfoChart:
|
||||
{
|
||||
|
||||
if( returnedData.contains( "chart_error") )
|
||||
if ( returnedData.contains( "chart_error" ) )
|
||||
{
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "Info came back with error!!";
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "Info came back with error!";
|
||||
|
||||
Tomahawk::InfoSystem::InfoStringHash criteria;
|
||||
criteria.insert( "chart_refetch", returnedData[ "chart_source" ].value< QString >() );
|
||||
@@ -301,7 +297,6 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
break;
|
||||
|
||||
const QString type = returnedData[ "type" ].toString();
|
||||
|
||||
if ( !returnedData.contains( type ) )
|
||||
break;
|
||||
|
||||
@@ -318,7 +313,7 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
loader->setType( ChartDataLoader::Artist );
|
||||
loader->setData( returnedData[ "artists" ].value< QStringList >() );
|
||||
|
||||
connect( loader, SIGNAL( artists( Tomahawk::ChartDataLoader*, QList< Tomahawk::artist_ptr > ) ), this, SLOT( chartArtistsLoaded( Tomahawk::ChartDataLoader*, QList< Tomahawk::artist_ptr > ) ) );
|
||||
connect( loader, SIGNAL( artists( Tomahawk::ChartDataLoader*, QList< Tomahawk::artist_ptr > ) ), SLOT( chartArtistsLoaded( Tomahawk::ChartDataLoader*, QList< Tomahawk::artist_ptr > ) ) );
|
||||
|
||||
TreeModel* artistsModel = new TreeModel( ui->artistsViewLeft );
|
||||
artistsModel->setMode( InfoSystemMode );
|
||||
@@ -334,7 +329,7 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
loader->setType( ChartDataLoader::Album );
|
||||
loader->setData( returnedData[ "albums" ].value< QList< Tomahawk::InfoSystem::InfoStringHash > >() );
|
||||
|
||||
connect( loader, SIGNAL( albums( Tomahawk::ChartDataLoader*, QList< Tomahawk::album_ptr > ) ), this, SLOT( chartAlbumsLoaded( Tomahawk::ChartDataLoader*, QList< Tomahawk::album_ptr > ) ) );
|
||||
connect( loader, SIGNAL( albums( Tomahawk::ChartDataLoader*, QList< Tomahawk::album_ptr > ) ), SLOT( chartAlbumsLoaded( Tomahawk::ChartDataLoader*, QList< Tomahawk::album_ptr > ) ) );
|
||||
|
||||
PlayableModel* albumModel = new PlayableModel( ui->albumsView );
|
||||
albumModel->startLoading();
|
||||
@@ -349,7 +344,7 @@ WhatsHotWidget::infoSystemInfo( Tomahawk::InfoSystem::InfoRequestData requestDat
|
||||
loader->setType( ChartDataLoader::Track );
|
||||
loader->setData( returnedData[ "tracks" ].value< QList< Tomahawk::InfoSystem::InfoStringHash > >() );
|
||||
|
||||
connect( loader, SIGNAL( tracks( Tomahawk::ChartDataLoader*, QList< Tomahawk::query_ptr > ) ), this, 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 );
|
||||
trackModel->startLoading();
|
||||
@@ -375,7 +370,6 @@ void
|
||||
WhatsHotWidget::infoSystemFinished( QString target )
|
||||
{
|
||||
Q_UNUSED( target );
|
||||
m_loadingSpinner->fadeOut();
|
||||
}
|
||||
|
||||
|
||||
@@ -437,6 +431,7 @@ WhatsHotWidget::leftCrumbIndexChanged( QModelIndex index )
|
||||
criteria.insert( "chart_expires", QString::number( chartExpires ) );
|
||||
/// Remember to lower the source!
|
||||
criteria.insert( "chart_source", index.data().toString().toLower() );
|
||||
|
||||
Tomahawk::InfoSystem::InfoRequestData requestData;
|
||||
QVariantMap customData;
|
||||
customData.insert( "whatshot_side", "left" );
|
||||
@@ -472,12 +467,12 @@ WhatsHotWidget::changeEvent( QEvent* e )
|
||||
|
||||
|
||||
QStandardItem*
|
||||
WhatsHotWidget::parseNode( QStandardItem* parentItem, const QString &label, const QVariant &data )
|
||||
WhatsHotWidget::parseNode( QStandardItem* parentItem, const QString& label, const QVariant& data )
|
||||
{
|
||||
Q_UNUSED( parentItem );
|
||||
// tDebug( LOGVERBOSE ) << "WhatsHot: parsing " << label;
|
||||
// tDebug( LOGVERBOSE ) << "WhatsHot: parsing" << label;
|
||||
|
||||
QStandardItem *sourceItem = new QStandardItem( label );
|
||||
QStandardItem* sourceItem = new QStandardItem( label );
|
||||
|
||||
if ( data.canConvert< QList< Tomahawk::InfoSystem::InfoStringHash > >() )
|
||||
{
|
||||
@@ -485,7 +480,7 @@ WhatsHotWidget::parseNode( QStandardItem* parentItem, const QString &label, cons
|
||||
|
||||
foreach ( Tomahawk::InfoSystem::InfoStringHash chart, charts )
|
||||
{
|
||||
QStandardItem *childItem= new QStandardItem( chart[ "label" ] );
|
||||
QStandardItem* childItem= new QStandardItem( chart[ "label" ] );
|
||||
childItem->setData( chart[ "id" ], Breadcrumb::ChartIdRole );
|
||||
childItem->setData( chart[ "expires" ], Breadcrumb::ChartExpireRole );
|
||||
|
||||
@@ -505,7 +500,7 @@ WhatsHotWidget::parseNode( QStandardItem* parentItem, const QString &label, cons
|
||||
QVariantMap dataMap = data.toMap();
|
||||
foreach ( const QString childLabel,dataMap.keys() )
|
||||
{
|
||||
QStandardItem *childItem = parseNode( sourceItem, childLabel, dataMap[ childLabel ] );
|
||||
QStandardItem* childItem = parseNode( sourceItem, childLabel, dataMap[ childLabel ] );
|
||||
sourceItem->appendRow( childItem );
|
||||
}
|
||||
}
|
||||
@@ -515,13 +510,13 @@ WhatsHotWidget::parseNode( QStandardItem* parentItem, const QString &label, cons
|
||||
|
||||
foreach ( const QVariant value, dataList )
|
||||
{
|
||||
QStandardItem *childItem = new QStandardItem( value.toString() );
|
||||
QStandardItem* childItem = new QStandardItem( value.toString() );
|
||||
sourceItem->appendRow( childItem );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
QStandardItem *childItem = new QStandardItem( data.toString() );
|
||||
QStandardItem* childItem = new QStandardItem( data.toString() );
|
||||
sourceItem->appendRow( childItem );
|
||||
}
|
||||
return sourceItem;
|
||||
@@ -565,7 +560,7 @@ WhatsHotWidget::chartArtistsLoaded( ChartDataLoader* loader, const QList< artist
|
||||
|
||||
if ( m_artistModels.contains( chartId ) )
|
||||
{
|
||||
foreach( const artist_ptr& artist, artists )
|
||||
foreach ( const artist_ptr& artist, artists )
|
||||
{
|
||||
m_artistModels[ chartId ]->addArtists( artist );
|
||||
m_artistModels[ chartId ]->finishLoading();
|
||||
|
@@ -97,9 +97,9 @@ private:
|
||||
void setLeftViewAlbums( PlayableModel* albumModel );
|
||||
void setLeftViewTracks( PlaylistModel* trackModel );
|
||||
|
||||
QStandardItem* parseNode( QStandardItem* parentItem, const QString &label, const QVariant &data );
|
||||
QStandardItem* parseNode( QStandardItem* parentItem, const QString& label, const QVariant& data );
|
||||
|
||||
Ui::WhatsHotWidget *ui;
|
||||
Ui::WhatsHotWidget* ui;
|
||||
Tomahawk::playlistinterface_ptr m_playlistInterface;
|
||||
|
||||
QStandardItemModel* m_crumbModelLeft;
|
||||
@@ -119,7 +119,7 @@ private:
|
||||
QSet< QString > m_queuedFetches;
|
||||
QTimer* m_timer;
|
||||
QMap<QString, QVariant> m_currentVIds;
|
||||
AnimatedSpinner* m_loadingSpinner;
|
||||
|
||||
friend class Tomahawk::ChartsPlaylistInterface;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user