private async Task PopulateSeries()
{
List<Show> shows = new List<Show>();
List<Task<Shows>> tasks = new List<Task<Shows>>();
foreach (string s in DownloadPluginHandler.Instance.AvailableAuthorizations)
{
tasks.Add(DownloadPluginHandler.Instance.Shows(s));
}
if (tasks.Count > 0)
{
SetBusy(objShows, true);
await Task.WhenAll(tasks);
foreach (Task<Shows> t in tasks)
{
if (t.Result.Status == ResponseStatus.Ok)
shows.AddRange(t.Result.Items);
}
objShows.BeginUpdate();
objShows.SetObjects(shows);
objShows.BuildGroups(colShowType, SortOrder.Ascending);
objShows.BuildList(true);
objShows.EndUpdate();
SetBusy(objShows, false);
}
}
private int _lastshowindex = -1;