public static IBindingContext BindingContext(this Behaviour behaviour) { if (behaviour == null || behaviour.gameObject == null) { return(null); } BindingContextLifecycle bindingContextLifecycle = behaviour.GetComponent <BindingContextLifecycle>(); if (bindingContextLifecycle == null) { bindingContextLifecycle = behaviour.gameObject.AddComponent <BindingContextLifecycle>(); } IBindingContext bindingContext = bindingContextLifecycle.BindingContext; if (bindingContext == null) { bindingContext = new BindingContext(Binder); bindingContextLifecycle.BindingContext = bindingContext; } return(bindingContext); }
public static IBindingContext BindingContext(this GameObject gameObject) { if (gameObject == null) { return(null); } BindingContextLifecycle bindingContextLifecycle = gameObject.GetComponent <BindingContextLifecycle>(); if (bindingContextLifecycle == null) { bindingContextLifecycle = gameObject.AddComponent <BindingContextLifecycle>(); } IBindingContext bindingContext = bindingContextLifecycle.BindingContext; if (bindingContext == null) { bindingContext = new BindingContext(gameObject, Binder); bindingContextLifecycle.BindingContext = bindingContext; } return(bindingContext); }