/// <summary>
        /// Constructor
        /// </summary>
        /// <param name="PlayerNumber">Player ID (1-4)</param>
        public ControllerDevice(int PlayerNumber, WndParam MainWindow)
        {
            _Player   = PlayerNumber;
            _WndParam = MainWindow;

            // Default virtual buttons are :
            // P1 Middle => 0x2E   [C]
            // P2 Middle => 0x2F   [V]
            // P3 Middle => 0x30   [B]
            // P4 Middle => 0x31   [N]
            _DiK_VirtualMiddleButton = (byte)(0x2D + _Player);
            // P1 Right => 0x21   [F]
            // P2 Right => 0x22   [G]
            // P3 Right => 0x23   [H]
            // P4 Right => 0x24   [J]
            _DiK_VirtualRightButton = (byte)(0x20 + _Player);
        }
        public Uc_GUI_PlayerDevice(ControllerDevice Device, WndParam MainWindow)
        {
            InitializeComponent();
            _PlayerDevice = Device;
            _WndParam     = MainWindow;

            Lbl_Player.Text = "P" + _PlayerDevice.Player.ToString() + " Device :";

            //GUI init
            AddDevice("");

            //Gamepad buttons
            SetGamepadKey(Cbox_Pad_MouseLeft, _PlayerDevice.Gamepad_LeftClick);
            SetGamepadKey(Cbox_Pad_MouseMiddle, _PlayerDevice.Gamepad_MiddleClick);
            SetGamepadKey(Cbox_Pad_MouseRight, _PlayerDevice.Gamepad_RightClick);

            //Analog stick
            if (_PlayerDevice.Gamepad_Stick.Equals("L"))
            {
                SetGamepadAxis("Left Stick");
            }
            else
            {
                SetGamepadAxis("Right Stick");
            }

            //Vibrations
            if (_PlayerDevice.Gamepad_VibrationEnabled == 1)
            {
                SetVibrationEnabled(true);
            }
            else
            {
                SetVibrationEnabled(false);
            }
            SetVibrationLength(_PlayerDevice.Gamepad_VibrationLength);
            SetVibrationStrength(_PlayerDevice.Gamepad_VibrationStrength);
        }