public void OnEnable()
    {
        editorSettings = JointEditorSettings.Singleton;

        if (editorSettings == null) {
            return;
        }

        var defaultNames = new HashSet<string> {"slider", "lock", "offset"};
        var childControlNames = GetControlNames();

        if (defaultNames.Overlaps(childControlNames)) {
            Debug.LogError("Reserved control names: " +
                           String.Join(",", defaultNames.Intersect(childControlNames)
                                                        .ToArray()) + ".");
        }
        controlNames = new HashSet<string>(defaultNames.Union(childControlNames));

        if (EditorHelpers.AllowMultiObjectAccess) {
            var allSettings =
                targets.Cast<Joint2D>()
                       .Select(joint2D => SettingsHelper.GetOrCreate(joint2D))
                       .Where(jointSettings => jointSettings != null)
                       .Cast<Object>()
                       .ToList();

            if (allSettings.Count > 0) {
                serializedSettings = new SerializedObject(allSettings.ToArray());
            } else {
                serializedSettings = null;
            }
        } else {
            if (target) {
                serializedSettings = new SerializedObject(new Object[] {SettingsHelper.GetOrCreate(target as Joint2D)});
            } else {
                serializedSettings = null;
            }
        }
    }
Пример #2
0
 public void OnEnable()
 {
     _editorSettings = this;
 }