Esempio n. 1
0
        public override void onButtonClick(InputEngine.MouseArgs e)
        {
            scrollbar.onButtonClick(e);
            if (!IsIn(e.curState.X, e.curState.Y))
            {
                return;
            }
            bool b;
            int  t;

            for (int i = 0; i < elements.Count; i++)
            {
                b = elements[i].StaySelected;
                t = elements[i].lastClick;
                elements[i].onButtonClick(e);
                if (((b && Main.Ticks - t < 30) || e.button == 1) && elements[i].StaySelected)
                {
                    if (onElementSelected != null)
                    {
                        onElementSelected.Invoke(this, i, e.button == 0, e.button == 1);
                    }
                }
                if (!b && elements[i].StaySelected)
                {
                    if (onSelectedIndexChanged != null)
                    {
                        onSelectedIndexChanged.Invoke(this, i);
                    }
                }
            }
        }
Esempio n. 2
0
 public override void onButtonClick(InputEngine.MouseArgs e)
 {
     if (scrollbar.IsIn(e.curState.X, e.curState.Y))
     {
         scrollbar.onButtonClick(e);
         return;
     }
     #region DoubleClickCheck
     if (!e.Handled)
     {
         if (clickedButton == -1)
         {
             clickedButton     = e.button;
             ticksSinceClicked = 0;
             clickedPos        = new Vector2(e.curState.X, e.curState.Y);
         }
         else
         {
             if (clickedButton == e.button)
             {
                 if (Math.Abs(clickedPos.X - e.curState.X) < 5 && Math.Abs(clickedPos.Y - e.curState.Y) < 5)
                 {
                     if (onDoubleClicked != null)
                     {
                         onDoubleClicked(this, new SelectedIndexArgs()
                         {
                             selectedIndex = selectedIndex
                         });
                     }
                     clickedButton     = -1;
                     ticksSinceClicked = 0;
                     clickedPos        = new Vector2();
                 }
                 else
                 {
                     clickedButton     = e.button;
                     ticksSinceClicked = 0;
                     clickedPos        = new Vector2(e.curState.X, e.curState.Y);
                 }
             }
             else
             {
                 clickedButton     = e.button;
                 ticksSinceClicked = 0;
                 clickedPos        = new Vector2(e.curState.X, e.curState.Y);
             }
         }
     }
     #endregion
 }