public void OnPointerEnter(PointerEventData eventData) { if (TouchPool.ContainsKey(eventData.pointerId)) { return; } if (IgnoreMouse && eventData.pointerId < 0) { return; } touchCount++; if (touchCount == 1) { isEnter = true; MarkerClock.Reset_Marker(); } //停留池添加 AddTouchData(eventData); if (TouchOnEnter != null) { TouchOnEnter(); } }
public void OnPointerClick(PointerEventData eventData) { if (!TouchPool.ContainsKey(eventData.pointerId)) { return; } if (IgnoreMouse && eventData.pointerId < 0) { return; } if (TouchOnClick != null) { TouchOnClick(); } if (touchCount == 0 && isTouch) { if (!isLongDown && TouchOnShortClick != null) { TouchOnShortClick(); } if (isLongDown && TouchOnLongClick != null) { TouchOnLongClick(); } } }
public void OnBeginDrag(PointerEventData eventData) { if (TouchPool.ContainsKey(eventData.pointerId)) { return; } if (IgnoreMouse && eventData.pointerId < 0) { return; } //拖拽池添加 AddTouchData(eventData); if (TouchOnStartDrag != null) { TouchOnStartDrag(); } }
public void OnEndDrag(PointerEventData eventData) { if (!TouchPool.ContainsKey(eventData.pointerId)) { return; } if (IgnoreMouse && eventData.pointerId < 0) { return; } if (TouchOnEndDrag != null) { TouchOnEndDrag(); } //拖拽池删除 RemoveTouchData(eventData); }
public void OnPointerExit(PointerEventData eventData) { if (!TouchPool.ContainsKey(eventData.pointerId)) { return; } if (IgnoreMouse && eventData.pointerId < 0) { return; } touchCount--; if (TouchOnExit != null) { TouchOnExit(); } if (touchCount == 0) { if (!isLongEnter && TouchOnShortExit != null) { TouchOnShortExit(); } if (isLongEnter && TouchOnLongExit != null) { TouchOnLongExit(); } } //停留池删除 RemoveTouchData(eventData); if (touchCount == 0) { isEnter = false; isLongEnter = false; } }
public void OnPointerUp(PointerEventData eventData) { if (!TouchPool.ContainsKey(eventData.pointerId)) { return; } if (IgnoreMouse && eventData.pointerId < 0) { return; } touchCount--; if (TouchOnUp != null) { TouchOnUp(); } if (touchCount == 0 && isTouch) { if (!isLongDown && TouchOnShortUp != null) { TouchOnShortUp(); } if (isLongDown && TouchOnLongUp != null) { TouchOnLongUp(); } } //触摸池删除 RemoveTouchData(eventData); if (touchCount == 0) { isDown = false; isLongDown = false; } }
/// <summary> /// 添加触摸点 /// </summary> /// <param name="eventData">触摸点</param> public void AddTouchData(PointerEventData eventData) { TouchIds.Add(eventData.pointerId); TouchPool.Add(eventData.pointerId, eventData); }
/// <summary> /// 删除触摸点 /// </summary> /// <param name="eventData">触摸点</param> public void RemoveTouchData(PointerEventData eventData) { TouchIds.Remove(eventData.pointerId); TouchPool.Remove(eventData.pointerId); }