void SpotifySearchProvider::AddSuggestionFromTrack( const pb::spotify::Track& track) { if (!track.title().empty()) { suggestions_.insert(QString::fromUtf8(track.title().c_str())); } for (int j = 0; j < track.artist_size(); ++j) { if (!track.artist(j).empty()) { suggestions_.insert(QString::fromUtf8(track.artist(j).c_str())); } } if (!track.album().empty()) { suggestions_.insert(QString::fromUtf8(track.album().c_str())); } }
void SpotifyService::SongFromProtobuf(const pb::spotify::Track& track, Song* song) { song->set_rating(track.starred() ? 1.0 : 0.0); song->set_title(QStringFromStdString(track.title())); song->set_album(QStringFromStdString(track.album())); song->set_length_nanosec(track.duration_msec() * kNsecPerMsec); song->set_score(track.popularity()); song->set_disc(track.disc()); song->set_track(track.track()); song->set_year(track.year()); song->set_url(QUrl(QStringFromStdString(track.uri()))); song->set_art_automatic("spotify://image/" + QStringFromStdString(track.album_art_id())); QStringList artists; for (int i = 0; i < track.artist_size(); ++i) { artists << QStringFromStdString(track.artist(i)); } song->set_artist(artists.join(", ")); song->set_filetype(Song::Type_Stream); song->set_valid(true); song->set_directory_id(0); song->set_mtime(0); song->set_ctime(0); song->set_filesize(0); }