UnityEngine.EventSystems.PointerInputModule.ProcessDrag C# (CSharp) Method

ProcessDrag() protected method

Process the drag for the current frame with the given pointer event.

protected ProcessDrag ( PointerEventData pointerEvent ) : void
pointerEvent PointerEventData
return void
        protected virtual void ProcessDrag(PointerEventData pointerEvent)
        {
            if ((pointerEvent.IsPointerMoving() && (Cursor.lockState != CursorLockMode.Locked)) && (pointerEvent.pointerDrag != null))
            {
                if (!pointerEvent.dragging && ShouldStartDrag(pointerEvent.pressPosition, pointerEvent.position, (float) base.eventSystem.pixelDragThreshold, pointerEvent.useDragThreshold))
                {
                    ExecuteEvents.Execute<IBeginDragHandler>(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.beginDragHandler);
                    pointerEvent.dragging = true;
                }
                if (pointerEvent.dragging)
                {
                    if (pointerEvent.pointerPress != pointerEvent.pointerDrag)
                    {
                        ExecuteEvents.Execute<IPointerUpHandler>(pointerEvent.pointerPress, pointerEvent, ExecuteEvents.pointerUpHandler);
                        pointerEvent.eligibleForClick = false;
                        pointerEvent.pointerPress = null;
                        pointerEvent.rawPointerPress = null;
                    }
                    ExecuteEvents.Execute<IDragHandler>(pointerEvent.pointerDrag, pointerEvent, ExecuteEvents.dragHandler);
                }
            }
        }