Exemplo n.º 1
0
        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();
            }
        }
Exemplo n.º 2
0
        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();
                }
            }
        }
Exemplo n.º 3
0
        public void OnBeginDrag(PointerEventData eventData)
        {
            if (TouchPool.ContainsKey(eventData.pointerId))
            {
                return;
            }
            if (IgnoreMouse && eventData.pointerId < 0)
            {
                return;
            }

            //拖拽池添加
            AddTouchData(eventData);

            if (TouchOnStartDrag != null)
            {
                TouchOnStartDrag();
            }
        }
Exemplo n.º 4
0
        public void OnEndDrag(PointerEventData eventData)
        {
            if (!TouchPool.ContainsKey(eventData.pointerId))
            {
                return;
            }
            if (IgnoreMouse && eventData.pointerId < 0)
            {
                return;
            }

            if (TouchOnEndDrag != null)
            {
                TouchOnEndDrag();
            }

            //拖拽池删除
            RemoveTouchData(eventData);
        }
Exemplo n.º 5
0
        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;
            }
        }
Exemplo n.º 6
0
        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;
            }
        }
Exemplo n.º 7
0
 /// <summary>
 /// 添加触摸点
 /// </summary>
 /// <param name="eventData">触摸点</param>
 public void AddTouchData(PointerEventData eventData)
 {
     TouchIds.Add(eventData.pointerId);
     TouchPool.Add(eventData.pointerId, eventData);
 }
Exemplo n.º 8
0
 /// <summary>
 /// 删除触摸点
 /// </summary>
 /// <param name="eventData">触摸点</param>
 public void RemoveTouchData(PointerEventData eventData)
 {
     TouchIds.Remove(eventData.pointerId);
     TouchPool.Remove(eventData.pointerId);
 }