private void InvokeIfHaveNeedKeys(HashSet <Key> pressedKeys, PressedKeysEventArgs lastKey) { if (HaveNeedKeys(pressedKeys)) { Invoke(lastKey); } }
private static void KeysUp(object sender, KeyEventArgsCustom e) { var eventArgs = new PressedKeysEventArgs(PressedKeys, e.Key); PressedKeys.Remove(e.Key); KeyUp?.Invoke(null, eventArgs); if (eventArgs.Handled) { e.Handled = true; } }
public void Invoke(PressedKeysEventArgs key) { var data = new InterpretationData(); data.Vars["Key"] = key.Key.ToString(); base.Invoke(new TriggeredEventArgs(Name, Script, data)); if (Exclusive && EnableTrigger && EnableAllTriggers)//блочим только в том случае, если сработали { key.Handled = true; } }
private static void KeysDown(object sender, KeyEventArgsCustom e) { var eventArgs = new PressedKeysEventArgs(PressedKeys, e.Key); if (PressedKeys.Contains(e.Key)) { KeysHolding?.Invoke(null, eventArgs); if (eventArgs.Handled) { e.Handled = true; } return; } PressedKeys.Add(e.Key); KeyDown?.Invoke(null, eventArgs); if (eventArgs.Handled) { e.Handled = true; } }