TraktPlugin.GUI.GUIListItems.SendListItemsToFacade C# (CSharp) Méthode

SendListItemsToFacade() private méthode

private SendListItemsToFacade ( IEnumerable listItems ) : void
listItems IEnumerable
Résultat void
        private void SendListItemsToFacade(IEnumerable<TraktListItem> listItems)
        {
            // clear facade
            GUIControl.ClearControl(GetID, Facade.GetID);

            if (listItems == null)
            {
                GUIUtils.ShowNotifyDialog(Translation.Error, Translation.ErrorGeneral);
                GUIWindowManager.ShowPreviousWindow();
                return;
            }

            CurrentListItems = listItems.ToList();

            if (listItems.Count() == 0)
            {
                GUIUtils.ShowNotifyDialog(GUIUtils.PluginName(), Translation.NoListItemsFound);
                GUIWindowManager.ShowPreviousWindow();
                return;
            }

            int itemId = 1;
            var listImages = new List<GUITmdbImage>();

            // Add each list item
            foreach (var listItem in listItems)
            {
                // add image for download
                var images = GetTmdbImage(listItem);
                listImages.Add(images);

                string itemName = CurrentList.DisplayNumbers ? string.Format("{0}. {1}", itemId, GetListItemLabel(listItem)) : GetListItemLabel(listItem);

                var item = new GUICustomListItem(itemName, (int)TraktGUIWindows.CustomListItems);

                item.Label2 = GetListItemSecondLabel(listItem);
                item.TVTag = listItem;
                item.Type = (TraktItemType)Enum.Parse(typeof(TraktItemType), listItem.Type, true);
                item.Movie = listItem.Movie;
                item.Show = listItem.Show;
                item.Episode = listItem.Episode;
                item.Season = listItem.Season;
                item.Person = listItem.Person;
                item.Images = images;
                item.IsPlayed = listItem.IsWatched();
                item.ItemId = Int32.MaxValue - itemId;
                item.IconImage = GUIImageHandler.GetDefaultPoster(false);
                item.IconImageBig = GUIImageHandler.GetDefaultPoster();
                item.ThumbnailImage = GUIImageHandler.GetDefaultPoster();
                item.OnItemSelected += OnItemSelected;
                Utils.SetDefaultIcons(item);
                Facade.Add(item);
                itemId++;
            }

            // Set Facade Layout
            Facade.SetCurrentLayout(Enum.GetName(typeof(Layout), CurrentLayout));
            GUIControl.FocusControl(GetID, Facade.GetID);

            Facade.SelectIndex(PreviousSelectedIndex);

            // set facade properties
            GUIUtils.SetProperty("#itemcount", listItems.Count().ToString());
            GUIUtils.SetProperty("#Trakt.Items", string.Format("{0} {1}", listItems.Count().ToString(), listItems.Count() > 1 ? Translation.Items : Translation.Item));

            // Download images Async and set to facade
            GUICustomListItem.GetImages(listImages);
        }