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);
        }
Example #2
0
        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);
        }