示例#1
0
        bool UIButton_OnControllerInput(UITouchEvent _Event)
        {
            Float3 mouse = new Float3(_Event.Position, 1);
            Float3x3 mat = GetTransformation();
            Float3x3 matinv = mat.Invert();
            Float2 localmouse = (mouse * matinv).XY;

            if (zoomed)
            {
                if (localmouse.Length() > 1 && _Event.Released)
                {
                    zoomed = false;
                    HandleChildInputFirst = false;
                    return true;
                }
                else
                {
                    if (_Event.Released)
                    {
                        //handle stuff here

                        return true;
                    }
                }
            }
            else
            {
                if (localmouse.Length() < 1 && zoomstate < 0.1f && _Event.Released&&!zoomed)
                {
                    zoomed = true;
                    HandleChildInputFirst = true;
                    BringToFront();
                    return true;
                }
            }
            return false;
        }
 bool UIButton_OnControllerInput(UITouchEvent _Event)
 {
     return false;
 }
示例#3
0
        bool UIButton_OnControllerInput(UITouchEvent _Event)
        {
            Float3 mouse = new Float3(_Event.Position, 1);
            Float3x3 mat = GetTransformation();
            Float3x3 matinv = mat.Invert();
            Float2 localmouse = (mouse * matinv).XY;

            if (zoomed)
            {
                if (localmouse.Length() > 1 && _Event.Released)
                {
                    zoomed = false;
                    return true;
                }
                else
                {
                    if (_Event.Pressed)
                    {
                        OffsetAngle = -(float)Math.Atan2(localmouse.Y, localmouse.X);
                        OffsetValue = Value - OffsetAngle / ((float)Math.PI * 2);
                    }

                    float angle = -(float)Math.Atan2(localmouse.Y, localmouse.X);

                    float shortestangle = angle - OffsetAngle;
                    if (shortestangle > Math.PI) shortestangle = ((float)Math.PI * 2) - shortestangle;
                    if (shortestangle < -Math.PI) shortestangle = ((float)Math.PI * 2) + shortestangle;

                    Value += shortestangle / ((float)Math.PI * 2);

                    OffsetAngle = angle;

                    if (Value > 1) Value = 1f;
                    if (Value < 0) Value = 0;
                    return true;
                }
            }
            else
            {
                if (localmouse.Length() < 1 && _Event.Released)
                {
                    NormalTransformation = Transformation;
                    RelativeToParent = false;
                    zoomed = true;
                    BringToFront();
                    return true;
                }
            }
            return false;
        }
示例#4
0
 bool UIButton_OnControllerInput(UITouchEvent _Event)
 {
     Float3 mouse = new Float3(_Event.Position, 1);
     Float3x3 mat = GetTransformation().Invert();
     Float2 localmouse = (mouse * mat).XY;
     if (localmouse.Length() < 1 && _Event.Released)
     {
         Checked = !Checked;
         return true;
     }
     return false;
 }
 bool UIButton_OnControllerInput(UITouchEvent _Event)
 {
     Float3 mouse = new Float3(_Event.Position, 1);
     Float3x3 mat = GetTransformation();
     Float3x3 matinv = mat.Invert();
     Float2 localmouse = (mouse * matinv).XY;
     Value = (int)((localmouse.X * 0.5f + 0.5f) * 100);
     return false;
 }