コード例 #1
0
 /// <summary>
 /// Handles the MouseEntered event of the <see cref="GameBase.RenderWindow"/>.
 /// </summary>
 /// <param name="sender">The source of the event.</param>
 /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
 void rw_MouseEntered(object sender, EventArgs e)
 {
     if (MouseEntered != null)
     {
         MouseEntered.Raise(this, e);
     }
 }
コード例 #2
0
ファイル: UIObject.cs プロジェクト: jmortiger/ShiftingHues
 private void OnMouseEnterParentContainer(/*Input.*/ MouseEventArgs e)
 {
     if (Bounds.Contains(e.CurrState.Position) && !Bounds.Contains(e.PrevState.Position))
     {
         MouseEntered?.Invoke(e);
     }
     wasEnteredChecked = true;
 }
コード例 #3
0
 public void OnPointerEnter(PointerEventData eventData)
 {
     if (IsCurrentlyClickable)
     {
         _isHovering = true;
         MouseEntered.Invoke();
     }
 }
コード例 #4
0
ファイル: Soul.cs プロジェクト: UnhappyDogChew/ChessRPG
 public void MouseEnter()
 {
     if (locationState == MouseLocationState.Leaved)
     {
         MouseEntered?.Invoke(this, null);
         alpha         = 150;
         locationState = MouseLocationState.Entered;
     }
 }
コード例 #5
0
 public void MouseEnter()
 {
     if (locationState == MouseLocationState.Leaved)
     {
         MouseEntered?.Invoke(this, null);
         textureIndex  = 1;
         locationState = MouseLocationState.Entered;
     }
 }
コード例 #6
0
 public virtual void OnMouseEntered(MouseEventArgs e)
 {
     if (Enabled && !Hovered)
     {
         if (HoverBounds.Contains(e.Position))
         {
             Hovered = true;
             if (HoveredStyle != null)
             {
                 UpdateStyle();
             }
             MouseEntered?.Invoke(this, EventArgs.Empty);
         }
     }
 }
コード例 #7
0
        public InputEvents(CluwneWindow window)
        {
            // if dummy don't attach events
            if (window == null)
            {
                return;
            }

            SFML.Graphics.RenderWindow SWindow = window.SFMLWindow;

            SWindow.KeyPressed          += (sender, args) => KeyPressed?.Invoke(sender, (KeyEventArgs)args);
            SWindow.KeyReleased         += (sender, args) => KeyReleased?.Invoke(sender, (KeyEventArgs)args);
            SWindow.MouseButtonPressed  += (sender, args) => MouseButtonPressed?.Invoke(sender, (MouseButtonEventArgs)args);
            SWindow.MouseButtonReleased += (sender, args) => MouseButtonReleased?.Invoke(sender, (MouseButtonEventArgs)args);
            SWindow.MouseMoved          += (sender, args) => MouseMoved?.Invoke(sender, (MouseMoveEventArgs)args);
            SWindow.MouseWheelScrolled  += (sender, args) => MouseWheelMoved?.Invoke(sender, (MouseWheelScrollEventArgs)args);
            SWindow.MouseEntered        += (sender, args) => MouseEntered?.Invoke(sender, args);
            SWindow.MouseLeft           += (sender, args) => MouseLeft?.Invoke(sender, args);
            SWindow.TextEntered         += (sender, args) => TextEntered?.Invoke(sender, (TextEventArgs)args);
        }
コード例 #8
0
        public void MouseEnter()
        {
            if (locationState == MouseLocationState.Leaved)
            {
                MouseEntered?.Invoke(this, null);
                if (!isChecked)
                {
                    textureIndex = 1;
                    foreach (CheckBox checkBox in synchronized)
                    {
                        if (!checkBox.isChecked)
                        {
                            checkBox.SetTextureIndex(1);
                        }
                    }
                }

                locationState = MouseLocationState.Entered;
            }
        }
コード例 #9
0
        public InputEvents(RenderWindow window)
        {
            // if dummy don't attach events
            if (window == null)
            {
                return;
            }

            _window = window;

            _window.KeyPressed          += (sender, args) => KeyPressed?.Invoke(sender, args);
            _window.KeyReleased         += (sender, args) => KeyReleased?.Invoke(sender, args);
            _window.MouseButtonPressed  += (sender, args) => MouseButtonPressed?.Invoke(sender, args);
            _window.MouseButtonReleased += (sender, args) => MouseButtonReleased?.Invoke(sender, args);
            _window.MouseMoved          += (sender, args) => MouseMoved?.Invoke(sender, args);
            _window.MouseWheelMoved     += (sender, args) => MouseWheelMoved?.Invoke(sender, args);
            _window.MouseEntered        += (sender, args) => MouseEntered?.Invoke(sender, args);
            _window.MouseLeft           += (sender, args) => MouseLeft?.Invoke(sender, args);
            _window.TextEntered         += (sender, args) => TextEntered?.Invoke(sender, args);
        }
