private void Reload()
        {
            ClearItems();

            var stockItem = new ResourcePackEntry(null, "Default", "For those who dig the vanilla look")
            {
                Enabled = false
            };

            stockItem.SetLoaded(true);

            AddItem(stockItem);

            var enabled = base.Options.ResourceOptions.LoadedResourcesPacks.Value;

            foreach (var resource in Alex.Resources.ResourcePackDirectory.EnumerateFiles())
            {
                try
                {
                    if (resource.FullName.EndsWith(".zip", StringComparison.OrdinalIgnoreCase))
                    {
                        if (Alex.Resources.TryLoadResourcePackInfo(resource.FullName,
                                                                   out ResourcePackManifest packInfo))
                        {
                            var item = new ResourcePackEntry(packInfo, resource.FullName);

                            if (enabled.Any(x => x.ToLower().Contains(resource.Name.ToLower())))
                            {
                                item.SetLoaded(true);
                            }

                            AddItem(item);
                        }
                    }
                }
                catch (InvalidResourcePackException ex)
                {
                    Log.Warn($"Error while loading resourcepack: {ex.ToString()}");
                }
            }
        }
 public void RemoveItem(ResourcePackEntry item)
 {
     ListContainer.RemoveChild(item);
     _items.Remove(item);
 }
 public void AddItem(ResourcePackEntry item)
 {
     _items.Add(item);
     ListContainer.AddChild(item);
 }