Пример #1
0
            void previousToggle()
            {
                if (m_FocusedToggle == null || m_Toggles.Count <= 1)
                {
                    return;
                }
                //Find the current toggle index
                int currentToggleIndex = 0;
                int toggleCount = m_Toggles.Count;
                for (int i = 0; i < toggleCount; i++)
                {
                    if (m_Toggles[i] == m_FocusedToggle)
                    {
                        currentToggleIndex = i;
                        break;
                    }
                }

                //Loop until we find the next or until we've made one lap around
                for(int i = 0; i < toggleCount; i++)
                {
                    if (currentToggleIndex - 1 < 0)
                    {
                        currentToggleIndex = toggleCount - 1;
                    }
                    else
                    {
                        currentToggleIndex--;
                    }
                    if (m_Toggles[currentToggleIndex].isInteractive == true)
                    {
                        m_FocusedToggle.setFocus(false);
                        m_FocusedToggle = m_Toggles[currentToggleIndex];
                        m_FocusedToggle.setFocus(true);
                        return;
                    }
                }
            }
Пример #2
0
            void nextToggle()
            {
                if (m_FocusedToggle == null || m_Toggles.Count <= 1)
                {
                    return;
                }
                int currentToggleIndex = 0;
                int toggleCount = m_Toggles.Count;
                for (int i = 0; i < toggleCount; i++)
                {
                    if (m_Toggles[i] == m_FocusedToggle)
                    {
                        currentToggleIndex = i;
                        break;
                    }
                }

                for(int i = 0; i < toggleCount; i++)
                {
                    if (currentToggleIndex + 1 >= m_Toggles.Count)
                    {
                        currentToggleIndex = 0;
                    }
                    else
                    {
                        currentToggleIndex++;
                    }
                    if (m_Toggles[currentToggleIndex].isInteractive == true)
                    {
                        m_FocusedToggle.setFocus(false);
                        m_FocusedToggle = m_Toggles[currentToggleIndex];
                        m_FocusedToggle.setFocus(true);
                        break;
                    }
                }
            }
Пример #3
0
            UIToggle3 handle3DToggles(Camera aCamera)
            {
                int layerMask = 1 << 9;
                RaycastHit hit;
                Ray ray = aCamera.ScreenPointToRay(Input.mousePosition);
                UIToggle3 toggle = null;

                if (Physics.Raycast(ray, out hit, Mathf.Infinity, layerMask))
                {
                    toggle = hit.collider.GetComponent<UIToggle3>();
                    if (toggle != null)
                    {
                        if (OnLookerUtils.anyMouseButtonDown())
                        {
                            if (m_FocusedToggle != null)
                            {
                                if (m_FocusedToggle != toggle && toggle.isInteractive == true)
                                {
                                    m_FocusedToggle.setFocus(false);
                                    m_FocusedToggle = toggle;
                                    m_FocusedToggle.setFocus(true);
                                }
                            }
                            else
                            {
                                if (toggle.isInteractive == true)
                                {
                                    m_FocusedToggle = toggle;
                                    m_FocusedToggle.setFocus(true);
                                }
                            }
                        }
                        toggle.processEvents();
                    }
                }
                return toggle;
            }
Пример #4
0
            public void registerToggle(UIToggle aToggle)
            {
                if (m_Toggles.Contains(aToggle) || aToggle == null)
                {
                    return;
                }

                if (aToggle.isInteractive == true && m_Toggles.Count == 0 && m_AllowClickOff == false)
                {
                    m_FocusedToggle = aToggle;
                    m_FocusedToggle.setFocus(true);
                }
                m_Toggles.Add(aToggle);
            }
Пример #5
0
 UIToggle2 handle2DToggles()
 {
     UIToggle2 uiToggle2 = null;
     bool toggleInFocus = toggleHitTest(out uiToggle2);
     if (toggleInFocus == true)
     {
         if (OnLookerUtils.anyMouseButtonDown())
         {
             //A toggle exists
             if (m_FocusedToggle != null)
             {
                 //Verify they arent the same
                 //Verify that the new toggle is interactive
                 if (m_FocusedToggle != uiToggle2 && uiToggle2.isInteractive)
                 {
                     m_FocusedToggle.setFocus(false);
                     m_FocusedToggle = uiToggle2;
                     m_FocusedToggle.setFocus(true);
                 }
             }
             else
             {
                 //Verify the new toggle is interactive
                 if (uiToggle2.isInteractive)
                 {
                     m_FocusedToggle = uiToggle2;
                     m_FocusedToggle.setFocus(true);
                 }
             }
         }
         uiToggle2.processEvents();
     }
     return uiToggle2;
 }