| | |
| | | using System; |
| | | using HDL_ON.DriverLayer; |
| | | using HDL_ON.Entity; |
| | | using HDL_ON.UI.CSS; |
| | | using Shared; |
| | | |
| | | namespace HDL_ON.UI |
| | | { |
| | | public partial class ACPage |
| | | { |
| | | static DateTime updataTime = DateTime.MinValue; |
| | | public static void UpdataStates(AC uAc) |
| | | { |
| | | try |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | if (bodyView == null) |
| | | { |
| | | return; |
| | | } |
| | | if (updataTime.AddMilliseconds(300) > DateTime.Now) |
| | | { |
| | | return; |
| | | } |
| | | updataTime = DateTime.Now; |
| | | bodyView.arcBar.ProgressBarColor = bodyView.aC.trait_on_off.value.ToString() == "on" ? CSS_Color.MainColor : CSS_Color.PromptingColor2; |
| | | bodyView.btnTemp.Text = uAc.trait_temp.value.ToString(); |
| | | bodyView.btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + uAc.indoorTemp + "°C"; |
| | | bodyView.btnMode.UnSelectedImagePath = uAc.curModeImage; |
| | | bodyView.btnWindSpeed.UnSelectedImagePath = uAc.curFanImage; |
| | | bodyView.btnSwitch.IsSelected = uAc.trait_on_off.value.ToString() == "on"; |
| | | if (uAc.refreshTime.AddMilliseconds(1000) < DateTime.Now) |
| | | { |
| | | bodyView.arcBar.Progress = Convert.ToInt32(uAc.trait_temp.value); |
| | | |
| | | } |
| | | bodyView.arcBar.ProgressBarColor = uAc.trait_on_off.value.ToString() == "on" ? CSS_Color.MainColor : CSS_Color.PromptingColor2; |
| | | bodyView.arcBar.ThumbImagePath = uAc.trait_on_off.value.ToString() == "on" ? "FunctionIcon/AC/DiyThumbIconOn.png" : "FunctionIcon/AC/DiyThumbIcon.png"; |
| | | bodyView.arcBar.IsClickable = uAc.trait_on_off.value.ToString() == "on"; |
| | | }); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MainPage.Log($"acpage updata error {ex.Message}"); |
| | | } |
| | | } |
| | | |
| | | void LoadEventList() |
| | | { |
| | | LoadCollectionEvent(); |
| | | LoadEvent_ModeChange(); |
| | | LoadEvent_AcStatesChange(); |
| | | LoadEvent_TempChange(); |
| | | //回退刷新信息事件 |
| | | actionRefresh = () => { |
| | | btnFunctionName.Text = btnFunctionName_Out.Text = function.name; |
| | | btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = function.GetRoomListName(); |
| | | actionRefresh = () => |
| | | { |
| | | btnFunctionName.Text = btnFunctionName_Out.Text = aC.name; |
| | | btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = aC.GetRoomListName(); |
| | | }; |
| | | } |
| | | |
| | |
| | | /// </summary> |
| | | void LoadCollectionEvent() |
| | | { |
| | | btnCollection.MouseUpEventHandler += (sender, e) => { |
| | | btnCollection.IsSelected = function.collection = btnCollection_Out.IsSelected = !btnCollection.IsSelected; |
| | | DB_ResidenceData.residenceData.SaveResidenceData(); |
| | | btnCollection.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | btnCollection.IsSelected = aC.collection = btnCollection_Out.IsSelected = !btnCollection.IsSelected; |
| | | aC.SaveFunctionData(); |
| | | }; |
| | | } |
| | | |
| | |
| | | /// </summary> |
| | | void LoadEvent_TempChange() |
| | | { |
| | | btnMinus.MouseUpEventHandler = (sender, e) => { |
| | | //function as AC |
| | | btnMinus.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | var temp = Convert.ToInt32(aC.trait_temp.value); |
| | | if (temp < 17) |
| | | { |
| | | return; |
| | | } |
| | | temp--; |
| | | arcBar.Progress = temp; |
| | | btnTemp.Text = temp.ToString(); |
| | | aC.trait_temp.value = temp; |
| | | //Control.Send(CommandType_A.write, aC); |
| | | System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); |
| | | d.Add("temp", temp.ToString()); |
| | | Control.ins.SendWriteCommand(aC, d); |
| | | }; |
| | | btnPlus.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | var temp = Convert.ToInt32(aC.trait_temp.value); |
| | | if (temp > 37) |
| | | { |
| | | return; |
| | | } |
| | | temp++; |
| | | arcBar.Progress = temp; |
| | | btnTemp.Text = temp.ToString(); |
| | | aC.trait_temp.value = temp; |
| | | System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); |
| | | d.Add("temp", aC.trait_temp.value.ToString()); |
| | | Control.ins.SendWriteCommand(aC, d); |
| | | //aC.GetSendJObject |
| | | |
| | | }; |
| | | arcBar.OnStopTrackingTouchEvent = (sender, e) => |
| | | { |
| | | aC.trait_temp.value = arcBar.Progress; |
| | | btnTemp.Text = aC.trait_temp.value.ToString(); |
| | | //Control.Send(CommandType_A.write, aC); |
| | | System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); |
| | | d.Add("temp", aC.trait_temp.value.ToString()); |
| | | Control.ins.SendWriteCommand(aC, d); |
| | | }; |
| | | arcBar.OnProgressChangedEvent = (sender, e) => |
| | | { |
| | | aC.trait_temp.value = e; |
| | | btnTemp.Text = aC.trait_temp.value.ToString(); |
| | | }; |
| | | } |
| | | /// <summary> |
| | | /// 控制模式事件 |
| | | /// </summary> |
| | | void LoadEvent_AcStatesChange() |
| | | { |
| | | btnMode.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | LoadDiv_ChangeModeView(); |
| | | }; |
| | | btnWindSpeed.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | LoadDiv_ChangeFanView(); |
| | | }; |
| | | |
| | | btnSwitch.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | btnSwitch.IsSelected = !btnSwitch.IsSelected; |
| | | aC.trait_on_off.value = btnSwitch.IsSelected ? "on" : "off"; |
| | | bodyView.arcBar.ProgressBarColor = aC.trait_on_off.value.ToString() == "on" ? CSS_Color.MainColor : CSS_Color.PromptingColor2; |
| | | bodyView.arcBar.ThumbImagePath = aC.trait_on_off.value.ToString() == "on" ? "FunctionIcon/AC/DiyThumbIconOn.png" : "FunctionIcon/AC/DiyThumbIcon.png"; |
| | | bodyView.arcBar.IsClickable = aC.trait_on_off.value.ToString() == "on"; |
| | | |
| | | //bodyView.arcBar.ProgressBarColor = aC.on_off == "on" ? CSS_Color.MainColor : CSS_Color.PromptingColor2; |
| | | //bodyView.arcBar.ThumbImagePath = aC.on_off == "on" ? "FunctionIcon/AC/DiyThumbIconOn.png" : "FunctionIcon/AC/DiyThumbIcon.png"; |
| | | //bodyView.arcBar.IsClickable = aC.on_off == "on"; |
| | | |
| | | //Control.Send(CommandType_A.write, aC); |
| | | System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); |
| | | d.Add("on_off", aC.trait_on_off.value.ToString()); |
| | | Control.ins.SendWriteCommand(aC, d); |
| | | }; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 控制模式事件 |
| | | /// 加载模式改变事件 |
| | | /// </summary> |
| | | void LoadEvent_ModeChange() |
| | | void LoadEvent_ChangeMode(Dialog dialog, FrameLayout dialogView, Button btn1, Button btn2, string curMode) |
| | | { |
| | | |
| | | EventHandler<MouseEventArgs> eventHandler = (sender, e) => |
| | | { |
| | | dialog.Close(); |
| | | }; |
| | | EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => |
| | | { |
| | | btn1.IsSelected = btn2.IsSelected = true; |
| | | aC.trait_mode.value = curMode; |
| | | btnMode.UnSelectedImagePath = aC.curModeImage; |
| | | //Control.Send(CommandType_A.write, aC); |
| | | System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); |
| | | d.Add("mode", aC.curModeIndex.ToString()); |
| | | Control.ins.SendWriteCommand(aC, d); |
| | | dialog.Close(); |
| | | }; |
| | | btn1.MouseUpEventHandler = eventHandler1; |
| | | btn2.MouseUpEventHandler = eventHandler1; |
| | | dialogView.MouseUpEventHandler = eventHandler; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 加载风速改变事件 |
| | | /// </summary> |
| | | void LoadEvent_ChangeFan(Dialog dialog, FrameLayout dialogView, Button btn1, Button btn2, string curFan) |
| | | { |
| | | EventHandler<MouseEventArgs> eventHandler = (sender, e) => |
| | | { |
| | | dialog.Close(); |
| | | }; |
| | | EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => |
| | | { |
| | | btn1.IsSelected = btn2.IsSelected = true; |
| | | aC.trait_fan.value = curFan; |
| | | btnWindSpeed.UnSelectedImagePath = aC.curFanImage; |
| | | //Control.Send(CommandType_A.write, aC); |
| | | System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); |
| | | d.Add("fan", aC.curFanIndex.ToString()); |
| | | Control.ins.SendWriteCommand(aC, d); |
| | | dialog.Close(); |
| | | }; |
| | | btn1.MouseUpEventHandler = eventHandler1; |
| | | btn2.MouseUpEventHandler = eventHandler1; |
| | | dialogView.MouseUpEventHandler = eventHandler; |
| | | } |
| | | } |
| | | } |
| | | } |