private void ToggleShortcut_KeyDown(object sender, System.Windows.Input.KeyEventArgs e) { e.Handled = true; var converter = new KeysConverter(); string modifierString = converter.ConvertToString(e.KeyboardDevice.Modifiers); string key = converter.ConvertToString(e.Key); // Supress unwanted keys if (key == "LeftCtrl" || key == "RightCtrl" || key == "LeftShift" || key == "RightShift" || key == "System" || key == "LWin" || key == "RWin") { key = ""; } System.Windows.Controls.TextBox textbox = (System.Windows.Controls.TextBox)sender; switch (textbox.Name) { case "toggleShortcutBox": toggleKeyboardShortcut = new KBShortcut("Toggle Lights", e.KeyboardDevice.Modifiers, e.Key); textbox.Text = toggleKeyboardShortcut.description; break; case "brightnessUpShortcut": increaseBrightnessShortcut = new KBShortcut("Brightness Up", e.KeyboardDevice.Modifiers, e.Key); textbox.Text = increaseBrightnessShortcut.description; break; case "brightnessDownShortcut": decreaseBrightnessShortcut = new KBShortcut("Brightness Down", e.KeyboardDevice.Modifiers, e.Key); textbox.Text = decreaseBrightnessShortcut.description; break; } }
public static void WriteShortcutToFile(KBShortcut key) { if (!Directory.Exists(directory)) { Directory.CreateDirectory(directory); } File.WriteAllText(@directory + key.name, Serialize(key)); }
private void RestoreKeyboardShortcuts() { // Restore the keyboard shortcuts toggleKeyboardShortcut = SetKeyboardShortcut(Settings.restoreSetting <KBShortcut>("Toggle Lights"), ToggleLightsKeyPress, "Toggle Lights", ModifierKeys.Shift, Key.F1, toggleShortcutBox); increaseBrightnessShortcut = SetKeyboardShortcut(Settings.restoreSetting <KBShortcut>("Brightness Up"), IncreaseBrightnessKeyPress, "Brightness Up", ModifierKeys.Shift, Key.F3, brightnessUpShortcut); decreaseBrightnessShortcut = SetKeyboardShortcut(Settings.restoreSetting <KBShortcut>("Brightness Down"), DecreaseBrightnessKeyPress, "Brightness Down", ModifierKeys.Shift, Key.F2, brightnessDownShortcut); }
private KBShortcut SetKeyboardShortcut(KBShortcut shortcut, EventHandler <HotkeyEventArgs> handler, string name, ModifierKeys default_modifiers, Key default_key, System.Windows.Controls.TextBox textbox) { shortcut = Settings.restoreSetting <KBShortcut>(name); if (shortcut == null) { shortcut = new KBShortcut(name, default_modifiers, default_key); } HotkeyManager.Current.AddOrReplace(name, shortcut.key, shortcut.modifiers, handler); textbox.Text = shortcut.description; return(shortcut); }
private void ChangeShortcutButton(string name, string description, EventHandler <HotkeyEventArgs> handler, KBShortcut shortcut) { HotkeyManager.Current.AddOrReplace(name, shortcut.key, shortcut.modifiers, handler); System.Windows.MessageBox.Show(description + shortcut.description); Settings.WriteShortcutToFile(toggleKeyboardShortcut); }