Пример #1
0
        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);
        }
Пример #2
0
        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);
        }
Пример #3
0
        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);
        }
Пример #4
0
        private static InputBinding CreateInputBinding(KeyBindingCommand item)
        {
            var gesture = new KeyGesture(item.GestureKey, item.GestureModifier);

            return(new InputBinding(item, gesture));
        }