protected internal override bool OnKeyDown(Messages.KeyDown args)
 {
     if (base.OnKeyDown(args))
     {
         foreach (var child in Children)
         {
             child.OnKeyDown(args);
         }
         return(true);
     }
     return(false);
 }
Exemplo n.º 2
0
        protected internal override bool OnKeyDown(Messages.KeyDown args)
        {
            if (base.OnKeyDown(args))
            {
                if (WaitingForInput != null)
                {
                    // Update key for button
                    Keys = new Tuple <uint, uint>(WaitingForInput.IsFirstButton ? args.Key : Keys.Item1, !WaitingForInput.IsFirstButton ? args.Key : Keys.Item2);
                    WaitingForInput.IsActive = false;
                }

                // Don't handle unbound key
                if (args.Key == UnboundKey)
                {
                    return(true);
                }

                switch (BindType)
                {
                case BindTypes.PressToggle:
                    // Update toggle value
                    if (Keys.Item1 == args.Key || Keys.Item2 == args.Key)
                    {
                        ControlHandle.IsActive = !ControlHandle.IsActive;
                    }
                    break;

                case BindTypes.HoldActive:
                    CurrentlyDownKeys.Add(args.Key);
                    UpdateHoldActiveState();
                    break;
                }

                return(true);
            }
            return(false);
        }
Exemplo n.º 3
0
 protected internal virtual bool OnKeyDown(Messages.KeyDown args)
 {
     return(true);
 }