コード例 #10
0
ファイル: Button.cs プロジェクト: oigi333/BattleShips
        /// <summary>
        /// Updates the button calling all the appropriate events.
        /// </summary>
        /// <param name="window">The render window the button is located in</param>
        public void Update(RenderWindow window)
        {
            Vector2i mousePosition = Mouse.GetPosition(window);

            bool hovered = false;

            if (GetGlobalBounds().Contains(mousePosition.X, mousePosition.Y))
            {
                if (!lastHover)
                {
                    MouseEntered?.Invoke(this, new EventArgs());
                }
                Hover?.Invoke(this, new EventArgs());
                hovered = lastHover = true;
            }
            else if (lastHover)
            {
                MouseLeave?.Invoke(this, new EventArgs());
                lastHover = false;
            }

            if (Mouse.IsButtonPressed(Mouse.Button.Left))
            {
                if (hovered)
                {
                    if (!lastMousePressed)
                    {
                        Clicked?.Invoke(this, new EventArgs());
                    }
                    Pressed?.Invoke(this, new EventArgs());
                }
                lastMousePressed = true;
            }
            else
            {
                lastMousePressed = false;
            }
        }
コード例 #11
0
ファイル: Control.cs プロジェクト: APmoss/ProjectWander
        public virtual void UpdateInput(InputManager input)
        {
            if (Enabled && GlobalIntersection != Rectangle.Empty)              // && !GuiManager.MouseRecieved) {
            {
                var currentMousePoint = new Point(input.MouseState.X, input.MouseState.Y);
                var lastMousePoint    = new Point(input.LastMouseState.X, input.LastMouseState.Y);

                if (GlobalIntersection.Contains(currentMousePoint) && !GuiManager.MouseRecieved)
                {
                    ContainsMouse = true;
                    if (!GlobalIntersection.Contains(lastMousePoint))
                    {
                        if (MouseEntered != null)
                        {
                            MouseEntered.Invoke(this, EventArgs.Empty);
                        }
                    }

                    if (RecievesMouse)
                    {
                        GuiManager.MouseRecieved = true;
                    }
                }
                else
                {
                    ContainsMouse = false;
                    if (GlobalIntersection.Contains(lastMousePoint))
                    {
                        if (MouseExited != null)
                        {
                            MouseExited.Invoke(this, EventArgs.Empty);
                        }
                    }
                }

                if (ContainsMouse)
                {
                    if (input.IsMousePressed(MouseButton.Left))
                    {
                        if (LeftClicked != null)
                        {
                            LeftClicked.Invoke(this, EventArgs.Empty);
                        }
                    }
                    if (input.IsMousePressed(MouseButton.Middle))
                    {
                        if (MiddleClicked != null)
                        {
                            MiddleClicked.Invoke(this, EventArgs.Empty);
                        }
                    }
                    if (input.IsMousePressed(MouseButton.Right))
                    {
                        if (RightClicked != null)
                        {
                            RightClicked.Invoke(this, EventArgs.Empty);
                        }
                    }
                }
            }

            var childrenToUpdate = new Stack <Control>(Children);

            while (childrenToUpdate.Count > 0)
            {
                Control child = childrenToUpdate.Pop();

                if (!child.Hidden)
                {
                    child.UpdateInput(input);
                }
            }
        }
コード例 #12
0
 /// <summary>
 /// Fired by the MouseEntered event.
 /// </summary>
 /// <param name="sender">Sender object.</param>
 /// <param name="e">Event arguments.</param>
 protected virtual void OnMouseEntered(object sender, MouseEventArgs e)
 {
     MouseEntered?.Invoke(this, e);
     Hovered = true;
 }
コード例 #13
0
ファイル: Widget.cs プロジェクト: communityus-branch/Myra
 public virtual void OnMouseEntered()
 {
     MouseEntered?.Invoke(this, EventArgs.Empty);
 }
コード例 #14
0
 public virtual void OnMouseEntered()
 {
     IsMouseInside = true;
     MouseEntered.Invoke(this);
 }
コード例 #15
0
 public virtual void OnMouseEntered()
 {
     MouseEntered?.Invoke(this);
     StyleChanged = true;
 }
コード例 #16
0
ファイル: MouseInterceptor.cs プロジェクト: kennipj/Blish-HUD
 private void OnMouseEntered(MouseEventArgs e)
 {
     MouseEntered?.Invoke(this, e);
 }
コード例 #17
0
 protected virtual void OnMouseEntered(MouseState mouseState)
 {
     Highlighted = true;
     MouseEntered?.Invoke(this, mouseState);
 }
コード例 #18
0
 public virtual void OnMouseEntered()
 {
     MouseEntered.Invoke(this);
 }
コード例 #19
0
ファイル: WindowBackend.cs プロジェクト: ms2mml/osu-framework
 protected virtual void OnMouseEntered() => MouseEntered?.Invoke();
コード例 #20
0
ファイル: Control.cs プロジェクト: zenforic/ZMH5_Helios
 protected virtual void OnMouseEntered(EventArgs e)
 {
     MouseEntered?.Invoke(this, e);
 }