示例#1
0
        private OnScreenKeyboardRowViewModel BuildRow5(KeyboardLayout layout)
        {
            var row = new OnScreenKeyboardRowViewModel();

            row.Keys.Add(KeyForScanCode(0x1D, layout));             // right control
            row.Keys.Add(KeyForScanCode(0x5B, layout, isE0: true)); // left windows
            row.Keys.Add(KeyForScanCode(0x38, layout));             // left alt
            row.Keys.Add(KeyForScanCode(0x39, layout, 45));         // space bar
            row.Keys.Add(KeyForScanCode(0x38, layout, isE0: true)); // right alt
            row.Keys.Add(KeyForScanCode(0x5C, layout, isE0: true)); // right windows
            row.Keys.Add(KeyForScanCode(0x5D, layout, isE0: true)); // menu
            row.Keys.Add(KeyForScanCode(0x1D, layout, isE0: true)); // right control
            return(row);
        }
示例#2
0
        private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs dependencyPropertyChangedEventArgs)
        {
            if (_viewModel != null)
            {
                _viewModel.Keys.CollectionChanged -= OnKeysCollectionChanged;
                _viewModel = null;
                OnKeysCollectionChanged(this, new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset));
            }

            if (DataContext is OnScreenKeyboardRowViewModel)
            {
                _viewModel = DataContext as OnScreenKeyboardRowViewModel;
                _viewModel.Keys.CollectionChanged += OnKeysCollectionChanged;
                OnKeysCollectionChanged(this, new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Reset));
            }
        }
示例#3
0
        private OnScreenKeyboardRowViewModel BuildRow4(KeyboardLayout layout)
        {
            var row = new OnScreenKeyboardRowViewModel();

            row.Keys.Add(KeyForScanCode(0x2A, layout, 21));         // left shift
            row.Keys.Add(KeyForScanCode(0x2C, layout));             // Z
            row.Keys.Add(KeyForScanCode(0x2D, layout));             // X
            row.Keys.Add(KeyForScanCode(0x2E, layout));             // C
            row.Keys.Add(KeyForScanCode(0x2F, layout));             // V
            row.Keys.Add(KeyForScanCode(0x30, layout));             // B
            row.Keys.Add(KeyForScanCode(0x31, layout));             // N
            row.Keys.Add(KeyForScanCode(0x32, layout));             // M
            row.Keys.Add(KeyForScanCode(0x33, layout));             // ,
            row.Keys.Add(KeyForScanCode(0x34, layout));             // .
            row.Keys.Add(KeyForScanCode(0x35, layout));             // /
            row.Keys.Add(KeyForScanCode(0x36, layout, 21));         // right shift
            return(row);
        }
示例#4
0
        private OnScreenKeyboardRowViewModel BuildRow3(KeyboardLayout layout)
        {
            var row = new OnScreenKeyboardRowViewModel();

            row.Keys.Add(KeyForScanCode(0x3A, layout, 17));         // caps lock
            row.Keys.Add(KeyForScanCode(0x1E, layout));             // A
            row.Keys.Add(KeyForScanCode(0x1F, layout));             // S
            row.Keys.Add(KeyForScanCode(0x20, layout));             // D
            row.Keys.Add(KeyForScanCode(0x21, layout));             // F
            row.Keys.Add(KeyForScanCode(0x22, layout));             // G
            row.Keys.Add(KeyForScanCode(0x23, layout));             // H
            row.Keys.Add(KeyForScanCode(0x24, layout));             // J
            row.Keys.Add(KeyForScanCode(0x25, layout));             // K
            row.Keys.Add(KeyForScanCode(0x26, layout));             // L
            row.Keys.Add(KeyForScanCode(0x27, layout));             // ;
            row.Keys.Add(KeyForScanCode(0x28, layout));             // '
            row.Keys.Add(KeyForScanCode(0x1C, layout, 21));         // enter
            return(row);
        }
示例#5
0
        private OnScreenKeyboardRowViewModel BuildRow1(KeyboardLayout layout)
        {
            var row = new OnScreenKeyboardRowViewModel();

            row.Keys.Add(KeyForScanCode(0x29, layout));             // ~
            row.Keys.Add(KeyForScanCode(0x02, layout));             // 1
            row.Keys.Add(KeyForScanCode(0x03, layout));             // 2
            row.Keys.Add(KeyForScanCode(0x04, layout));             // 3
            row.Keys.Add(KeyForScanCode(0x05, layout));             // 4
            row.Keys.Add(KeyForScanCode(0x06, layout));             // 5
            row.Keys.Add(KeyForScanCode(0x07, layout));             // 6
            row.Keys.Add(KeyForScanCode(0x08, layout));             // 7
            row.Keys.Add(KeyForScanCode(0x09, layout));             // 8
            row.Keys.Add(KeyForScanCode(0x0A, layout));             // 9
            row.Keys.Add(KeyForScanCode(0x0B, layout));             // 0
            row.Keys.Add(KeyForScanCode(0x0C, layout));             // -
            row.Keys.Add(KeyForScanCode(0x0D, layout));             // +
            row.Keys.Add(KeyForScanCode(0x0E, layout, 20));         // backspace
            return(row);
        }
示例#6
0
        private OnScreenKeyboardRowViewModel BuildRow2(KeyboardLayout layout)
        {
            var row = new OnScreenKeyboardRowViewModel();

            row.Keys.Add(KeyForScanCode(0x0F, layout, 15));         // tab
            row.Keys.Add(KeyForScanCode(0x10, layout));             // Q
            row.Keys.Add(KeyForScanCode(0x11, layout));             // W
            row.Keys.Add(KeyForScanCode(0x12, layout));             // E
            row.Keys.Add(KeyForScanCode(0x13, layout));             // R
            row.Keys.Add(KeyForScanCode(0x14, layout));             // T
            row.Keys.Add(KeyForScanCode(0x15, layout));             // Y
            row.Keys.Add(KeyForScanCode(0x16, layout));             // U
            row.Keys.Add(KeyForScanCode(0x17, layout));             // I
            row.Keys.Add(KeyForScanCode(0x18, layout));             // O
            row.Keys.Add(KeyForScanCode(0x19, layout));             // P
            row.Keys.Add(KeyForScanCode(0x1A, layout));             // [
            row.Keys.Add(KeyForScanCode(0x1B, layout));             // ]
            row.Keys.Add(KeyForScanCode(0x2B, layout, 15));         // \
            return(row);
        }