| | |
| | | Width = Application.GetRealWidth (110), |
| | | Height = Application.GetRealHeight (70), |
| | | Radius = 2, |
| | | BorderColor = SkinStyle.Current.White20Transparent, |
| | | //BorderColor = SkinStyle.Current.White20Transparent, |
| | | BorderWidth = 2, |
| | | Text = udDevice.ON_Text |
| | | Text = udDevice.ON_Text, |
| | | BorderColor = SkinStyle.Current.BorderColor, |
| | | TextColor = SkinStyle.Current.TextColor1, |
| | | //SelectedTextColor = SkinStyle.Current.TextColor1, |
| | | }; |
| | | windBodyView.AddChidren (tempSiwtch); |
| | | |
| | | |
| | | if (udDevice.ActionType == 0) { |
| | | SetUDSendBytes (udDevice, 255); |
| | | tempSiwtch.Text = udDevice.ON_Text; |
| | | tempSiwtch.MouseUpEventHandler += (sender3, e3) => { |
| | | if (udDevice.UniversalType == 0xE01C) { |
| | | if (udDevice.ActionType == 0) { |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, 255 }; |
| | | } else |
| | | udDevice.SendBytes [1] = 255; |
| | | SetUDSendBytes (udDevice, 255); |
| | | Control.ControlBytesSend (Command.SetCommonSwitch, udDevice.SubnetID, udDevice.DeviceID, new byte [] { udDevice.SendBytes [0], 255 }, SendCount.Zero); |
| | | } |
| | | tempSiwtch.BorderColor = SkinStyle.Current.SelectedColor; |
| | | } |
| | | }; |
| | | } else if (udDevice.ActionType == 1) { |
| | | SetUDSendBytes (udDevice, 0); |
| | | tempSiwtch.TextID = R.MyInternationalizationString.OFF; |
| | | tempSiwtch.MouseUpEventHandler += (sender3, e3) => { |
| | | if (udDevice.UniversalType == 0xE01C) { |
| | | if (udDevice.ActionType == 1) { |
| | | |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, 0 }; |
| | | } else |
| | | udDevice.SendBytes [1] = 0; |
| | | SetUDSendBytes (udDevice, 0); |
| | | Control.ControlBytesSend (Command.SetCommonSwitch, udDevice.SubnetID, udDevice.DeviceID, new byte [] { udDevice.SendBytes [0], 0 }, SendCount.Zero); |
| | | } |
| | | tempSiwtch.BorderColor = SkinStyle.Current.SelectedColor; |
| | | } |
| | | }; |
| | | } else if (udDevice.ActionType == 2) { |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | //赋默认值 |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, 255 }; |
| | | } |
| | | |
| | | tempSiwtch.TextID = R.MyInternationalizationString.OFF; |
| | | tempSiwtch.X = Application.GetRealWidth (100); |
| | | tempSiwtch.Y = Application.GetRealHeight (100); |
| | |
| | | Radius = 2, |
| | | BorderColor = SkinStyle.Current.White20Transparent, |
| | | BorderWidth = 2, |
| | | TextID = R.MyInternationalizationString.ON |
| | | TextID = R.MyInternationalizationString.ON, |
| | | TextColor = SkinStyle.Current.TextColor1, |
| | | }; |
| | | windBodyView.AddChidren (tempON); |
| | | tempON.MouseUpEventHandler += (sender3, e3) => { |
| | | if (udDevice.UniversalType == 0xE01C) { |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, 255 }; |
| | | } else |
| | | udDevice.SendBytes [1] = 255; |
| | | SetUDSendBytes (udDevice, 255); |
| | | Control.ControlBytesSend (Command.SetCommonSwitch, udDevice.SubnetID, udDevice.DeviceID, new byte [] { udDevice.SendBytes [0], 255 }, SendCount.Zero); |
| | | } |
| | | tempON.BorderColor = SkinStyle.Current.SelectedColor; |
| | |
| | | }; |
| | | tempSiwtch.MouseUpEventHandler += (sender3, e3) => { |
| | | if (udDevice.UniversalType == 0xE01C) { |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, 0 }; |
| | | } else |
| | | udDevice.SendBytes [1] = 0; |
| | | SetUDSendBytes (udDevice, 0); |
| | | Control.ControlBytesSend (Command.SetCommonSwitch, udDevice.SubnetID, udDevice.DeviceID, new byte [] { udDevice.SendBytes [0], 0 }, SendCount.Zero); |
| | | } |
| | | tempSiwtch.BorderColor = SkinStyle.Current.SelectedColor; |
| | | tempON.BorderColor = SkinStyle.Current.Transparent; |
| | | }; |
| | | |
| | | |
| | | if (udDevice.SendBytes [1] > 0) { |
| | | tempON.BorderColor = SkinStyle.Current.SelectedColor; |
| | | tempSiwtch.BorderColor = SkinStyle.Current.Transparent; |
| | | } else { |
| | | tempSiwtch.BorderColor = SkinStyle.Current.SelectedColor; |
| | | tempON.BorderColor = SkinStyle.Current.Transparent; |
| | | } |
| | | } |
| | | |
| | | btnSave.MouseUpEventHandler += (sender2, e2) => { |
| | |
| | | } |
| | | dialog.Show (); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// UniversalDevice |
| | | /// </summary> |
| | | /// <param name="udDevice"></param> |
| | | /// <param name="mStatus"> 255/0</param> |
| | | public void SetUDSendBytes (UniversalDevice udDevice, byte mStatus) { |
| | | |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, mStatus }; |
| | | } else { |
| | | udDevice.SendBytes [1] = mStatus; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 根据ActionType状态,赋默认值 |
| | | /// </summary> |
| | | /// <param name="udDevice"></param> |
| | | /// <param name="mStatus"></param> |
| | | public void SetUDDefaultsSendBytes (UniversalDevice udDevice) |
| | | { |
| | | if (udDevice == null) return; |
| | | |
| | | //只开、开关 都默认为255 |
| | | if (udDevice.SendBytes.Count == 0) { |
| | | udDevice.SendBytes = new List<byte> () { udDevice.LoopID, 255 }; |
| | | } else { |
| | | udDevice.SendBytes [1] = 255; |
| | | } |
| | | |
| | | //只关、重置为0 |
| | | if (udDevice.ActionType == 1) { |
| | | udDevice.SendBytes [1] = 0; |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 房间和场景添加设备的方法 |
| | |
| | | break; |
| | | case DeviceType.UniversalDevice: |
| | | var sssd = Newtonsoft.Json.JsonConvert.DeserializeObject<UniversalDevice> (System.Text.Encoding.UTF8.GetString (IO.FileUtils.ReadFile (deviceFilePath))); |
| | | SetUDDefaultsSendBytes (sssd); |
| | | IO.FileUtils.WriteFileByBytes (filePath, System.Text.Encoding.UTF8.GetBytes (Newtonsoft.Json.JsonConvert.SerializeObject (sssd))); |
| | | break; |
| | | default: |