internal static void Update() { KeyboardExt.Update(); MouseExt.Update(); BasicInputHandler.Update(); }
private void PostAidKeyResponseMessage(Key key) { var aidKey = key.ToAidKey(KeyboardExt.IsShiftDown()); var msg = new AidKeyResponseMessage(aidKey.Value); this.MasterThread.PostInputMessage(msg); }
private void PostKeyboardInput(Key key) { // send the keyboard input to the master thread. That thread applies input // and WTD commands to the master screenContent block. if (this.MasterThread != null) { var kbInput = new KeyboardInputMessage() { KeyCode = key, ShiftDown = KeyboardExt.IsShiftDown( ) }; this.MasterThread.PostInputMessage(kbInput); // this.MasterThread.MasterQueue.Enqueue(kbInput); } }
internal static void Update() { KeyboardExt.Update(); MouseExt.Update(); }
private void lbScreenItems_PreviewKeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Enter) { var lv = sender as ListBox; ListBox_ChangeSelectedItem(lv); } else if (e.Key == Key.Delete) { lbScreenItems_DeleteSelected(); e.Handled = true; } else if (e.Key == Key.Escape) { ScreenDefnGlobal.CopyPasteList.Clear(); this.IsDragging = false; this.DragItemIndex = null; this.DragSectionHeader = null; this.PopupWindow.IsOpen = false; this.StartPoint = null; } else if (KeyboardExt.IsControlDown()) { if (e.Key == Key.X) { e.Handled = CutSelected(); } else if (e.Key == Key.C) { CopySelected(); e.Handled = true; } else if (e.Key == Key.V) { DoPaste(); e.Handled = true; } // shift arrow down. Move the item down one slot. After the next item. else if ((e.Key == Key.Down) && (KeyboardExt.IsControlDown() == true)) { var moveModel = lbScreenItems.SelectedItem as IScreenItem; if (moveModel != null) { MoveDown(moveModel); lbScreenItems.FindFocusItem(moveModel); e.Handled = true; } } // shift arrow up. Move the item up one slot. Before the prev item. else if ((e.Key == Key.Up) && (KeyboardExt.IsControlDown() == true)) { var moveModel = lbScreenItems.SelectedItem as IScreenItem; if (moveModel != null) { MoveUp(moveModel); lbScreenItems.FindFocusItem(moveModel); e.Handled = true; } } } }
private void Item_PreviewKeyDown(object sender, KeyEventArgs e) { string keyText = e.Key.ToTextInput(); if (this.DoHandleUserInput == true) { var modkey = e.ToModifiedKey(); if (keyText != null) { this.CaretCursor = PutKeyboardText_AdvanceCaret(this.CaretCursor, keyText); this.CanvasCaret.StartBlink(this.CaretCursor, true); } else if (e.Key == Key.Tab) { if (Keyboard.IsKeyDown(Key.LeftShift) == false) { this.CaretCursor = this.CaretCursor.NextInputItemCircular( this.VisualItems, VisualFeature.tabTo); } else { this.CaretCursor = this.CaretCursor.PrevInputItemCircular( this.VisualItems, VisualFeature.tabTo); } this.CanvasCaret.StartBlink(this.CaretCursor, true); e.Handled = true; } else if (e.Key == Key.Enter) { if (KeyboardExt.IsShiftDown()) { this.CaretCursor = this.CaretCursor.NextInputItemNextLine(this.VisualItems); this.CanvasCaret.StartBlink(this.CaretCursor); } else { PostAidKeyResponseMessage(e.Key); } } else if (e.Key == Key.Right) { this.CaretCursor = this.CaretCursor.AdvanceRight( this.VisualItems, HowAdvance.NextColumn); this.CanvasCaret.StartBlink(this.CaretCursor); e.Handled = true; } else if (e.Key == Key.Left) { this.CaretCursor = this.CaretCursor.AdvanceLeft( this.VisualItems, HowAdvance.NextColumn); this.CanvasCaret.StartBlink(this.CaretCursor); e.Handled = true; } else if (e.Key == Key.Down) { this.CaretCursor = this.CaretCursor.AdvanceDown(this.VisualItems); this.CanvasCaret.StartBlink(this.CaretCursor); e.Handled = true; } else if (e.Key == Key.Up) { this.CaretCursor = this.CaretCursor.AdvanceUp(this.VisualItems); this.CanvasCaret.StartBlink(this.CaretCursor); e.Handled = true; } else if (e.Key == Key.Back) { this.CaretCursor = this.CaretCursor.AdvanceLeft( this.VisualItems, HowAdvance.NextColumn); if (this.CaretCursor.IsInputItem() == true) { PutKeyboardText(this.CaretCursor, " "); } this.CanvasCaret.StartBlink(this.CaretCursor); e.Handled = true; } else if (e.Key == Key.Delete) { PutKeyboardText(this.CaretCursor, " "); this.CanvasCaret.StartBlink(this.CaretCursor); e.Handled = true; } // escape key. delete hoverbox. else if (e.Key == Key.Escape) { if (this.HoverBox != null) { this.HoverBox.RemoveHoverBox(); } } else if (Array.IndexOf(EnterKeyCodeArray, e.Key) != -1) { PostAidKeyResponseMessage(e.Key); } #if skip else if (e.Key == Key.System) { PostAidKeyResponseMessage(e.Key); e.Handled = true; } #endif SignalCanvasChanged(); } }