void IInputManager.TouchMove(TouchMoveEvent moveEvent) { DateTime now = DateTime.Now; _lastInputTime = now; _lastMouseUsageTime = now; //TODO: same as mouse, or another? TryEvent_NoLock(ToInputEvent<InputTouchMoveEvent>(moveEvent)); }
public override void OnTouchMove(TouchMoveEvent touchEventArgs) { base.OnTouchMove(touchEventArgs); if (!touchEventArgs.IsPrimaryContact) { return; } if (_lastTouchEvent != null) { // Transform screen (i.e. 720p) to skin coordinates (i.e. 1080p) float lastX = _lastTouchEvent.LocationX; float lastY = _lastTouchEvent.LocationY; float currX = touchEventArgs.LocationX; float currY = touchEventArgs.LocationY; if (!TransformMouseCoordinates(ref lastX, ref lastY) || !TransformMouseCoordinates(ref currX, ref currY)) { return; } var scrollX = currX - lastX; var scrollY = currY - lastY; IScrollViewerFocusSupport svfs = FindScrollControl() as IScrollViewerFocusSupport; if (svfs == null) { return; } svfs.Scroll(scrollX, scrollY); } }
private void CheckInput() { if (Input.touchCount > 0 && AbleToInput) { Touch touch = Input.GetTouch(0); if (touch.phase == TouchPhase.Began) { TouchStartEvent?.Invoke(touch.position); _inputSession = true; } if (_inputSession) { if (touch.phase == TouchPhase.Moved) { TouchMoveEvent?.Invoke(touch.position); } if (touch.phase == TouchPhase.Ended) { AbleToInput = false; TouchEndEvent?.Invoke(); _inputSession = false; } } } }
internal void ExecuteTouchMove(TouchMoveEvent evt) { var dlgt = TouchMove; if (dlgt != null) { dlgt(this, evt); } }
void HandleTouchMove3(TouchMoveEvent args) { if (pickedNode != null) { var graphics = GetSubsystem <Graphics>(); ConstraintMouse2D constraintMouse = pickedNode.GetComponent <ConstraintMouse2D>(); Vector3 pos = camera.ScreenToWorldPoint(new Vector3((float)args.X / graphics.Width, (float)args.Y / graphics.Height, 0.0f)); constraintMouse.Target = new Vector2(pos.X, pos.Y); } }
protected override void OnTouchMove(TouchMoveEvent e) { if (IsDisposed) { return; } var circle = drawableTouches[(int)e.Touch.Source]; AddInternal(new FadingCircle(circle)); circle.Position = e.Touch.Position; }
private void MainForm_OnTouchMove(object sender, TouchMoveEvent uiTouchEventArgs) { if (_renderThreadStopped) { return; } try { IInputManager inputManager = ServiceRegistration.Get <IInputManager>(); inputManager.TouchMove(uiTouchEventArgs); } catch (Exception ex) { ServiceRegistration.Get <ILogger>().Error("SkinEngine MainForm: Error occured in TouchDown handler", ex); } }
private void HandleTouchMove(object sender, TouchMoveEvent touchEvent) { if (!HasInputFocus) { return; } try { lock (_syncObj) if (_root.CanHandleMouseMove() && GraphicsDevice.RenderPass == RenderPassType.SingleOrFirstPass) { _root.OnTouchMove(touchEvent); } } catch (Exception e) { ServiceRegistration.Get <ILogger>().Error("Screen '{0}': Unhandled exception while processing touch move event", e, _resourceName); } }
public void tUpdate() { if (UnityUtil.CurPlatform == UnityUtil.PlatformEnum.android || UnityUtil.CurPlatform == UnityUtil.PlatformEnum.ios) { //在pc上,使用leanTouch模拟手势触控,是监控不到Input.touchCount的,所以不做这个判断 //移动平台加这个判断,避免性能浪费 //没触碰就掠过 if (Input.touchCount <= 0) { return; } } //没注册事件也掠过,尽量避免浪费cpu if (null == TouchMoveEvent && null == TouchScaleEvent) { return; } //发出拖动事件 Vector2 delta = GetScreenDelta(); TouchMoveEvent.Invoke(delta); if (UnityUtil.CurPlatform == UnityUtil.PlatformEnum.android || UnityUtil.CurPlatform == UnityUtil.PlatformEnum.ios) { //touch小于2不计算缩放,要求双指缩放 if (Input.touchCount < 2) { return; } } //发出缩放事件 float ratio = GetPinchRatio(); TouchScaleEvent.Invoke(ratio); }
protected override void OnTouchMove(TouchMoveEvent e) { base.OnTouchMove(e); Hide(); }
public virtual void OnTouchMove(TouchMoveEvent touchEventArgs) { foreach (UIElement child in GetChildren()) { if (!child.IsVisible) continue; child.OnTouchMove(touchEventArgs); } }
public override void OnTouchMove(TouchMoveEvent touchEventArgs) { base.OnTouchMove(touchEventArgs); if (!touchEventArgs.IsPrimaryContact) return; if (_lastTouchEvent != null) { // Transform screen (i.e. 720p) to skin coordinates (i.e. 1080p) float lastX = _lastTouchEvent.LocationX; float lastY = _lastTouchEvent.LocationY; float currX = touchEventArgs.LocationX; float currY = touchEventArgs.LocationY; if (!TransformMouseCoordinates(ref lastX, ref lastY) || !TransformMouseCoordinates(ref currX, ref currY)) return; var scrollX = currX - lastX; var scrollY = currY - lastY; IScrollViewerFocusSupport svfs = FindScrollControl() as IScrollViewerFocusSupport; if (svfs == null) return; svfs.Scroll(scrollX, scrollY); } }
public virtual bool OnTouchMove(TouchMoveEvent e) { return(false); }
public override bool OnTouchMove(TouchMoveEvent e) { return(onTouchMove != null && onTouchMove(e)); }
public void TouchMoved(Touch touch) { TouchMoveEvent?.Invoke(touch); }
private void MainForm_OnTouchMove(object sender, TouchMoveEvent uiTouchEventArgs) { if (_renderThreadStopped) return; try { IInputManager inputManager = ServiceRegistration.Get<IInputManager>(); inputManager.TouchMove(uiTouchEventArgs); } catch (Exception ex) { ServiceRegistration.Get<ILogger>().Error("SkinEngine MainForm: Error occured in TouchDown handler", ex); } }
void HandleTouchMove3(TouchMoveEvent args) { if (pickedNode != null) { var graphics = GetSubsystem<Graphics>(); ConstraintMouse2D constraintMouse = pickedNode.GetComponent<ConstraintMouse2D>(); Vector3 pos = camera.ScreenToWorldPoint(new Vector3((float)args.X / graphics.Width, (float)args.Y / graphics.Height, 0.0f)); constraintMouse.Target = new Vector2(pos.X, pos.Y); } }