Exemple #1
0
        /// <summary>
        /// MouseOut event that is wired into the event system.
        /// </summary>
        /// <param name="eventData">Event system data</param>
        public void MouseOut(BaseEventData eventData)
        {
            if (IsLeftMouseDown)
            {
                IsLeftMouseDown = false;
                if (OnMouseUp != null)
                {
                    OnMouseUp(MouseButton.Left);
                }
            }

            if (IsRightMouseDown)
            {
                IsRightMouseDown = false;
                if (OnMouseUp != null)
                {
                    OnMouseUp(MouseButton.Right);
                }
            }

            if (IsMiddleMouseDown)
            {
                IsMiddleMouseDown = false;
                if (OnMouseUp != null)
                {
                    OnMouseUp(MouseButton.Middle);
                }
            }

            IsMouseOver = false;

            TooltipManager.PopDown();

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

            AfterEvent();
        }
        /// <summary>
        /// Updates which object is currently selected.
        /// </summary>
        /// <param name="selection">The Selectable component of the new selected GameObject.</param>
        public static void UpdateSelection(Selectable selection)
        {
            lock (globalSelectionLock)
            {
                if (selection == globalSelection)
                {
                    return;
                }

                var oldSelection = globalSelection;
                globalSelection = selection;

                if (oldSelection != null)
                {
                    try
                    {
                        oldSelection.Deselect();
                    }
                    catch (Exception e)
                    {
                        GameLogger.Warning("Exception during Deselect. Object = {0}. Ex = {1}.", oldSelection.GetType().Name, e);
                    }
                }

                if (globalSelection != null)
                {
                    try
                    {
                        globalSelection.Select();
                    }
                    catch (Exception e)
                    {
                        GameLogger.Warning("Exception during Select. Object = {0}. Ex = {1}.", oldSelection.GetType().Name, e);
                    }
                }

                TooltipManager.PopDown();
            }
        }