Example #1
0
        private void Subscribe()
        {
            currentTracker = GetComponentInParent <InteractionBlockingTracker>();

            if (currentTracker)
            {
                OnIsInteractableChanged(currentTracker.IsInteractable);

                currentTracker.IsInteractableChanged += OnIsInteractableChanged;
            }
        }
Example #2
0
        public virtual void Initialize()
        {
            if (panelLayer == null)
            {
                panelLayer = GetComponentInChildren <PanelLayer>();

                if (panelLayer == null)
                {
                    Debug.LogError("UI Frame lacks Panel Layer!");
                }
                else
                {
                    panelLayer.Initialize(this);
                }
            }

            if (windowLayer == null)
            {
                windowLayer = GetComponentInChildren <WindowLayer>();

                if (windowLayer == null)
                {
                    Debug.LogError("UI Frame lacks Window Layer!");
                }
                else
                {
                    windowLayer.Initialize(this);
                    windowLayer.CurrentWindowChanged += OnCurrentWindowChanged;
                }
            }

            GameObject blockingTrackerTarget = MainCanvas ? MainCanvas.gameObject : gameObject;

            mainBlockingTracker = blockingTrackerTarget.GetOrAddComponent <InteractionBlockingTracker>();
            mainBlockingTracker.IsInteractableChanged += OnIsInteractableChanged;
        }