コード例 #1
0
        public void ClearFor(GObject target)
        {
            int cnt = _items.Count;
            int i   = 0;

            while (i < cnt)
            {
                RelationItem item = _items[i];
                if (item.target == target)
                {
                    item.Dispose();
                    _items.RemoveAt(i);
                    cnt--;
                }
                else
                {
                    i++;
                }
            }
        }
コード例 #2
0
        public void Remove(GObject target, RelationType relationType)
        {
            int cnt = _items.Count;
            int i   = 0;

            while (i < cnt)
            {
                RelationItem item = _items[i];
                if (item.target == target)
                {
                    item.Remove(relationType);
                    if (item.isEmpty)
                    {
                        item.Dispose();
                        _items.RemoveAt(i);
                        cnt--;
                    }
                }
                else
                {
                    i++;
                }
            }
        }