internal void AddKeyHandler(ConsoleShortcutKey shortcutKey, MethodInvoker methodInvoker) { Program.AssertOnEventThread(); switch (shortcutKey) { case ConsoleShortcutKey.CTRL_ALT: AddKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Menu), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.LMenu), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.RMenu), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.LMenu), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.RMenu), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, GR_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, GR_SCAN), methodInvoker); break; case ConsoleShortcutKey.CTRL_ALT_F: AddKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Menu, Keys.F), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.LMenu, Keys.F), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.RMenu, Keys.F), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.LMenu, Keys.F), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.RMenu, Keys.F), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT_SCAN, F_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, F_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, GR_SCAN, F_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT_SCAN, F_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, F_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, GR_SCAN, F_SCAN), methodInvoker); break; case ConsoleShortcutKey.F12: AddKeyHandler(new Set <Keys>(Keys.F12), methodInvoker); AddKeyHandler(new Set <int>(F12_SCAN), methodInvoker); break; case ConsoleShortcutKey.CTRL_ENTER: AddKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Enter), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.Enter), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.Enter), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ENTER_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ENTER_SCAN), methodInvoker); break; case ConsoleShortcutKey.ALT_SHIFT_U: AddKeyHandler(new Set <Keys>(Keys.Menu, Keys.ShiftKey, Keys.U), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LMenu, Keys.LShiftKey, Keys.U), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LMenu, Keys.RShiftKey, Keys.U), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RMenu, Keys.LShiftKey, Keys.U), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RMenu, Keys.RShiftKey, Keys.U), methodInvoker); AddKeyHandler(new Set <int>(ALT_SCAN, L_SHIFT_SCAN, U_SCAN), methodInvoker); AddKeyHandler(new Set <int>(ALT2_SCAN, L_SHIFT_SCAN, U_SCAN), methodInvoker); AddKeyHandler(new Set <int>(ALT_SCAN, R_SHIFT_SCAN, U_SCAN), methodInvoker); AddKeyHandler(new Set <int>(ALT2_SCAN, R_SHIFT_SCAN, U_SCAN), methodInvoker); AddKeyHandler(new Set <int>(ALT2_SCAN, R_SHIFT_SCAN, GR_SCAN, U_SCAN), methodInvoker); AddKeyHandler(new Set <int>(ALT2_SCAN, L_SHIFT_SCAN, GR_SCAN, U_SCAN), methodInvoker); break; case ConsoleShortcutKey.F11: AddKeyHandler(new Set <Keys>(Keys.F11), methodInvoker); AddKeyHandler(new Set <int>(F11_SCAN), methodInvoker); break; case ConsoleShortcutKey.RIGHT_CTRL: AddKeyHandler(new Set <Keys>(Keys.RControlKey), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN), methodInvoker); break; case ConsoleShortcutKey.LEFT_ALT: AddKeyHandler(new Set <Keys>(Keys.LMenu), methodInvoker); AddKeyHandler(new Set <int>(ALT_SCAN), methodInvoker); break; case ConsoleShortcutKey.CTRL_ALT_INS: AddKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Menu, Keys.Insert), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.LMenu, Keys.Insert), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.RMenu, Keys.Insert), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.LMenu, Keys.Insert), methodInvoker); AddKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.RMenu, Keys.Insert), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT_SCAN, INS_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, INS_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, GR_SCAN, INS_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, INS_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL2_SCAN, ALT_SCAN, INS_SCAN), methodInvoker); AddKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, GR_SCAN, INS_SCAN), methodInvoker); break; } }
internal void RemoveKeyHandler(ConsoleShortcutKey shortcutKey) { Program.AssertOnEventThread(); switch (shortcutKey) { case ConsoleShortcutKey.CTRL_ALT: RemoveKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Menu)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.LMenu)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.RMenu)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.LMenu)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.RMenu)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, GR_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT_SCAN)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, GR_SCAN)); break; case ConsoleShortcutKey.CTRL_ALT_F: RemoveKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Menu, Keys.F)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.LMenu, Keys.F)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.RMenu, Keys.F)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.LMenu, Keys.F)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.RMenu, Keys.F)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT_SCAN, F_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, F_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, GR_SCAN, F_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT_SCAN, F_SCAN)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, F_SCAN)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, GR_SCAN, F_SCAN)); break; case ConsoleShortcutKey.F12: RemoveKeyHandler(new Set <Keys>(Keys.F12)); RemoveKeyHandler(new Set <int>(F12_SCAN)); break; case ConsoleShortcutKey.CTRL_ENTER: RemoveKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Enter)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.Enter)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.Enter)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ENTER_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ENTER_SCAN)); break; case ConsoleShortcutKey.ALT_SHIFT_U: RemoveKeyHandler(new Set <Keys>(Keys.Menu, Keys.ShiftKey, Keys.U)); RemoveKeyHandler(new Set <Keys>(Keys.LMenu, Keys.LShiftKey, Keys.U)); RemoveKeyHandler(new Set <Keys>(Keys.LMenu, Keys.RShiftKey, Keys.U)); RemoveKeyHandler(new Set <Keys>(Keys.RMenu, Keys.LShiftKey, Keys.U)); RemoveKeyHandler(new Set <Keys>(Keys.RMenu, Keys.RShiftKey, Keys.U)); RemoveKeyHandler(new Set <int>(ALT_SCAN, L_SHIFT_SCAN, U_SCAN)); RemoveKeyHandler(new Set <int>(ALT2_SCAN, L_SHIFT_SCAN, U_SCAN)); RemoveKeyHandler(new Set <int>(ALT_SCAN, R_SHIFT_SCAN, U_SCAN)); RemoveKeyHandler(new Set <int>(ALT2_SCAN, R_SHIFT_SCAN, U_SCAN)); RemoveKeyHandler(new Set <int>(ALT2_SCAN, R_SHIFT_SCAN, GR_SCAN, U_SCAN)); RemoveKeyHandler(new Set <int>(ALT2_SCAN, L_SHIFT_SCAN, GR_SCAN, U_SCAN)); break; case ConsoleShortcutKey.F11: RemoveKeyHandler(new Set <Keys>(Keys.F11)); RemoveKeyHandler(new Set <int>(F11_SCAN)); break; case ConsoleShortcutKey.RIGHT_CTRL: RemoveKeyHandler(new Set <Keys>(Keys.RControlKey)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN)); break; case ConsoleShortcutKey.LEFT_ALT: RemoveKeyHandler(new Set <Keys>(Keys.LMenu)); RemoveKeyHandler(new Set <int>(ALT_SCAN)); break; case ConsoleShortcutKey.CTRL_ALT_INS: RemoveKeyHandler(new Set <Keys>(Keys.ControlKey, Keys.Menu, Keys.Insert)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.LMenu, Keys.Insert)); RemoveKeyHandler(new Set <Keys>(Keys.LControlKey, Keys.RMenu, Keys.Insert)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.LMenu, Keys.Insert)); RemoveKeyHandler(new Set <Keys>(Keys.RControlKey, Keys.RMenu, Keys.Insert)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT_SCAN, INS_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, INS_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT2_SCAN, GR_SCAN, INS_SCAN)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, INS_SCAN)); RemoveKeyHandler(new Set <int>(CTRL2_SCAN, ALT_SCAN, INS_SCAN)); RemoveKeyHandler(new Set <int>(CTRL_SCAN, ALT2_SCAN, GR_SCAN, INS_SCAN)); break; } }