public override void ImportSettings(string settings) { if (string.IsNullOrEmpty(settings)) { throw new ArgumentException("Import string empty. (BIPLinkPZ69)"); } if (settings.StartsWith("RadioPanelBIPLink{")) { //RadioPanelBIPLink{1UpperCOM1}\o/BIPLight{Position_1_4|GREEN|FourSec|f5fe6e63e0c05a20f519d4b9e46fab3e}\o/BIPLight{Position_1_4|GREEN|FourSec|f5fe6e63e0c05a20f519d4b9e46fab3e}\o/Description["Set Engines On"]\o/\\?\hid#vid_06a3&pid_0d67#9&231fd360&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} // 0 1 2 3 var parameters = settings.Split(new[] { SaitekConstants.SEPARATOR_SYMBOL }, StringSplitOptions.RemoveEmptyEntries); //RadioPanelBIPLink{1UpperCOM1} var param0 = parameters[0].Replace("RadioPanelBIPLink{", "").Replace("}", "").Trim(); //1UpperCOM1 WhenOnTurnedOn = param0.Substring(0, 1) == "1"; param0 = param0.Substring(1); _panelPZ69Knob = (RadioPanelPZ69KnobsEmulator)Enum.Parse(typeof(RadioPanelPZ69KnobsEmulator), param0); for (var i = 0; i < parameters.Length; i++) { if (parameters[i].StartsWith("BIPLight")) { var tmpBipLight = new BIPLight(); _bipLights.Add(GetNewKeyValue(), tmpBipLight); tmpBipLight.ImportSettings(parameters[i]); } if (parameters[i].StartsWith("Description[")) { var tmp = parameters[i].Replace("Description[", "").Replace("]", ""); _description = tmp; } } } }
public void ShowLight(BIPLight bipLight) { foreach (var backlitPanelBIP in _backlitPanels) { if (bipLight.BindingHash == backlitPanelBIP.BindingHash) { backlitPanelBIP.SetLED(bipLight.BIPLedPosition, bipLight.LEDColor); } } }
public override void ImportSettings(string settings) { if (string.IsNullOrEmpty(settings)) { throw new ArgumentException("Import string empty. (BIPLinkPZ70)"); } if (settings.StartsWith("MultipanelBIPLink{")) { // MultipanelBIPLink{ALT|1KNOB_ENGINE_LEFT}\o/BIPLight{Position_1_4|GREEN|FourSec|f5fe6e63e0c05a20f519d4b9e46fab3e}\o/BIPLight{Position_1_4|GREEN|FourSec|f5fe6e63e0c05a20f519d4b9e46fab3e}\o/Description["Set Engines On"]\o/\\?\hid#vid_06a3&pid_0d67#9&231fd360&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} // 0 1 2 3 var parameters = settings.Split(new[] { SaitekConstants.SEPARATOR_SYMBOL }, StringSplitOptions.RemoveEmptyEntries); // MultipanelBIPLink{ALT|1KNOB_ENGINE_LEFT} var param0 = parameters[0].Replace("MultipanelBIPLink{", string.Empty).Replace("}", string.Empty).Trim(); // ALT|1KNOB_ENGINE_LEFT var tmpArray = param0.Split(new[] { "|" }, StringSplitOptions.RemoveEmptyEntries); WhenOnTurnedOn = tmpArray[1].Substring(0, 1) == "1"; MultiPanelPZ70Knob = (MultiPanelPZ70Knobs)Enum.Parse(typeof(MultiPanelPZ70Knobs), tmpArray[1].Substring(1)); DialPosition = (PZ70DialPosition)Enum.Parse(typeof(PZ70DialPosition), tmpArray[0]); for (var i = 0; i < parameters.Length; i++) { if (parameters[i].StartsWith("BIPLight")) { var tmpBipLight = new BIPLight(); _bipLights.Add(GetNewKeyValue(), tmpBipLight); tmpBipLight.ImportSettings(parameters[i]); } if (parameters[i].StartsWith("Description[")) { var tmp = parameters[i].Replace("Description[", string.Empty).Replace("]", string.Empty); _description = tmp; } } } }
public static void ShowLight(BIPLight bipLight) { BIPEventHandlerManager.ShowLight(bipLight); }