コード例 #1
0
ファイル: search.c プロジェクト: SimonPersson/spotifyd
char *search_str_list()
{
	size_t tracks = sp_search_num_tracks(search);
	size_t albums = sp_search_num_albums(search);
	size_t playlists = sp_search_num_playlists(search);
	size_t size = API_MESSAGE_LEN*(albums+tracks);
	char *ret = malloc(size);
	ret[0] = '\0';
	int i;
	for(i=0; i<tracks; ++i)
	{
		num_pre(ret + strlen(ret), size, i, track_to_str,
				sp_search_track(search, i));
		strncat(ret + strlen(ret), "\n", size);
	}
	for(; i<(tracks+albums); ++i)
	{
		num_pre(ret + strlen(ret), size, i, album_to_str,
				sp_search_album(search, i-tracks));
		strncat(ret + strlen(ret), "\n", size);
	}
	for(; i<(tracks+albums+playlists); ++i)
	{
		num_pre(ret + strlen(ret), size, i, playlist_to_str,
				sp_search_playlist(search, i-tracks-albums));
		strncat(ret + strlen(ret), "\n", size);
	}

	return ret;
}
コード例 #2
0
ファイル: search.c プロジェクト: SimonPersson/spotifyd
bool search_is_playlist(size_t i)
{
	if(sp_search_num_tracks(search)+sp_search_num_albums(search) <= i
			&& i < (sp_search_num_tracks(search)+sp_search_num_albums(search)+sp_search_num_playlists(search)))
	{
		return 1;
	}
	return 0;
}
コード例 #3
0
void QSpotifySearch::populatePlaylists(sp_search *search)
{
    m_playlistResults->clear();
    if (m_enablePreview)
        m_playlistResultsPreview->clear();

    if (search) {
        int c = sp_search_num_playlists(search);
        for (int i = 0; i < c; ++i) {
            auto playlist = std::shared_ptr<QSpotifyPlaylistSearchEntry>(
                        new QSpotifyPlaylistSearchEntry(sp_search_playlist_name(search, i), sp_search_playlist(search, i)),
                        [] (QSpotifyPlaylistSearchEntry *pl) {pl->deleteLater();});
            playlist->init();
            m_playlistResults->appendRow(playlist);
            if(m_enablePreview && i < m_numPreviewItems)
                m_playlistResultsPreview->appendRow(playlist);
        }
    }
}
コード例 #4
0
ファイル: search.cpp プロジェクト: Andlon/spotinetta
int Search::playlistCount() const
{
    return isValid() ? sp_search_num_playlists(handle()) : 0;
}