Example #1
0
        internal override void Update(GuiMouseState mouseState)
        {
            if (this.ContainsPoint(mouseState.MouseX, mouseState.MouseY))
            {
                if (!this.Hovered)
                {
                    this.Hovered = true;
                    Gui.InvalidateVisual();
                }

                if (mouseState.MouseLeftDown && !this.Active)
                {
                    this.Active = true;
                    OnPressed?.Invoke(this, EventArgs.Empty);
                    Gui.InvalidateVisual();
                }
                else if (!mouseState.MouseLeftDown && this.Active)
                {
                    this.Active = false;
                    OnReleased?.Invoke(this, EventArgs.Empty);
                    OnClick?.Invoke(this, EventArgs.Empty);
                    Gui.InvalidateVisual();
                }
            }
            else
            {
                if (this.Hovered)
                {
                    if (this.Active)
                    {
                        this.Active = false;
                    }

                    this.Hovered = false;

                    Gui.InvalidateVisual();
                }
            }
        }
Example #2
0
 internal GuiButton(Gui gui, GuiContainer parent) : base(gui, parent)
 {
     w = DefaultSize.W;
     h = DefaultSize.H;
 }
Example #3
0
 internal GuiPanel(Gui gui, GuiContainer parent) : base(gui, parent)
 {
 }