Esempio n. 1
0
    public void OnEZDragDrop(EZDragDropParams parms)
    {
        if (this == null)
        {
            return;
        }
        if (this.host == null)
        {
            return;
        }
        EZDragDropEvent evt = parms.evt;

        if (evt == EZDragDropEvent.Begin)
        {
            if (this.host.transform == null)
            {
                return;
            }
            Transform transform = this.host.transform;
            if (transform == null)
            {
                return;
            }
            this.dragOrigin  = transform.localPosition;
            this.isDragging  = true;
            this.dropHandled = false;
            this.dragPlane.SetNormalAndPosition(transform.TransformDirection(transform.forward * -1f), transform.position);
            Ray   ray = parms.ptr.camera.ScreenPointToRay(parms.ptr.camera.WorldToScreenPoint(transform.position));
            float num;
            this.dragPlane.Raycast(ray, out num);
            this.dragOriginOffset = ray.origin + ray.direction * (num - this.host.DragOffset);
            if (transform.parent != null)
            {
                this.dragOriginOffset = transform.parent.InverseTransformPoint(this.dragOriginOffset);
            }
            this.touchCompensationOffset = new Vector3(-this.host.MouseOffset, this.host.MouseOffset, 0f);
        }
        if (this.dragDropDelegate != null)
        {
            this.dragDropDelegate(parms);
        }
        if (parms.evt == EZDragDropEvent.Dropped && parms.dragObj.Equals(this.host))
        {
            if (this.dropHandled)
            {
                this.isDragging = false;
                this.dropTarget = null;
            }
            else
            {
                this.CancelDrag();
            }
        }
    }
Esempio n. 2
0
 /// <summary>
 /// Constructs an EZDragDropParams object.
 /// </summary>
 /// <param name="e">The drag/drop event that occurred.</param>
 /// <param name="obj">The object being dragged.</param>
 /// <param name="p">The pointer involved in the drag/drop operation.</param>
 public EZDragDropParams(EZDragDropEvent e, IUIObject obj, POINTER_INFO p)
 {
     evt     = e;
     dragObj = obj;
     ptr     = p;
 }
Esempio n. 3
0
	/// <summary>
	/// Constructs an EZDragDropParams object.
	/// </summary>
	/// <param name="e">The drag/drop event that occurred.</param>
	/// <param name="obj">The object being dragged.</param>
	/// <param name="p">The pointer involved in the drag/drop operation.</param>
	public EZDragDropParams(EZDragDropEvent e, IUIObject obj, POINTER_INFO p)
	{
		evt = e;
		dragObj = obj;
		ptr = p;
	}
 public EZDragDropParams(EZDragDropEvent e, IUIObject obj, POINTER_INFO p)
 {
     this.evt     = e;
     this.dragObj = obj;
     this.ptr     = p;
 }