// -------------------------------------------------------------------------------------------------------------------- // // Copyright (c) 2020 OxyPlot contributors // // // Provides utility methods related to the keyboard. // // -------------------------------------------------------------------------------------------------------------------- namespace OxyPlot.Wpf { using System.Windows.Input; /// /// Provides utility methods related to the keyboard. /// internal static class Keyboard { /// /// Gets the current modifier keys. /// /// A value. public static OxyModifierKeys GetModifierKeys() { var modifiers = OxyModifierKeys.None; if (System.Windows.Input.Keyboard.IsKeyDown(Key.LeftShift) || System.Windows.Input.Keyboard.IsKeyDown(Key.RightShift)) { modifiers |= OxyModifierKeys.Shift; } if (System.Windows.Input.Keyboard.IsKeyDown(Key.LeftCtrl) || System.Windows.Input.Keyboard.IsKeyDown(Key.RightCtrl)) { modifiers |= OxyModifierKeys.Control; } if (System.Windows.Input.Keyboard.IsKeyDown(Key.LeftAlt) || System.Windows.Input.Keyboard.IsKeyDown(Key.RightAlt)) { modifiers |= OxyModifierKeys.Alt; } if (System.Windows.Input.Keyboard.IsKeyDown(Key.LWin) || System.Windows.Input.Keyboard.IsKeyDown(Key.RWin)) { modifiers |= OxyModifierKeys.Windows; } return modifiers; } } }