Beispiel #1
0
        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;
            }
        }
Beispiel #2
0
        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;
            }
        }