예제 #1
0
        void OnEnable()
        {
            CreateUI();
            ImplantAsset data = target as ImplantAsset;

            if (data != null)
            {
                if (data.Objects != null)
                {
                    foreach (var item in data.Objects)
                    {
                        if (item != null)
                        {
                            ImplantObjectListItem field = new ImplantObjectListItem(this, item);
                            _ItemsList.Controls.Add(field);
                        }
                    }
                }
            }
            else
            {
                _ItemsList.Controls.Clear();
            }
            if (_ItemsList.Controls.Count > 0)
            {
                _ItemsList.SelectedIndex = 0;
            }
        }
예제 #2
0
        void _BtnAdd_Click(object sender, System.EventArgs e)
        {
            ImplantObjectListItem newItem = new ImplantObjectListItem(this, CreateNew());

            _ItemsList.Controls.Add(newItem);
            _ItemsList.SelectedItem = newItem;
            _IsCollectionChanged    = true;
        }
예제 #3
0
        public void NewAfter(EditorListItem item)
        {
            int index = _ItemsList.Controls.IndexOf(item);

            if (index >= 0)
            {
                ImplantObjectListItem newItem = new ImplantObjectListItem(this, CreateNew());
                _ItemsList.Controls.Insert(index + 1, newItem);
                _IsCollectionChanged = true;
            }
        }
예제 #4
0
 private void ApplyChanges()
 {
     if (_IsCollectionChanged)
     {
         ImplantAsset data = target as ImplantAsset;
         if (data != null)
         {
             data.Objects = new ImplantObject[_ItemsList.Controls.Count];
             for (int i = 0; i < _ItemsList.Controls.Count; i++)
             {
                 ImplantObjectListItem field = (ImplantObjectListItem)_ItemsList.Controls[i];
                 data.Objects[i] = field.Object;
             }
             EditorUtility.SetDirty(data);
         }
         _IsCollectionChanged = false;
     }
 }