protected override FMultiTypeInspector <FTrack> CreateMultiTypeInspector() { FMultiTypeInspector <FTrack> multiTypeInspector = FMultiTrackInspector.CreateInstance <FMultiTrackInspector>(); multiTypeInspector.SetObjects(_objects.ToArray()); return(multiTypeInspector); }
public virtual void Refresh() { _objects.Clear(); _allSameType = true; for (int i = 0; i != _editors.Count; ++i) { if (!_editors[i].IsSelected) { _editors[i].OnSelect(); } FOBJECT obj = (FOBJECT)_editors[i].Obj; _objects.Add(obj); if (obj.GetType() != _editors[0].Obj.GetType()) { _allSameType = false; } } if (_inspector != null) { Editor.DestroyImmediate(_inspector); } if (_multiTypeInspector != null) { ScriptableObject.DestroyImmediate(_multiTypeInspector); } if (_objects.Count > 0) { if (_allSameType) { _inspector = Editor.CreateEditor(_objects.ToArray()); } else { _multiTypeInspector = CreateMultiTypeInspector(); } } _isDirty = false; }