10using System.Collections.Generic;
19 [DisallowMultipleComponent]
26 protected List<string>
_bindings =
new List<string>();
33 protected List<EditorCurveBinding> _cachedBindings;
34 public List<EditorCurveBinding> GetBindings(GameObject root) {
35 if (_cachedBindings ==
null) {
37 AnimationUtility.GetAnimatableBindings(gameObject, root).Query().
38 Where(IsBindingEnabled).
39 Where(b => b.type != typeof(Transform) &&
40 b.type != typeof(GameObject)).
44 return _cachedBindings;
47 public bool IsBindingEnabled(EditorCurveBinding binding) {
48 return _bindings.Contains(getKey(binding));
51 public void SetBindingEnabled(EditorCurveBinding binding,
bool enabled) {
52 var key = getKey(binding);
53 if (enabled == IsBindingEnabled(binding)) {
64 public bool IsBindingExpanded(EditorCurveBinding binding) {
68 public void SetBindingExpanded(EditorCurveBinding binding,
bool expanded) {
69 if (expanded == IsBindingExpanded(binding)) {
80 private string getKey(EditorCurveBinding binding) {
81 return binding.type.Name +
" : " + binding.propertyName;
List< string > _expandedTypes