Exemplo n.º 1
0
 public static bool IsExistTouchEvent(ITouchEvent iTouchEvent)
 {
     foreach (Collider key in GUIManager.colliders.Keys)
     {
         if (GUIManager.colliders.ContainsKey(key) && GUIManager.colliders[key] == iTouchEvent)
         {
             return(true);
         }
     }
     return(false);
 }
Exemplo n.º 2
0
    /// <summary>
    /// 移除点击处理
    /// </summary>
    /// <param name="handler">Handler.</param>
    public void RemoveTouchHandler(ITouchEvent handler)
    {
        if (handler == null)
        {
            return;
        }

        if (_TouchDelegates.Contains(handler))
        {
            _TouchDelegates.Remove(handler);
        }
    }
Exemplo n.º 3
0
    /// <summary>
    /// 注册点击处理
    /// </summary>
    /// <param name="handler">Handler.</param>
    public void AddTouchHandler(ITouchEvent handler)
    {
        if (handler == null)
        {
            return;
        }

        if (!_TouchDelegates.Contains(handler))
        {
            _TouchDelegates.Add(handler);
        }
    }
Exemplo n.º 4
0
    public static void AddCollider(ITouchEvent iTouchEvent)
    {
        Collider component = iTouchEvent.gObject.GetComponent <Collider>();

        if (component != null)
        {
            if (!GUIManager.colliders.ContainsKey(component))
            {
                GUIManager.colliders.Add(component, iTouchEvent);
            }
            GUIManager.AddGUICollider(iTouchEvent);
        }
    }
Exemplo n.º 5
0
    private static void AddGUICollider(ITouchEvent iTouchEvent)
    {
        string gName = iTouchEvent.gName;

        if (!GUIManager.gUIColliders.ContainsKey(gName))
        {
            LinkedList <ITouchEvent> value = new LinkedList <ITouchEvent>();
            GUIManager.gUIColliders.Add(gName, value);
            GUIManager.gUIColliders[gName].AddFirst(iTouchEvent);
        }
        else
        {
            GUIManager.gUIColliders[gName].AddFirst(iTouchEvent);
        }
    }
Exemplo n.º 6
0
    public static void DeleteCollider(ITouchEvent iTouchEvent)
    {
        Collider component = iTouchEvent.gObject.GetComponent <Collider>();

        if (component != null)
        {
            if (GUIManager.colliders.ContainsKey(component))
            {
                GUIManager.colliders.Remove(component);
            }
            if (GUIManager.gUIColliders.ContainsKey(component.name))
            {
                GUIManager.gUIColliders.Remove(component.name);
            }
        }
    }
Exemplo n.º 7
0
    public static GameObject GetColliderFirstActive(string colName)
    {
        LinkedList <ITouchEvent> collider = GUIManager.GetCollider(colName);

        if (collider == null)
        {
            return(null);
        }
        LinkedListNode <ITouchEvent> linkedListNode = collider.First;

        while (linkedListNode != null)
        {
            ITouchEvent value = linkedListNode.Value;
            linkedListNode = linkedListNode.Next;
            if (value.gObject.activeSelf)
            {
                return(value.gObject);
            }
        }
        return(null);
    }
Exemplo n.º 8
0
    private static void DeleteGUICollider(ITouchEvent iTouchEvent)
    {
        string gName = iTouchEvent.gName;

        if (GUIManager.gUIColliders.ContainsKey(gName))
        {
            LinkedListNode <ITouchEvent> linkedListNode = GUIManager.gUIColliders[gName].First;
            while (linkedListNode != null)
            {
                ITouchEvent value = linkedListNode.Value;
                LinkedListNode <ITouchEvent> node = linkedListNode;
                linkedListNode = linkedListNode.Next;
                if (value == iTouchEvent)
                {
                    GUIManager.gUIColliders[gName].Remove(node);
                    if (GUIManager.gUIColliders[gName].Count < 1)
                    {
                        GUIManager.gUIColliders.Remove(gName);
                    }
                }
            }
        }
    }