public static KeyboardEventConfiguration CreateForAllEvents()
 {
     return(new KeyboardEventConfiguration(
                new KeyboardInputKeyConfiguration(KeyboardInputKey.AllKeys.ToArray()),
                ModifierConfiguration.CreateNotApplicable(),
                LockConfiguration.CreateNotApplicable()));
 }
        public KeyboardEventConfiguration(KeyboardInputKeyConfiguration inputKeyConfiguration, ModifierConfiguration modifierConfiguration, LockConfiguration lockConfiguration)
        {
            Guard.ObjectNotNull(() => inputKeyConfiguration);
            Guard.ObjectNotNull(() => modifierConfiguration);
            Guard.ObjectNotNull(() => lockConfiguration);

            InputKeyConfiguration = inputKeyConfiguration;
            ModifierConfiguration = modifierConfiguration;
            LockConfiguration     = lockConfiguration;
        }
 public bool CheckIfApplicable(KeyboardInput input)
 {
     return(InputKeyConfiguration.CheckIfApplicable(input.InputKey) &&
            ModifierConfiguration.CheckIfApplicable(input.Modifiers) &&
            LockConfiguration.CheckIfApplicable(input.Locks));
 }