public void TestRemoveInputBindings() { var command1 = new KeyBindingCommand(() => { }) { GestureKey = Key.B, GestureModifier = ModifierKeys.Control | ModifierKeys.Alt }; _keyBindings.Add(command1); var command2 = new KeyBindingCommand(() => { }) { GestureKey = Key.A, GestureModifier = ModifierKeys.Control | ModifierKeys.Alt }; _keyBindings.Add(command2); var control = CreateControl(); control.InputBindings.Should().NotBeEmpty(); var inputBinding1 = control.InputBindings.Cast <InputBinding>().First(x => x.Command == command1); var inputBinding2 = control.InputBindings.Cast <InputBinding>().First(x => x.Command == command2); _keyBindings.Remove(command1); control.InputBindings.Should().NotContain(inputBinding1); control.InputBindings.Should().Contain(inputBinding2); _keyBindings.Remove(command2); control.InputBindings.Should().NotContain(inputBinding1); control.InputBindings.Should().NotContain(inputBinding2); }
public void TestClearInputBindings() { var command = new KeyBindingCommand(() => { }) { GestureKey = Key.B, GestureModifier = ModifierKeys.Control | ModifierKeys.Alt }; _keyBindings.Add(command); var control = CreateControl(); control.InputBindings.Should().NotBeEmpty(); var inputBinding = control.InputBindings.Cast <InputBinding>().First(x => x.Command == command); _keyBindings.Clear(); control.InputBindings.Should().NotContain(inputBinding); }
public void TestConstructionInputBindings() { var command = new KeyBindingCommand(() => { }) { GestureKey = Key.B, GestureModifier = ModifierKeys.Control | ModifierKeys.Alt }; _keyBindings.Add(command); var control = CreateControl(); control.InputBindings.Should().NotBeEmpty(); var inputBinding = control.InputBindings.Cast <InputBinding>().First(x => x.Command == command); inputBinding.Command.Should().BeSameAs(command); inputBinding.Gesture.Should().BeOfType <KeyGesture>(); var keyGesture = (KeyGesture)inputBinding.Gesture; keyGesture.Key.Should().Be(Key.B); keyGesture.Modifiers.Should().Be(ModifierKeys.Control | ModifierKeys.Alt); }
private static InputBinding CreateInputBinding(KeyBindingCommand item) { var gesture = new KeyGesture(item.GestureKey, item.GestureModifier); return(new InputBinding(item, gesture)); }