summaryrefslogtreecommitdiff
path: root/source/ui/elements/Clickable.cs
blob: 01436a3497d4373c6f10245c734598b3668ce5a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using Microsoft.Xna.Framework;
using MonoGame.Extended.Input;

namespace Celesteia.UI.Elements {
    public class Clickable : Element, IClickable
    {
        private bool _clicked;

        public override void OnMouseOut() {
            _clicked = false;
            base.OnMouseOut();
        }
        public virtual void OnMouseDown(MouseButton button, Point position) => _clicked = true;
        public virtual void OnMouseUp(MouseButton button, Point position) => _clicked = false;

        public bool GetClicked() => _clicked;
    }

    public delegate void HoverEvent();
    public delegate void ClickEvent(MouseButton button, Point position);
}