protected static PointerEventData.FramePressState StateForMouseButton(int buttonId)
        {
            var pressed  = MyInput.GetMouseButtonDown(buttonId);
            var released = MyInput.GetMouseButtonUp(buttonId);

            if (pressed && released)
            {
                return(PointerEventData.FramePressState.PressedAndReleased);
            }
            if (pressed)
            {
                return(PointerEventData.FramePressState.Pressed);
            }
            if (released)
            {
                return(PointerEventData.FramePressState.Released);
            }
            return(PointerEventData.FramePressState.NotChanged);
        }