void ScrobblesWidget::onTrackClicked( TrackWidget& trackWidget ) { MetadataWidget* w; ui->layout->addWidget( w = new MetadataWidget( trackWidget.track() )); w->fetchTrackInfo(); w->setBackButtonVisible( true ); trackWidget.startSpinner(); connect( ui->layout, SIGNAL( moveFinished(QLayoutItem*)), &trackWidget, SLOT(clearSpinner()) ); connect( w, SIGNAL(finished()), SLOT(onMetadataWidgetFinished())); connect( w, SIGNAL(backClicked()), SLOT(onBackClicked())); }
void ScrobblesListWidget::showEvent(QShowEvent *) { QList<lastfm::Track> tracks; for ( int i = 0 ; i < count() ; ++i ) { TrackWidget* trackWidget = qobject_cast<TrackWidget*>( itemWidget( item( i ) ) ); if ( trackWidget && !item( i )->isHidden() ) tracks << trackWidget->track(); } fetchTrackInfo( tracks ); }