/// <summary>
        /// Converts the <see cref="GenericKeyNameEnum"/> to <see cref="KeyboardKeyCodes"/>
        /// from <see cref="SelectedNESKeys"/>
        /// </summary>
        public static KeyboardKeyCodes Convert(GenericKeyNameEnum keyName)
        {
            switch (keyName)
            {
            case GenericKeyNameEnum.LEFTARROW:
                return(SelectedNESKeys.LEFTARROW);

            case GenericKeyNameEnum.RIGHTARROW:
                return(SelectedNESKeys.RIGHTARROW);

            case GenericKeyNameEnum.UPARROW:
                return(SelectedNESKeys.UPARROW);

            case GenericKeyNameEnum.DOWNARROW:
                return(SelectedNESKeys.DOWNARROW);

            case GenericKeyNameEnum.SELECT:
                return(SelectedNESKeys.SELECT);

            case GenericKeyNameEnum.START:
                return(SelectedNESKeys.START);

            case GenericKeyNameEnum.A:
                return(SelectedNESKeys.A);

            case GenericKeyNameEnum.B:
                return(SelectedNESKeys.B);

            default:
                throw new ArgumentException("Not a valid key for conversion!");
            }
        }
Пример #2
0
        /// <summary>
        /// Handles NES key event
        /// </summary>
        /// <param name="key">The button pressed</param>
        /// <param name="state">The state of the button</param>
        public static void NESKeyEvent(GenericKeyNameEnum key, ConsoleKeyStateEnum state)
        {
            var kbKey   = GenericKeyNameToKeyCodeFromSelectedNESKeysConverter.Convert(key);
            var kbState = ConsoleKeyStateEnumToKeyboardEventFlagConverter.Convert(state);

            AutoSharpUI.KeyboardEvent(kbKey, 0, kbState);
        }
Пример #3
0
 /// <summary>
 /// Default constructor
 /// </summary>
 /// <param name="consoleName">The name of the console this button is from</param>
 /// <param name="keyName">The name of this button</param>
 /// <param name="keyState">The state of this button</param>
 public GenericConsoleButton(ConsoleNameEnum consoleName  = ConsoleNameEnum.NONE,
                             GenericKeyNameEnum keyName   = GenericKeyNameEnum.NONE,
                             ConsoleKeyStateEnum keyState = ConsoleKeyStateEnum.NONE)
 {
     this.ConsoleName = consoleName;
     this.KeyName     = keyName;
     this.KeyState    = keyState;
 }