Пример #1
0
        internal PortFilterComponent(PortFilter filter, PortFilterType type, PortDeleteFilter onDeleted)
        {
            this.Filter = filter;

            int selected = 0;

            if (ItemCategories.NumToName.TryGetValue(this.Filter.Category, out string category))
            {
                selected = ItemCategories.Names.IndexOf(category);
            }

            this.Dropdown = new DropdownComponent(ItemCategories.Names, "", 300)
            {
                visible = true, SelectionIndex = selected
            };
            this.Dropdown.DropDownOptionSelected += DropDownOptionSelected;

            this.DeleteButton = new ButtonComponent("", Sprites.Icons.Sheet, Sprites.Icons.Clear, 2, true)
            {
                visible = true, HoverText = "Delete"
            };
            this.DeleteButton.ButtonPressed += () => onDeleted(Filter);

            if (type == PortFilterType.REQUESTS)
            {
                BuildSlider();
            }
        }
Пример #2
0
 internal PortFiltersPage(List <PortFilter> filters, Action onChanged, PortFilterType type)
 {
     this.Filters   = filters;
     this.OnChanged = onChanged;
     this.Type      = type;
     foreach (var filter in Filters)
     {
         Components.Add(new PortFilterComponent(filter, Type, DeleteFilter));
     }
 }