Exemplo n.º 1
0
        void UpdateItems(List <GameObject> newItems)
        {
            newItems = SortItems(newItems);

            RemoveCallbacks();

            var selected_indicies = new List <int>();

            SelectedIndicies.ForEach(index => {
                var new_index = newItems.FindIndex(x => x == objects[index]);
                if (new_index != -1)
                {
                    selected_indicies.Add(index);
                }
            });

            var base_items = new List <ListViewItem>();

            newItems.ForEach(x => {
                var item = x.GetComponent <ListViewItem>() ?? x.AddComponent <ListViewItem>();
                base_items.Add(item);
            });

            objects    = newItems;
            base.Items = base_items;

            selected_indicies.ForEach(x => Select(x));

            AddCallbacks();
        }
Exemplo n.º 2
0
        protected virtual void UpdateItems(List <TItem> newItems)
        {
            newItems = SortItems(newItems);

            SelectedIndicies.ForEach(index => {
                var new_index = newItems.FindIndex(x => x.Equals(customItems[index]));
                if (new_index == -1)
                {
                    Deselect(index);
                }
            });

            customItems = newItems;

            UpdateView();
        }
Exemplo n.º 3
0
        void UpdateItems(List <string> newItems)
        {
            newItems = FilterItems(newItems);

            var new_selected_indicies = NewSelectedIndicies(newItems);

            SelectedIndicies.ForEach(x => {
                if (!new_selected_indicies.Contains(x))
                {
                    Deselect(x);
                }
            });

            strings = newItems;

            UpdateView();
        }