Example #1
0
    public static void StartHoldGesture(IHoldGesture receiver)
    {
        HoldGestureObserver instance = HoldGestureObserver.Instance;

        instance.mReceiver    = receiver;
        instance.mPressTime   = Time.get_unscaledTime();
        instance.mPressStart  = Vector2.op_Implicit(Input.get_mousePosition());
        instance.mOldPosition = instance.mPressStart;
        instance.mTriggered   = false;
        instance.mDragDist    = 0.0f;
    }
Example #2
0
 private void Update()
 {
     if (this.mReceiver == null)
     {
         return;
     }
     if (this.mReceiver is Object && Object.op_Equality(this.mReceiver as Object, (Object)null))
     {
         this.mReceiver = (IHoldGesture)null;
     }
     else
     {
         if (!this.mTriggered)
         {
             Vector2             vector2_1           = Vector2.op_Implicit(Input.get_mousePosition());
             HoldGestureObserver holdGestureObserver = this;
             double  mDragDist = (double)holdGestureObserver.mDragDist;
             Vector2 vector2_2 = Vector2.op_Subtraction(vector2_1, this.mOldPosition);
             // ISSUE: explicit reference operation
             double magnitude = (double)((Vector2)@vector2_2).get_magnitude();
             holdGestureObserver.mDragDist = (float)(mDragDist + magnitude);
             this.mOldPosition             = vector2_1;
             if (Input.GetMouseButton(0) && (double)this.mDragDist <= 10.0 && (double)Time.get_unscaledTime() - (double)this.mPressTime >= 0.5)
             {
                 this.mTriggered = true;
                 this.mReceiver.OnPointerHoldStart();
             }
         }
         if (Input.GetMouseButton(0))
         {
             return;
         }
         this.mReceiver.OnPointerHoldEnd();
         this.mReceiver = (IHoldGesture)null;
     }
 }