protected void ProcessMouseEvent(int id)
 {                                                                                                      /*	called from Process, but the argument is always 0
                                                                                                         *     process for all the three buttons
                                                                                                         *
                                                                                                         *     call OnScroll
                                                                                                         */
     PointerInputModule.MouseState           mousePointerEventData = this.GetMousePointerEventData(id); /*id is irrelevant*/
     PointerInputModule.MouseButtonEventData eventData             = mousePointerEventData.GetButtonState(PointerEventData.InputButton.Left).eventData;
     if (this.ForceAutoSelect())                                                                        /*set to false as default*/
     {
         base.eventSystem.SetSelectedGameObject(eventData.buttonData.pointerCurrentRaycast.gameObject, eventData.buttonData);
     }
     this.ProcessMousePress(eventData);
     this.ProcessMove(eventData.buttonData);
     this.ProcessDrag(eventData.buttonData);
     this.ProcessMousePress(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Right).eventData);
     this.ProcessDrag(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Right).eventData.buttonData);
     this.ProcessMousePress(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Middle).eventData);
     this.ProcessDrag(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Middle).eventData.buttonData);
     if (!Mathf.Approximately(eventData.buttonData.scrollDelta.sqrMagnitude, 0f))
     {
         GameObject eventHandler = ExecuteEvents.GetEventHandler <IScrollHandler>(eventData.buttonData.pointerCurrentRaycast.gameObject);
         ExecuteEvents.ExecuteHierarchy <IScrollHandler>(eventHandler, eventData.buttonData, ExecuteEvents.scrollHandler);
     }
 }
