예제 #1
0
        private static void SetBestTargetForEvent(EventBase evt, IPanel panel)
        {
            VisualElement visualElement;

            PointerEventDispatchingStrategy.UpdateElementUnderPointer(evt, panel, out visualElement);
            bool flag = evt.target == null && visualElement != null;

            if (flag)
            {
                evt.propagateToIMGUI = false;
                evt.target           = visualElement;
            }
            else
            {
                bool flag2 = evt.target == null && visualElement == null;
                if (flag2)
                {
                    evt.target = ((panel != null) ? panel.visualTree : null);
                }
                else
                {
                    bool flag3 = evt.target != null;
                    if (flag3)
                    {
                        evt.propagateToIMGUI = false;
                    }
                }
            }
        }
예제 #2
0
 public virtual void DispatchEvent(EventBase evt, IPanel panel)
 {
     PointerEventDispatchingStrategy.SetBestTargetForEvent(evt, panel);
     PointerEventDispatchingStrategy.SendEventToTarget(evt);
     evt.stopDispatch = true;
 }