private void ChangeProAnalog(object sender, RoutedPropertyChangedEventArgs <double> e) { if (isPro) { ProController pro = (ProController)Device.State; float value = (float)Math.Round(e.NewValue, 2); switch ((sender as FrameworkElement).Tag.ToString()) { case "LX": pro.LJoy.X = value; pro.LJoy.rawX = CalculateRaw(pro.LJoy.minX, pro.LJoy.maxX, value); break; case "LY": pro.LJoy.Y = value; pro.LJoy.rawY = CalculateRaw(pro.LJoy.minY, pro.LJoy.maxY, value); break; case "RX": pro.RJoy.X = value; pro.RJoy.rawX = CalculateRaw(pro.RJoy.minX, pro.RJoy.maxX, value); break; case "RY": pro.RJoy.Y = value; pro.RJoy.rawY = CalculateRaw(pro.RJoy.minY, pro.RJoy.maxY, value); break; } Device.State = pro; } }
private ProController ChangeProAnalog(string property, float value) { ProController pro = (ProController)Device.State; switch (property) { case INPUT_NAMES.PRO_CONTROLLER.LX: pro.LJoy.X = value; pro.LJoy.rawX = CalculateRaw(pro.LJoy.minX, pro.LJoy.maxX, value); break; case INPUT_NAMES.PRO_CONTROLLER.LY: pro.LJoy.Y = value; pro.LJoy.rawY = CalculateRaw(pro.LJoy.minY, pro.LJoy.maxY, value); break; case INPUT_NAMES.PRO_CONTROLLER.RX: pro.RJoy.X = value; pro.RJoy.rawX = CalculateRaw(pro.RJoy.minX, pro.RJoy.maxX, value); break; case INPUT_NAMES.PRO_CONTROLLER.RY: pro.RJoy.Y = value; pro.RJoy.rawY = CalculateRaw(pro.RJoy.minY, pro.RJoy.maxY, value); break; } return(pro); }
private void btnAddPro_Click(object sender, EventArgs e) { Project pro = new Project(); pro.procode = this.txtProCode.Text.Trim(); pro.proname = this.txtProName.Text.Trim(); pro.description = this.rtDescription.Text.Trim(); pro.fromdate = this.dtpFromDate.Value; pro.todate = this.dtpToDate.Value; if (listPro.Where(x => x.procode == pro.procode).Count() > 0) { MessageBox.Show("ProCode đã tồn tại", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } listPro.Add(pro); ProController.AddPro(pro); BindingSource source = new BindingSource(); source.DataSource = ProController.getlistPros(); this.dataPro.DataSource = source; this.txtProCode.Clear(); this.txtProName.Clear(); this.rtDescription.Clear(); this.dtpFromDate.Value = DateTime.Now; this.dtpToDate.Value = DateTime.Now; /*if (ProController.AddPro(pro) == false) * { * MessageBox.Show("Lỗi thêm project"); * return; * }*/ }
/// <summary> /// Default constructor setting all calibrations to their defaults. /// </summary> public CalibrationStorage() { ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; }
public void ConfigureProController(ProController pState) { pState.LJoy.rawX = (short)pState.LJoy.centerX; pState.LJoy.rawY = (short)pState.LJoy.centerY; pState.RJoy.rawX = (short)pState.RJoy.centerX; pState.RJoy.rawY = (short)pState.RJoy.centerY; State = pState; }
private void btnDeletePro_Click(object sender, EventArgs e) { Project pro = ProController.getPro(this.dataPro.SelectedRows[0].Cells[0].Value.ToString()); ProController.DeletePro(pro); BindingSource source = new BindingSource(); source.DataSource = ProController.getlistPros(); dataPro.DataSource = source; }
private void dataPro_CellEndEdit(object sender, DataGridViewCellEventArgs e) { Project pro = new Project(); try { pro.procode = this.dataPro.CurrentRow.Cells[0].Value.ToString(); } catch { MessageBox.Show("Phải nhập Procode"); dataPro.CurrentRow.Cells[0].Value = ""; dataPro.Rows.RemoveAt(dataPro.Rows.Count - 2); return; } if (pro.procode.Length <= 0) { return; } if (this.dataPro.CurrentRow.Cells[1].Value is null) { this.dataPro.CurrentRow.Cells[1].Value = ""; } pro.proname = this.dataPro.CurrentRow.Cells[1].Value.ToString(); if (this.dataPro.CurrentRow.Cells[2].Value is null) { this.dataPro.CurrentRow.Cells[2].Value = ""; } pro.description = this.dataPro.CurrentRow.Cells[2].Value.ToString(); if (this.dataPro.CurrentRow.Cells[3].Value is null) { this.dataPro.CurrentRow.Cells[3].Value = "1/1/1989"; } pro.fromdate = DateTime.Parse(this.dataPro.CurrentRow.Cells[3].Value.ToString()).Date; if (this.dataPro.CurrentRow.Cells[4].Value is null) { this.dataPro.CurrentRow.Cells[4].Value = "1/1/1989"; } pro.todate = DateTime.Parse(this.dataPro.CurrentRow.Cells[4].Value.ToString()).Date; //update to database ProController.UpdatePro(pro); BindingSource source = new BindingSource(); source.DataSource = ProController.getlistPros(); //dataUsers.DataSource = source; }
/// <summary> /// Default constructor setting all calibrations to their defaults. /// </summary> public CalibrationStorage() { ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; GuitarCalibration = Calibrations.Defaults.GuitarDefault; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Defaults.GameCubeControllerDefault, port2 = Calibrations.Defaults.GameCubeControllerDefault, port3 = Calibrations.Defaults.GameCubeControllerDefault, port4 = Calibrations.Defaults.GameCubeControllerDefault, }; }
/// <summary> /// Sets calibrations based on a preset. /// </summary> /// <param name="preset"></param> public void SetCalibrations(Calibrations.CalibrationPreset preset) { switch (preset) { case Calibrations.CalibrationPreset.Default: ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; break; case Calibrations.CalibrationPreset.Modest: ProCalibration = Calibrations.Moderate.ProControllerModest; WiimoteCalibration = Calibrations.Moderate.WiimoteModest; NunchukCalibration = Calibrations.Moderate.NunchukModest; ClassicCalibration = Calibrations.Moderate.ClassicControllerModest; ClassicProCalibration = Calibrations.Moderate.ClassicControllerProModest; break; case Calibrations.CalibrationPreset.Extra: ProCalibration = Calibrations.Extras.ProControllerExtra; WiimoteCalibration = Calibrations.Extras.WiimoteExtra; NunchukCalibration = Calibrations.Extras.NunchukExtra; ClassicCalibration = Calibrations.Extras.ClassicControllerExtra; ClassicProCalibration = Calibrations.Extras.ClassicControllerProExtra; break; case Calibrations.CalibrationPreset.Minimum: ProCalibration = Calibrations.Minimum.ProControllerMinimal; WiimoteCalibration = Calibrations.Minimum.WiimoteMinimal; NunchukCalibration = Calibrations.Minimum.NunchukMinimal; ClassicCalibration = Calibrations.Minimum.ClassicControllerMinimal; ClassicProCalibration = Calibrations.Minimum.ClassicControllerProMinimal; break; case Calibrations.CalibrationPreset.None: ProCalibration = Calibrations.None.ProControllerRaw; WiimoteCalibration = Calibrations.None.WiimoteRaw; NunchukCalibration = Calibrations.None.NunchukRaw; ClassicCalibration = Calibrations.None.ClassicControllerRaw; ClassicProCalibration = Calibrations.None.ClassicControllerProRaw; break; } }
private void txtSearchPro_TextChanged(object sender, EventArgs e) { this.lstSearchPro.Items.Clear(); List <Project> searchPros = ProController.getListPros(this.txtSearchPro.Text.Trim()); if (searchPros.Count > 0) { this.lstSearchPro.Visible = true; } else { this.lstSearchPro.Visible = false; } for (int i = 0; i < searchPros.Count; i++) { this.lstSearchPro.Items.Add(searchPros[i]); } }
public FrmProject(ref List <Project> projects) { InitializeComponent(); this.listPro = projects; this.cProCode.DataPropertyName = nameof(Project.procode); this.cProName.DataPropertyName = nameof(Project.proname); this.cDescription.DataPropertyName = nameof(Project.description); this.cFromDate.DataPropertyName = nameof(Project.fromdate); this.cToDate.DataPropertyName = nameof(Project.todate); this.cWorks.DataPropertyName = nameof(Project.Works); this.cListOfWorks.DataPropertyName = nameof(Project.ListOfWorks); BindingSource source = new BindingSource(); source.DataSource = ProController.getlistPros(); this.dataPro.DataSource = source; }
private ProController ChangeProBoolean(string property) { ProController pro = (ProController)Device.State; switch (property) { case INPUT_NAMES.PRO_CONTROLLER.A: pro.A = !pro.A; break; case INPUT_NAMES.PRO_CONTROLLER.B: pro.B = !pro.B; break; case INPUT_NAMES.PRO_CONTROLLER.X: pro.X = !pro.X; break; case INPUT_NAMES.PRO_CONTROLLER.Y: pro.Y = !pro.Y; break; case INPUT_NAMES.PRO_CONTROLLER.L: pro.L = !pro.L; break; case INPUT_NAMES.PRO_CONTROLLER.R: pro.R = !pro.R; break; case INPUT_NAMES.PRO_CONTROLLER.ZL: pro.ZL = !pro.ZL; break; case INPUT_NAMES.PRO_CONTROLLER.ZR: pro.ZR = !pro.ZR; break; case INPUT_NAMES.PRO_CONTROLLER.UP: pro.Up = !pro.Up; break; case INPUT_NAMES.PRO_CONTROLLER.DOWN: pro.Down = !pro.Down; break; case INPUT_NAMES.PRO_CONTROLLER.LEFT: pro.Left = !pro.Left; break; case INPUT_NAMES.PRO_CONTROLLER.RIGHT: pro.Right = !pro.Right; break; case INPUT_NAMES.PRO_CONTROLLER.START: pro.Start = !pro.Start; break; case INPUT_NAMES.PRO_CONTROLLER.SELECT: pro.Select = !pro.Select; break; case INPUT_NAMES.PRO_CONTROLLER.HOME: pro.Home = !pro.Home; break; case INPUT_NAMES.PRO_CONTROLLER.LS: pro.LStick = !pro.LStick; break; case INPUT_NAMES.PRO_CONTROLLER.RS: pro.RStick = !pro.RStick; break; } return(pro); }
public void UpdateVisual(INintrollerState state) { if (state is ProController) { var pro = (ProController)state; _lastState = pro; Display(aBtn, pro.A); Display(bBtn, pro.B); Display(xBtn, pro.X); Display(yBtn, pro.Y); Display(lBtn, pro.L); Display(rBtn, pro.R); Display(zlBtn, pro.ZL); Display(zrBtn, pro.ZR); Display(dpadUp, pro.Up); Display(dpadDown, pro.Down); Display(dpadLeft, pro.Left); Display(dpadRight, pro.Right); Display(dpadCenter, (pro.Up || pro.Down || pro.Left || pro.Right)); Display(homeBtn, pro.Home); Display(plusBtn, pro.Plus); Display(minusBtn, pro.Minus); Display(leftStickBtn, pro.LStick); Display(rightStickBtn, pro.RStick); leftStick.Margin = new Thickness(196 + 50 * pro.LJoy.X, 232 - 50 * pro.LJoy.Y, 0, 0); leftStickBtn.Margin = new Thickness(196 + 50 * pro.LJoy.X, 230 - 50 * pro.LJoy.Y, 0, 0); rightStick.Margin = new Thickness(980 + 50 * pro.RJoy.X, 232 - 50 * pro.RJoy.Y, 0, 0); rightStickBtn.Margin = new Thickness(980 + 50 * pro.RJoy.X, 230 - 50 * pro.RJoy.Y, 0, 0); if (_openJoyWindow != null) { _openJoyWindow.Update(_rightJoyOpen ? pro.RJoy : pro.LJoy); } } }
public void UpdateVisual(INintrollerState state) { if (state is ProController) { var pro = (ProController)state; _lastState = pro; aBtn.Opacity = pro.A ? 1 : 0; bBtn.Opacity = pro.B ? 1 : 0; xBtn.Opacity = pro.X ? 1 : 0; yBtn.Opacity = pro.Y ? 1 : 0; lBtn.Opacity = pro.L ? 1 : 0; rBtn.Opacity = pro.R ? 1 : 0; zlBtn.Opacity = pro.ZL ? 1 : 0; zrBtn.Opacity = pro.ZR ? 1 : 0; dpadUp.Opacity = pro.Up ? 1 : 0; dpadDown.Opacity = pro.Down ? 1 : 0; dpadLeft.Opacity = pro.Left ? 1 : 0; dpadRight.Opacity = pro.Right ? 1 : 0; dpadCenter.Opacity = (pro.Up || pro.Down || pro.Left || pro.Right) ? 1 : 0; homeBtn.Opacity = pro.Home ? 1 : 0; plusBtn.Opacity = pro.Plus ? 1 : 0; minusBtn.Opacity = pro.Minus ? 1 : 0; leftStickBtn.Opacity = pro.LStick ? 1 : 0; rightStickBtn.Opacity = pro.RStick ? 1 : 0; leftStick.Margin = new Thickness(196 + 50 * pro.LJoy.X, 232 - 50 * pro.LJoy.Y, 0, 0); leftStickBtn.Margin = new Thickness(196 + 50 * pro.LJoy.X, 230 - 50 * pro.LJoy.Y, 0, 0); rightStick.Margin = new Thickness(980 + 50 * pro.RJoy.X, 232 - 50 * pro.RJoy.Y, 0, 0); rightStickBtn.Margin = new Thickness(980 + 50 * pro.RJoy.X, 230 - 50 * pro.RJoy.Y, 0, 0); if (_openJoyWindow != null) { _openJoyWindow.Update(_rightJoyOpen ? pro.RJoy : pro.LJoy); } } }
/// <summary> /// Sets calibrations based on a preset. /// </summary> /// <param name="preset"></param> public void SetCalibrations(Calibrations.CalibrationPreset preset) { switch (preset) { case Calibrations.CalibrationPreset.Default: ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; GuitarCalibration = Calibrations.Defaults.GuitarDefault; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Defaults.GameCubeControllerDefault, port2 = Calibrations.Defaults.GameCubeControllerDefault, port3 = Calibrations.Defaults.GameCubeControllerDefault, port4 = Calibrations.Defaults.GameCubeControllerDefault, }; break; case Calibrations.CalibrationPreset.Modest: ProCalibration = Calibrations.Moderate.ProControllerModest; WiimoteCalibration = Calibrations.Moderate.WiimoteModest; NunchukCalibration = Calibrations.Moderate.NunchukModest; ClassicCalibration = Calibrations.Moderate.ClassicControllerModest; ClassicProCalibration = Calibrations.Moderate.ClassicControllerProModest; GuitarCalibration = Calibrations.Moderate.GuitarModest; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Moderate.GameCubeControllerModest, port2 = Calibrations.Moderate.GameCubeControllerModest, port3 = Calibrations.Moderate.GameCubeControllerModest, port4 = Calibrations.Moderate.GameCubeControllerModest, }; break; case Calibrations.CalibrationPreset.Extra: ProCalibration = Calibrations.Extras.ProControllerExtra; WiimoteCalibration = Calibrations.Extras.WiimoteExtra; NunchukCalibration = Calibrations.Extras.NunchukExtra; ClassicCalibration = Calibrations.Extras.ClassicControllerExtra; ClassicProCalibration = Calibrations.Extras.ClassicControllerProExtra; GuitarCalibration = Calibrations.Extras.GuitarExtra; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Extras.GameCubeControllerExtra, port2 = Calibrations.Extras.GameCubeControllerExtra, port3 = Calibrations.Extras.GameCubeControllerExtra, port4 = Calibrations.Extras.GameCubeControllerExtra, }; break; case Calibrations.CalibrationPreset.Minimum: ProCalibration = Calibrations.Minimum.ProControllerMinimal; WiimoteCalibration = Calibrations.Minimum.WiimoteMinimal; NunchukCalibration = Calibrations.Minimum.NunchukMinimal; ClassicCalibration = Calibrations.Minimum.ClassicControllerMinimal; ClassicProCalibration = Calibrations.Minimum.ClassicControllerProMinimal; GuitarCalibration = Calibrations.Minimum.GuitarMinimal; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Minimum.GameCubeControllerMinimal, port2 = Calibrations.Minimum.GameCubeControllerMinimal, port3 = Calibrations.Minimum.GameCubeControllerMinimal, port4 = Calibrations.Minimum.GameCubeControllerMinimal, }; break; case Calibrations.CalibrationPreset.None: ProCalibration = Calibrations.None.ProControllerRaw; WiimoteCalibration = Calibrations.None.WiimoteRaw; NunchukCalibration = Calibrations.None.NunchukRaw; ClassicCalibration = Calibrations.None.ClassicControllerRaw; ClassicProCalibration = Calibrations.None.ClassicControllerProRaw; GuitarCalibration = Calibrations.None.GuitarRaw; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.None.GameCubeControllerRaw, port2 = Calibrations.None.GameCubeControllerRaw, port3 = Calibrations.None.GameCubeControllerRaw, port4 = Calibrations.None.GameCubeControllerRaw, }; break; } }
private void StateUpdate(object sender, NintrollerStateEventArgs e) { Dispatcher.Invoke(() => { try { switch (e.controllerType) { case ControllerType.ProController: #region Pro Controller Display ProController pro = new ProController(); pro = (ProController)e.state; if (_stackDigitalInputs.Children.Count < 17) { return; } ((CheckBox)_stackDigitalInputs.Children[0]).IsChecked = pro.A; ((CheckBox)_stackDigitalInputs.Children[1]).IsChecked = pro.B; ((CheckBox)_stackDigitalInputs.Children[2]).IsChecked = pro.X; ((CheckBox)_stackDigitalInputs.Children[3]).IsChecked = pro.Y; ((CheckBox)_stackDigitalInputs.Children[4]).IsChecked = pro.Up; ((CheckBox)_stackDigitalInputs.Children[5]).IsChecked = pro.Down; ((CheckBox)_stackDigitalInputs.Children[6]).IsChecked = pro.Left; ((CheckBox)_stackDigitalInputs.Children[7]).IsChecked = pro.Right; ((CheckBox)_stackDigitalInputs.Children[8]).IsChecked = pro.L; ((CheckBox)_stackDigitalInputs.Children[9]).IsChecked = pro.R; ((CheckBox)_stackDigitalInputs.Children[10]).IsChecked = pro.ZL; ((CheckBox)_stackDigitalInputs.Children[11]).IsChecked = pro.ZR; ((CheckBox)_stackDigitalInputs.Children[12]).IsChecked = pro.Plus; ((CheckBox)_stackDigitalInputs.Children[13]).IsChecked = pro.Minus; ((CheckBox)_stackDigitalInputs.Children[14]).IsChecked = pro.Home; ((CheckBox)_stackDigitalInputs.Children[15]).IsChecked = pro.LStick; ((CheckBox)_stackDigitalInputs.Children[16]).IsChecked = pro.RStick; if (_stackAnalogInputs.Children.Count < 4) { return; } ((Label)_stackAnalogInputs.Children[0]).Content = pro.LJoy.rawX.ToString(); ((Label)_stackAnalogInputs.Children[1]).Content = pro.LJoy.rawY.ToString(); ((Label)_stackAnalogInputs.Children[2]).Content = pro.LJoy.ToString(); ((Label)_stackAnalogInputs.Children[3]).Content = pro.RJoy.rawX.ToString(); ((Label)_stackAnalogInputs.Children[4]).Content = pro.RJoy.rawY.ToString(); ((Label)_stackAnalogInputs.Children[5]).Content = pro.RJoy.ToString(); #endregion break; case ControllerType.Wiimote: #region Wiimote Display //Wiimote wm = new Wiimote(); //wm = (Wiimote)e.state; // try/catch if we must UpdateWiimoteInputs((Wiimote)e.state); #endregion break; case ControllerType.Nunchuk: case ControllerType.NunchukB: #region Nunchuk Display var nun = ((Nunchuk)e.state); UpdateWiimoteInputs(nun.wiimote); // Update Digital Inputs if (_stackDigitalInputs.Children.Count < 17) { return; } ((CheckBox)_stackDigitalInputs.Children[15]).IsChecked = nun.C; ((CheckBox)_stackDigitalInputs.Children[16]).IsChecked = nun.Z; if (_stackAnalogInputs.Children.Count < 15) { return; } ((Label)_stackAnalogInputs.Children[8]).Content = "Left Joy: " + nun.joystick.ToString(); ((Label)_stackAnalogInputs.Children[9]).Content = "LJoy X: " + nun.joystick.rawX.ToString(); ((Label)_stackAnalogInputs.Children[10]).Content = "LJoy Y: " + nun.joystick.rawY.ToString(); ((Label)_stackAnalogInputs.Children[11]).Content = "Acc: " + nun.accelerometer.ToString(); ((Label)_stackAnalogInputs.Children[12]).Content = "Acc X: " + nun.accelerometer.rawX.ToString(); ((Label)_stackAnalogInputs.Children[13]).Content = "Acc Y: " + nun.accelerometer.rawY.ToString(); ((Label)_stackAnalogInputs.Children[14]).Content = "Acc Z: " + nun.accelerometer.rawZ.ToString(); #endregion break; case ControllerType.ClassicController: #region Classic Controller Display var cc = ((ClassicController)e.state); UpdateWiimoteInputs(cc.wiimote); // Update Digital Inputs if (_stackDigitalInputs.Children.Count < 32) { return; } ((CheckBox)_stackDigitalInputs.Children[15]).IsChecked = cc.A; ((CheckBox)_stackDigitalInputs.Children[16]).IsChecked = cc.B; ((CheckBox)_stackDigitalInputs.Children[17]).IsChecked = cc.X; ((CheckBox)_stackDigitalInputs.Children[18]).IsChecked = cc.Y; ((CheckBox)_stackDigitalInputs.Children[19]).IsChecked = cc.Up; ((CheckBox)_stackDigitalInputs.Children[20]).IsChecked = cc.Down; ((CheckBox)_stackDigitalInputs.Children[21]).IsChecked = cc.Left; ((CheckBox)_stackDigitalInputs.Children[22]).IsChecked = cc.Right; ((CheckBox)_stackDigitalInputs.Children[23]).IsChecked = cc.L.value > 0; ((CheckBox)_stackDigitalInputs.Children[24]).IsChecked = cc.R.value > 0; ((CheckBox)_stackDigitalInputs.Children[25]).IsChecked = cc.LFull; // cc.L.full; ((CheckBox)_stackDigitalInputs.Children[26]).IsChecked = cc.RFull; // cc.R.full; ((CheckBox)_stackDigitalInputs.Children[27]).IsChecked = cc.ZL; ((CheckBox)_stackDigitalInputs.Children[28]).IsChecked = cc.ZR; ((CheckBox)_stackDigitalInputs.Children[29]).IsChecked = cc.Plus; ((CheckBox)_stackDigitalInputs.Children[30]).IsChecked = cc.Minus; ((CheckBox)_stackDigitalInputs.Children[31]).IsChecked = cc.Home; if (_stackAnalogInputs.Children.Count < 16) { return; } ((Label)_stackAnalogInputs.Children[8]).Content = "Left Joy: " + cc.LJoy.ToString(); ((Label)_stackAnalogInputs.Children[9]).Content = "LJoy X: " + cc.LJoy.rawX.ToString(); ((Label)_stackAnalogInputs.Children[10]).Content = "LJoy Y: " + cc.LJoy.rawY.ToString(); ((Label)_stackAnalogInputs.Children[11]).Content = "Right Joy: " + cc.RJoy.ToString(); ((Label)_stackAnalogInputs.Children[12]).Content = "RJoy X: " + cc.RJoy.rawX.ToString(); ((Label)_stackAnalogInputs.Children[13]).Content = "RJoy Y: " + cc.RJoy.rawY.ToString(); ((Label)_stackAnalogInputs.Children[14]).Content = "LTrigger: " + cc.L.rawValue.ToString(); ((Label)_stackAnalogInputs.Children[15]).Content = "RTrigger: " + cc.R.rawValue.ToString(); #endregion break; case ControllerType.ClassicControllerPro: #region Classic Controller Pro Display var ccp = ((ClassicControllerPro)e.state); UpdateWiimoteInputs(ccp.wiimote); // Update Digital Inputs if (_stackDigitalInputs.Children.Count < 30) { return; } ((CheckBox)_stackDigitalInputs.Children[15]).IsChecked = ccp.A; ((CheckBox)_stackDigitalInputs.Children[16]).IsChecked = ccp.B; ((CheckBox)_stackDigitalInputs.Children[17]).IsChecked = ccp.X; ((CheckBox)_stackDigitalInputs.Children[18]).IsChecked = ccp.Y; ((CheckBox)_stackDigitalInputs.Children[19]).IsChecked = ccp.Up; ((CheckBox)_stackDigitalInputs.Children[20]).IsChecked = ccp.Down; ((CheckBox)_stackDigitalInputs.Children[21]).IsChecked = ccp.Left; ((CheckBox)_stackDigitalInputs.Children[22]).IsChecked = ccp.Right; ((CheckBox)_stackDigitalInputs.Children[23]).IsChecked = ccp.L; ((CheckBox)_stackDigitalInputs.Children[24]).IsChecked = ccp.R; ((CheckBox)_stackDigitalInputs.Children[25]).IsChecked = ccp.ZL; ((CheckBox)_stackDigitalInputs.Children[26]).IsChecked = ccp.ZR; ((CheckBox)_stackDigitalInputs.Children[27]).IsChecked = ccp.Plus; ((CheckBox)_stackDigitalInputs.Children[28]).IsChecked = ccp.Minus; ((CheckBox)_stackDigitalInputs.Children[29]).IsChecked = ccp.Home; if (_stackAnalogInputs.Children.Count < 14) { return; } ((Label)_stackAnalogInputs.Children[8]).Content = "Left Joy: " + ccp.LJoy.ToString(); ((Label)_stackAnalogInputs.Children[9]).Content = "LJoy X: " + ccp.LJoy.rawX.ToString(); ((Label)_stackAnalogInputs.Children[10]).Content = "LJoy Y: " + ccp.LJoy.rawY.ToString(); ((Label)_stackAnalogInputs.Children[11]).Content = "Right Joy: " + ccp.RJoy.ToString(); ((Label)_stackAnalogInputs.Children[12]).Content = "RJoy X: " + ccp.RJoy.rawX.ToString(); ((Label)_stackAnalogInputs.Children[13]).Content = "RJoy Y: " + ccp.RJoy.rawY.ToString(); #endregion break; case ControllerType.BalanceBoard: #region Balance Board Display #endregion break; } } catch (Exception ex) { } }); }
void device_StateChange(object sender, NintrollerStateEventArgs e) { // Makes the timer wait if (updateTimer != null) { updateTimer.Change(1000, UPDATE_SPEED); } if (holder == null) { return; } // float intensity = 0; // if (holder.Values.TryGetValue(Inputs.Flags.RUMBLE, out intensity)) // { // rumbleAmount = (int)intensity; RumbleStep(); // } holder.ClearAllValues(); switch (e.controllerType) { // TODO: Motion Plus Reading (not for 1st release) // TODO: Balance Board Reading (not for 1st release) // TODO: Musical Extension readings (not for 1st release) case ControllerType.ProController: #region Pro Controller ProController pro = (ProController)e.state; holder.SetValue(Inputs.ProController.A, pro.A); holder.SetValue(Inputs.ProController.B, pro.B); holder.SetValue(Inputs.ProController.X, pro.X); holder.SetValue(Inputs.ProController.Y, pro.Y); holder.SetValue(Inputs.ProController.UP, pro.Up); holder.SetValue(Inputs.ProController.DOWN, pro.Down); holder.SetValue(Inputs.ProController.LEFT, pro.Left); holder.SetValue(Inputs.ProController.RIGHT, pro.Right); holder.SetValue(Inputs.ProController.L, pro.L); holder.SetValue(Inputs.ProController.R, pro.R); holder.SetValue(Inputs.ProController.ZL, pro.ZL); holder.SetValue(Inputs.ProController.ZR, pro.ZR); holder.SetValue(Inputs.ProController.START, pro.Plus); holder.SetValue(Inputs.ProController.SELECT, pro.Minus); holder.SetValue(Inputs.ProController.HOME, pro.Home); holder.SetValue(Inputs.ProController.LS, pro.LStick); holder.SetValue(Inputs.ProController.RS, pro.RStick); holder.SetValue(Inputs.ProController.LRIGHT, pro.LJoy.X > 0 ? pro.LJoy.X : 0f); holder.SetValue(Inputs.ProController.LLEFT, pro.LJoy.X < 0 ? pro.LJoy.X * -1 : 0f); holder.SetValue(Inputs.ProController.LUP, pro.LJoy.Y > 0 ? pro.LJoy.Y : 0f); holder.SetValue(Inputs.ProController.LDOWN, pro.LJoy.Y < 0 ? pro.LJoy.Y * -1 : 0f); holder.SetValue(Inputs.ProController.RRIGHT, pro.RJoy.X > 0 ? pro.RJoy.X : 0f); holder.SetValue(Inputs.ProController.RLEFT, pro.RJoy.X < 0 ? pro.RJoy.X * -1 : 0f); holder.SetValue(Inputs.ProController.RUP, pro.RJoy.Y > 0 ? pro.RJoy.Y : 0f); holder.SetValue(Inputs.ProController.RDOWN, pro.RJoy.Y < 0 ? pro.RJoy.Y * -1 : 0f); #endregion break; case ControllerType.Wiimote: Wiimote wm = (Wiimote)e.state; SetWiimoteInputs(wm); break; case ControllerType.Nunchuk: case ControllerType.NunchukB: #region Nunchuk Nunchuk nun = (Nunchuk)e.state; SetWiimoteInputs(nun.wiimote); holder.SetValue(Inputs.Nunchuk.C, nun.C); holder.SetValue(Inputs.Nunchuk.Z, nun.Z); holder.SetValue(Inputs.Nunchuk.RIGHT, nun.joystick.X > 0 ? nun.joystick.X : 0f); holder.SetValue(Inputs.Nunchuk.LEFT, nun.joystick.X < 0 ? nun.joystick.X * -1 : 0f); holder.SetValue(Inputs.Nunchuk.UP, nun.joystick.Y > 0 ? nun.joystick.Y : 0f); holder.SetValue(Inputs.Nunchuk.DOWN, nun.joystick.Y < 0 ? nun.joystick.Y * -1 : 0f); //TODO: Nunchuk Accelerometer (not for 1st release) holder.SetValue(Inputs.Nunchuk.TILT_RIGHT, nun.accelerometer.X > 0 ? nun.accelerometer.X : 0f); holder.SetValue(Inputs.Nunchuk.TILT_LEFT, nun.accelerometer.X < 0 ? nun.accelerometer.X * -1 : 0f); holder.SetValue(Inputs.Nunchuk.TILT_UP, nun.accelerometer.Y > 0 ? nun.accelerometer.Y : 0f); holder.SetValue(Inputs.Nunchuk.TILT_DOWN, nun.accelerometer.Y < 0 ? nun.accelerometer.Y * -1 : 0f); holder.SetValue(Inputs.Nunchuk.ACC_SHAKE_X, nun.accelerometer.X > 1.15f); holder.SetValue(Inputs.Nunchuk.ACC_SHAKE_Y, nun.accelerometer.Y > 1.15f); holder.SetValue(Inputs.Nunchuk.ACC_SHAKE_Z, nun.accelerometer.Z > 1.15f); #endregion break; case ControllerType.ClassicController: #region Classic Controller ClassicController cc = (ClassicController)e.state; SetWiimoteInputs(cc.wiimote); holder.SetValue(Inputs.ClassicController.A, cc.A); holder.SetValue(Inputs.ClassicController.B, cc.B); holder.SetValue(Inputs.ClassicController.X, cc.X); holder.SetValue(Inputs.ClassicController.Y, cc.Y); holder.SetValue(Inputs.ClassicController.UP, cc.Up); holder.SetValue(Inputs.ClassicController.DOWN, cc.Down); holder.SetValue(Inputs.ClassicController.LEFT, cc.Left); holder.SetValue(Inputs.ClassicController.RIGHT, cc.Right); holder.SetValue(Inputs.ClassicController.L, cc.L.value > 0); holder.SetValue(Inputs.ClassicController.R, cc.R.value > 0); holder.SetValue(Inputs.ClassicController.ZL, cc.ZL); holder.SetValue(Inputs.ClassicController.ZR, cc.ZR); holder.SetValue(Inputs.ClassicController.START, cc.Start); holder.SetValue(Inputs.ClassicController.SELECT, cc.Select); holder.SetValue(Inputs.ClassicController.HOME, cc.Home); holder.SetValue(Inputs.ClassicController.LFULL, cc.LFull); holder.SetValue(Inputs.ClassicController.RFULL, cc.RFull); holder.SetValue(Inputs.ClassicController.LT, cc.L.value > 0.1f ? cc.L.value : 0f); holder.SetValue(Inputs.ClassicController.RT, cc.R.value > 0.1f ? cc.R.value : 0f); holder.SetValue(Inputs.ClassicController.LRIGHT, cc.LJoy.X > 0 ? cc.LJoy.X : 0f); holder.SetValue(Inputs.ClassicController.LLEFT, cc.LJoy.X < 0 ? cc.LJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicController.LUP, cc.LJoy.Y > 0 ? cc.LJoy.Y : 0f); holder.SetValue(Inputs.ClassicController.LDOWN, cc.LJoy.Y < 0 ? cc.LJoy.Y * -1 : 0f); holder.SetValue(Inputs.ClassicController.RRIGHT, cc.RJoy.X > 0 ? cc.RJoy.X : 0f); holder.SetValue(Inputs.ClassicController.RLEFT, cc.RJoy.X < 0 ? cc.RJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicController.RUP, cc.RJoy.Y > 0 ? cc.RJoy.Y : 0f); holder.SetValue(Inputs.ClassicController.RDOWN, cc.RJoy.Y < 0 ? cc.RJoy.Y * -1 : 0f); #endregion break; case ControllerType.ClassicControllerPro: #region Classic Controller Pro ClassicControllerPro ccp = (ClassicControllerPro)e.state; SetWiimoteInputs(ccp.wiimote); holder.SetValue(Inputs.ClassicControllerPro.A, ccp.A); holder.SetValue(Inputs.ClassicControllerPro.B, ccp.B); holder.SetValue(Inputs.ClassicControllerPro.X, ccp.X); holder.SetValue(Inputs.ClassicControllerPro.Y, ccp.Y); holder.SetValue(Inputs.ClassicControllerPro.UP, ccp.Up); holder.SetValue(Inputs.ClassicControllerPro.DOWN, ccp.Down); holder.SetValue(Inputs.ClassicControllerPro.LEFT, ccp.Left); holder.SetValue(Inputs.ClassicControllerPro.RIGHT, ccp.Right); holder.SetValue(Inputs.ClassicControllerPro.L, ccp.L); holder.SetValue(Inputs.ClassicControllerPro.R, ccp.R); holder.SetValue(Inputs.ClassicControllerPro.ZL, ccp.ZL); holder.SetValue(Inputs.ClassicControllerPro.ZR, ccp.ZR); holder.SetValue(Inputs.ClassicControllerPro.START, ccp.Start); holder.SetValue(Inputs.ClassicControllerPro.SELECT, ccp.Select); holder.SetValue(Inputs.ClassicControllerPro.HOME, ccp.Home); holder.SetValue(Inputs.ClassicControllerPro.LRIGHT, ccp.LJoy.X > 0 ? ccp.LJoy.X : 0f); holder.SetValue(Inputs.ClassicControllerPro.LLEFT, ccp.LJoy.X < 0 ? ccp.LJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicControllerPro.LUP, ccp.LJoy.Y > 0 ? ccp.LJoy.Y : 0f); holder.SetValue(Inputs.ClassicControllerPro.LDOWN, ccp.LJoy.Y < 0 ? ccp.LJoy.Y * -1 : 0f); holder.SetValue(Inputs.ClassicControllerPro.RRIGHT, ccp.RJoy.X > 0 ? ccp.RJoy.X : 0f); holder.SetValue(Inputs.ClassicControllerPro.RLEFT, ccp.RJoy.X < 0 ? ccp.RJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicControllerPro.RUP, ccp.RJoy.Y > 0 ? ccp.RJoy.Y : 0f); holder.SetValue(Inputs.ClassicControllerPro.RDOWN, ccp.RJoy.Y < 0 ? ccp.RJoy.Y * -1 : 0f); #endregion break; } holder.Update(); // Resumes the timer in case this method is not called withing 100ms if (updateTimer != null) { updateTimer.Change(100, UPDATE_SPEED); } }