Example #2
0
 static public int get_buttonData(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData self = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
         pushValue(l, true);
         pushValue(l, self.buttonData);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
	static public int constructor(IntPtr l) {
		try {
			UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o;
			o=new UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData();
			pushValue(l,true);
			pushValue(l,o);
			return 2;
		}
		catch(Exception e) {
			return error(l,e);
		}
	}
 static public int constructor(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o;
         o = new UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData();
         pushValue(l, o);
         return(1);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
 public static int constructor(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o;
         o=new UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData();
         pushValue(l,o);
         return 1;
     }
     catch(Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return 0;
     }
 }
Example #6
0
 static public int constructor(IntPtr l)
 {
     LuaDLL.lua_remove(l, 1);
     UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o;
     if (matchType(l, 1))
     {
         o = new UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData();
         pushObject(l, o);
         return(1);
     }
     LuaDLL.luaL_error(l, "New object failed.");
     return(0);
 }
Example #7
0
 static public int set_buttonData(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData self = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
         UnityEngine.EventSystems.PointerEventData v;
         checkType(l, 2, out v);
         self.buttonData = v;
         return(0);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
 static public int ReleasedThisFrame(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData self = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
         var ret = self.ReleasedThisFrame();
         pushValue(l, true);
         pushValue(l, ret);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
 static public int constructor(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o;
         o = new UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData();
         pushValue(l, true);
         pushValue(l, o);
         return(2);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
 static public int ReleasedThisFrame(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData self = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
         var ret = self.ReleasedThisFrame();
         pushValue(l, ret);
         return(1);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
 static public int set_buttonState(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData self = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
         UnityEngine.EventSystems.PointerEventData.FramePressState        v;
         checkEnum(l, 2, out v);
         self.buttonState = v;
         return(0);
     }
     catch (Exception e) {
         LuaDLL.luaL_error(l, e.ToString());
         return(0);
     }
 }
 static public int set_buttonState(IntPtr l)
 {
     try {
         UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData self = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
         UnityEngine.EventSystems.PointerEventData.FramePressState        v;
         checkEnum(l, 2, out v);
         self.buttonState = v;
         pushValue(l, true);
         return(1);
     }
     catch (Exception e) {
         return(error(l, e));
     }
 }
 private void FakeTouches()
 {
     PointerInputModule.MouseButtonEventData eventData = this.GetMousePointerEventData(0).GetButtonState(PointerEventData.InputButton.Left).eventData;
     if (eventData.PressedThisFrame())
     {
         eventData.buttonData.delta = Vector2.zero;
     }
     this.ProcessTouchPress(eventData.buttonData, eventData.PressedThisFrame(), eventData.ReleasedThisFrame());
     if (base.input.GetMouseButton(0))
     {
         this.ProcessMove(eventData.buttonData);
         this.ProcessDrag(eventData.buttonData);
     }
 }
Example #14
0
 protected void ProcessMouseEvent(int id)
 {
     PointerInputModule.MouseState           mousePointerEventData = this.GetMousePointerEventData(id);
     PointerInputModule.MouseButtonEventData eventData             = mousePointerEventData.GetButtonState(PointerEventData.InputButton.Left).eventData;
     this.ProcessMousePress(eventData);
     this.ProcessMove(eventData.buttonData);
     this.ProcessDrag(eventData.buttonData);
     this.ProcessMousePress(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Right).eventData);
     this.ProcessDrag(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Right).eventData.buttonData);
     this.ProcessMousePress(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Middle).eventData);
     this.ProcessDrag(mousePointerEventData.GetButtonState(PointerEventData.InputButton.Middle).eventData.buttonData);
     if (!Mathf.Approximately(eventData.buttonData.scrollDelta.sqrMagnitude, 0f))
     {
         ExecuteEvents.ExecuteHierarchy <IScrollHandler>(ExecuteEvents.GetEventHandler <IScrollHandler>(eventData.buttonData.pointerCurrentRaycast.gameObject), eventData.buttonData, ExecuteEvents.scrollHandler);
     }
 }
Example #15
0
        private void ProcessMouseEvent(PointerInputModule.MouseState mouseData)
        {
            bool pressed  = mouseData.AnyPressesThisFrame();
            bool released = mouseData.AnyReleasesThisFrame();

            PointerInputModule.MouseButtonEventData eventData = mouseData.GetButtonState(PointerEventData.InputButton.Left).eventData;
            if (!OVRInputModule.UseMouse(pressed, released, eventData.buttonData))
            {
                return;
            }
            this.ProcessMousePress(eventData);
            this.ProcessMove(eventData.buttonData);
            this.ProcessDrag(eventData.buttonData);
            this.ProcessMousePress(mouseData.GetButtonState(PointerEventData.InputButton.Right).eventData);
            this.ProcessDrag(mouseData.GetButtonState(PointerEventData.InputButton.Right).eventData.buttonData);
            this.ProcessMousePress(mouseData.GetButtonState(PointerEventData.InputButton.Middle).eventData);
            this.ProcessDrag(mouseData.GetButtonState(PointerEventData.InputButton.Middle).eventData.buttonData);
            if (!Mathf.Approximately(eventData.buttonData.scrollDelta.sqrMagnitude, 0f))
            {
                GameObject eventHandler = ExecuteEvents.GetEventHandler <IScrollHandler>(eventData.buttonData.pointerCurrentRaycast.gameObject);
                ExecuteEvents.ExecuteHierarchy <IScrollHandler>(eventHandler, eventData.buttonData, ExecuteEvents.scrollHandler);
            }
        }
Example #16
0
 static public int get_buttonState(IntPtr l)
 {
     UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
     pushEnum(l, (int)o.buttonState);
     return(1);
 }
        protected void ProcessMousePress(PointerInputModule.MouseButtonEventData data)
        {                                                                              /*	called in ProcessMouseEvent
                                                                                        *
                                                                                        *     sets pointerPress
                                                                                        *             pointerDrag
                                                                                        *             rawPointerPress
                                                                                        *
                                                                                        *     on press this frame
                                                                                        *             call OnPointerDown
                                                                                        *             call OnInitializePotentialDrag
                                                                                        *     on release this frame
                                                                                        *             call OnPointerUp
                                                                                        *             call OnPointerClick
                                                                                        *             call OnDrop
                                                                                        *             call OnEndDrag
                                                                                        */
            PointerEventData buttonData = data.buttonData;
            GameObject       gameObject = buttonData.pointerCurrentRaycast.gameObject; /*hit object. selected*/

            if (data.PressedThisFrame())
            {
                buttonData.eligibleForClick    = true;
                buttonData.delta               = Vector2.zero;
                buttonData.dragging            = false;
                buttonData.useDragThreshold    = true;
                buttonData.pressPosition       = buttonData.position;
                buttonData.pointerPressRaycast = buttonData.pointerCurrentRaycast;
                base.DeselectIfSelectionChanged(gameObject, buttonData);
                GameObject gameObject2 = ExecuteEvents.ExecuteHierarchy <IPointerDownHandler>(gameObject, buttonData, ExecuteEvents.pointerDownHandler); /*pressed obj*/
                if (gameObject2 == null)                                                                                                                 /*if none turns out to handle OnPointerDown*/
                {
                    gameObject2 = ExecuteEvents.GetEventHandler <IPointerClickHandler>(gameObject);
                }
                float unscaledTime = Time.unscaledTime;
                if (gameObject2 == buttonData.lastPress)
                {                /*	if gameObject2 is the lastly pressed object
                                  *     and if the pressed is registered within .3 secs after the prev one, increment clickCount
                                  *     else clickCount = 1
                                  */
                    float num = unscaledTime - buttonData.clickTime;
                    if (num < 0.3f)
                    {
                        buttonData.clickCount++;
                    }
                    else
                    {
                        buttonData.clickCount = 1;
                    }
                    buttonData.clickTime = unscaledTime;
                }
                else
                {
                    buttonData.clickCount = 1;
                }
                buttonData.pointerPress    = gameObject2;
                buttonData.rawPointerPress = gameObject;
                buttonData.clickTime       = unscaledTime;
                buttonData.pointerDrag     = ExecuteEvents.GetEventHandler <IDragHandler>(gameObject);
                if (buttonData.pointerDrag != null)
                {
                    ExecuteEvents.Execute <IInitializePotentialDragHandler>(buttonData.pointerDrag, buttonData, ExecuteEvents.initializePotentialDrag);
                }
            }
            if (data.ReleasedThisFrame())
            {
                ExecuteEvents.Execute <IPointerUpHandler>(buttonData.pointerPress, buttonData, ExecuteEvents.pointerUpHandler);
                GameObject eventHandler = ExecuteEvents.GetEventHandler <IPointerClickHandler>(gameObject);
                if (buttonData.pointerPress == eventHandler && buttonData.eligibleForClick)
                {
                    ExecuteEvents.Execute <IPointerClickHandler>(buttonData.pointerPress, buttonData, ExecuteEvents.pointerClickHandler);
                }
                else if (buttonData.pointerDrag != null && buttonData.dragging)
                {
                    ExecuteEvents.ExecuteHierarchy <IDropHandler>(gameObject, buttonData, ExecuteEvents.dropHandler);
                }
                buttonData.eligibleForClick = false;
                buttonData.pointerPress     = null;
                buttonData.rawPointerPress  = null;
                if (buttonData.pointerDrag != null && buttonData.dragging)
                {
                    ExecuteEvents.Execute <IEndDragHandler>(buttonData.pointerDrag, buttonData, ExecuteEvents.endDragHandler);
                }
                buttonData.dragging    = false;
                buttonData.pointerDrag = null;
                if (gameObject != buttonData.pointerEnter)
                {
                    base.HandlePointerExitAndEnter(buttonData, null);
                    base.HandlePointerExitAndEnter(buttonData, gameObject);
                }
            }
        }
Example #18
0
        protected void ProcessMousePress(PointerInputModule.MouseButtonEventData data)
        {
            PointerEventData currentPointerData = data.buttonData;
            GameObject       gameObject1        = currentPointerData.pointerCurrentRaycast.gameObject;

            if (data.PressedThisFrame())
            {
                currentPointerData.eligibleForClick    = true;
                currentPointerData.delta               = Vector2.zero;
                currentPointerData.dragging            = false;
                currentPointerData.useDragThreshold    = true;
                currentPointerData.pressPosition       = currentPointerData.position;
                currentPointerData.pointerPressRaycast = currentPointerData.pointerCurrentRaycast;
                this.DeselectIfSelectionChanged(gameObject1, (BaseEventData)currentPointerData);
                GameObject gameObject2 = ExecuteEvents.ExecuteHierarchy <IPointerDownHandler>(gameObject1, (BaseEventData)currentPointerData, ExecuteEvents.pointerDownHandler);
                if ((UnityEngine.Object)gameObject2 == (UnityEngine.Object)null)
                {
                    gameObject2 = ExecuteEvents.GetEventHandler <IPointerClickHandler>(gameObject1);
                }
                float unscaledTime = Time.unscaledTime;
                if ((UnityEngine.Object)gameObject2 == (UnityEngine.Object)currentPointerData.lastPress)
                {
                    if ((double)(unscaledTime - currentPointerData.clickTime) < 0.300000011920929)
                    {
                        ++currentPointerData.clickCount;
                    }
                    else
                    {
                        currentPointerData.clickCount = 1;
                    }
                    currentPointerData.clickTime = unscaledTime;
                }
                else
                {
                    currentPointerData.clickCount = 1;
                }
                currentPointerData.pointerPress    = gameObject2;
                currentPointerData.rawPointerPress = gameObject1;
                currentPointerData.clickTime       = unscaledTime;
                currentPointerData.pointerDrag     = ExecuteEvents.GetEventHandler <IDragHandler>(gameObject1);
                if ((UnityEngine.Object)currentPointerData.pointerDrag != (UnityEngine.Object)null)
                {
                    ExecuteEvents.Execute <IInitializePotentialDragHandler>(currentPointerData.pointerDrag, (BaseEventData)currentPointerData, ExecuteEvents.initializePotentialDrag);
                }
            }
            if (!data.ReleasedThisFrame())
            {
                return;
            }
            ExecuteEvents.Execute <IPointerUpHandler>(currentPointerData.pointerPress, (BaseEventData)currentPointerData, ExecuteEvents.pointerUpHandler);
            GameObject eventHandler = ExecuteEvents.GetEventHandler <IPointerClickHandler>(gameObject1);

            if ((UnityEngine.Object)currentPointerData.pointerPress == (UnityEngine.Object)eventHandler && currentPointerData.eligibleForClick)
            {
                ExecuteEvents.Execute <IPointerClickHandler>(currentPointerData.pointerPress, (BaseEventData)currentPointerData, ExecuteEvents.pointerClickHandler);
            }
            else if ((UnityEngine.Object)currentPointerData.pointerDrag != (UnityEngine.Object)null && currentPointerData.dragging)
            {
                ExecuteEvents.ExecuteHierarchy <IDropHandler>(gameObject1, (BaseEventData)currentPointerData, ExecuteEvents.dropHandler);
            }
            currentPointerData.eligibleForClick = false;
            currentPointerData.pointerPress     = (GameObject)null;
            currentPointerData.rawPointerPress  = (GameObject)null;
            if ((UnityEngine.Object)currentPointerData.pointerDrag != (UnityEngine.Object)null && currentPointerData.dragging)
            {
                ExecuteEvents.Execute <IEndDragHandler>(currentPointerData.pointerDrag, (BaseEventData)currentPointerData, ExecuteEvents.endDragHandler);
            }
            currentPointerData.dragging    = false;
            currentPointerData.pointerDrag = (GameObject)null;
            if (!((UnityEngine.Object)gameObject1 != (UnityEngine.Object)currentPointerData.pointerEnter))
            {
                return;
            }
            this.HandlePointerExitAndEnter(currentPointerData, (GameObject)null);
            this.HandlePointerExitAndEnter(currentPointerData, gameObject1);
        }
Example #19
0
 static public int get_buttonData(IntPtr l)
 {
     UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData o = (UnityEngine.EventSystems.PointerInputModule.MouseButtonEventData)checkSelf(l);
     pushValue(l, o.buttonData);
     return(1);
 }
        protected void ProcessMousePress(PointerInputModule.MouseButtonEventData data)
        {
            PointerEventData buttonData = data.buttonData;
            GameObject       gameObject = buttonData.pointerCurrentRaycast.gameObject;

            if (data.PressedThisFrame())
            {
                buttonData.eligibleForClick    = true;
                buttonData.delta               = Vector2.zero;
                buttonData.dragging            = false;
                buttonData.useDragThreshold    = true;
                buttonData.pressPosition       = buttonData.position;
                buttonData.pointerPressRaycast = buttonData.pointerCurrentRaycast;
                base.DeselectIfSelectionChanged(gameObject, buttonData);
                GameObject eventHandler = ExecuteEvents.ExecuteHierarchy <IPointerDownHandler>(gameObject, buttonData, ExecuteEvents.pointerDownHandler);
                if (eventHandler == null)
                {
                    eventHandler = ExecuteEvents.GetEventHandler <IPointerClickHandler>(gameObject);
                }
                float unscaledTime = Time.unscaledTime;
                if (eventHandler == buttonData.lastPress)
                {
                    float num2 = unscaledTime - buttonData.clickTime;
                    if (num2 < 0.3f)
                    {
                        buttonData.clickCount++;
                    }
                    else
                    {
                        buttonData.clickCount = 1;
                    }
                    buttonData.clickTime = unscaledTime;
                }
                else
                {
                    buttonData.clickCount = 1;
                }
                buttonData.pointerPress    = eventHandler;
                buttonData.rawPointerPress = gameObject;
                buttonData.clickTime       = unscaledTime;
                buttonData.pointerDrag     = ExecuteEvents.GetEventHandler <IDragHandler>(gameObject);
                if (buttonData.pointerDrag != null)
                {
                    ExecuteEvents.Execute <IInitializePotentialDragHandler>(buttonData.pointerDrag, buttonData, ExecuteEvents.initializePotentialDrag);
                }
            }
            if (data.ReleasedThisFrame())
            {
                ExecuteEvents.Execute <IPointerUpHandler>(buttonData.pointerPress, buttonData, ExecuteEvents.pointerUpHandler);
                GameObject obj4 = ExecuteEvents.GetEventHandler <IPointerClickHandler>(gameObject);
                if ((buttonData.pointerPress == obj4) && buttonData.eligibleForClick)
                {
                    ExecuteEvents.Execute <IPointerClickHandler>(buttonData.pointerPress, buttonData, ExecuteEvents.pointerClickHandler);
                }
                else if ((buttonData.pointerDrag != null) && buttonData.dragging)
                {
                    ExecuteEvents.ExecuteHierarchy <IDropHandler>(gameObject, buttonData, ExecuteEvents.dropHandler);
                }
                buttonData.eligibleForClick = false;
                buttonData.pointerPress     = null;
                buttonData.rawPointerPress  = null;
                if ((buttonData.pointerDrag != null) && buttonData.dragging)
                {
                    ExecuteEvents.Execute <IEndDragHandler>(buttonData.pointerDrag, buttonData, ExecuteEvents.endDragHandler);
                }
                buttonData.dragging    = false;
                buttonData.pointerDrag = null;
                if (gameObject != buttonData.pointerEnter)
                {
                    base.HandlePointerExitAndEnter(buttonData, null);
                    base.HandlePointerExitAndEnter(buttonData, gameObject);
                }
            }
        }