void HandleSeekBarsChanges(string deviceName) { try { SeekBar seekBarRed = FindViewById <SeekBar>(GetResourceId(deviceName, "seekBarRed")); SeekBar seekBarGreen = FindViewById <SeekBar>(GetResourceId(deviceName, "seekBarGreen")); SeekBar seekBarBlue = FindViewById <SeekBar>(GetResourceId(deviceName, "seekBarBlue")); PhotonStates photonStates = GetPhotonStates(deviceName); if (seekBarRed.Progress != photonStates.RedSeekBar) { photonStates.RedSeekBar = seekBarRed.Progress; int setRGBRed = (int)(photonStates.RedSeekBar * 2.555); SendCommand(deviceName, Photon.OBJECT_RGB_LED, Photon.COMMAND_SET_RGB_RED, setRGBRed.ToString()); } if (seekBarGreen.Progress != photonStates.GreenSeekBar) { photonStates.GreenSeekBar = seekBarGreen.Progress; int setRGBGreen = (int)(photonStates.GreenSeekBar * 2.555); SendCommand(deviceName, Photon.OBJECT_RGB_LED, Photon.COMMAND_SET_RGB_GREEN, setRGBGreen.ToString()); } if (seekBarBlue.Progress != photonStates.BlueSeekBar) { photonStates.BlueSeekBar = seekBarBlue.Progress; int setRGBBlue = (int)(photonStates.BlueSeekBar * 2.555); SendCommand(deviceName, Photon.OBJECT_RGB_LED, Photon.COMMAND_SET_RGB_BLUE, setRGBBlue.ToString()); } } catch (Exception exception) { //Add logging for Mono.Android } }
private void UiUpdatesTimer_Elapsed(object sender, ElapsedEventArgs e) { try { if (receivedMessages.Count > 0) { Models.Message message = null; if (receivedMessages.TryDequeue(out message)) { PhotonStates photonStates = GetPhotonStates(message.FromDevice); if (message.Name.Equals(Photon.OBJECT_SENSOR)) { if (message.Parameter.Equals(Photon.DATA_SENSOR_TEMPERATURE)) { this.RunOnUiThread(() => { UpdateTextView(message.FromDevice, Photon.DATA_SENSOR_TEMPERATURE, message.Content.ToString()); }); } else if (message.Parameter.Equals(Photon.DATA_SENSOR_HUMIDITY)) { this.RunOnUiThread(() => { UpdateTextView(message.FromDevice, Photon.DATA_SENSOR_HUMIDITY, message.Content.ToString()); }); } } else if (message.Name.Equals(Photon.OBJECT_BOARD_LED)) { if (message.Parameter.Equals(Photon.DATA_LED_STATUS)) { this.RunOnUiThread(() => { ToggleLEDButton(message.FromDevice, Photon.OBJECT_BOARD_LED, message.Content.ToString()); }); } } else if (message.Name.Equals(Photon.OBJECT_RED_LED)) { if (message.Parameter.Equals(Photon.DATA_LED_STATUS)) { this.RunOnUiThread(() => { ToggleLEDButton(message.FromDevice, Photon.OBJECT_RED_LED, message.Content.ToString()); }); } } else if (message.Name.Equals(Photon.OBJECT_GREEN_LED)) { if (message.Parameter.Equals(Photon.DATA_LED_STATUS)) { this.RunOnUiThread(() => { ToggleLEDButton(message.FromDevice, Photon.OBJECT_GREEN_LED, message.Content.ToString()); }); } } else if (message.Name.Equals(Photon.OBJECT_RGB_LED)) { if (message.Parameter.Equals(Photon.DATA_RGB_RED)) { photonStates.RGBRed = Int32.Parse(message.Content.ToString()); } else if (message.Parameter.Equals(Photon.DATA_RGB_GREEN)) { photonStates.RGBGreen = Int32.Parse(message.Content.ToString()); } else if (message.Parameter.Equals(Photon.DATA_RGB_BLUE)) { photonStates.RGBBlue = Int32.Parse(message.Content.ToString()); } this.RunOnUiThread(() => { SetRGBButton(message.FromDevice, photonStates.RGBRed, photonStates.RGBGreen, photonStates.RGBBlue); }); } } } HandleSeekBarsChanges(Devices.PHOTON_A); HandleSeekBarsChanges(Devices.PHOTON_B); HandleSeekBarsChanges(Devices.PHOTON_C); } catch (Exception) { //Add logging for Mono.Android } }