From 6d73bf6e816570291865674bef8bce8972e4de3f Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期三, 01 十二月 2021 16:32:57 +0800 Subject: [PATCH] 2021-12-01-01 --- HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs | 116 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 87 insertions(+), 29 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs index 3d80e11..cdaef53 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using System.Collections.Generic; using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.Music; @@ -39,7 +40,7 @@ { if (btn.Tag.ToString() == upfunc.sid + "_DimmerBar") { - //btn.Progress = (upfunc as Light).trait_brightness.value.value.ToString() == "on"; + btn.Progress = Convert.ToInt32(upfunc.GetAttrState(FunctionAttributeKey.Brightness)); } } } @@ -75,17 +76,31 @@ /// </summary> void LoadEvent_SwitchFunction(Button btnSwitch,FunctionAttributes fadeTime = null) { + btnSwitch.MouseUpEventHandler = (sender, e) => { btnSwitch.IsSelected = !btnSwitch.IsSelected; + + if(SPK.NotStatusSpkList.Contains( function.spk )) + { + new System.Threading.Thread(() => { + System.Threading.Thread.Sleep(2000); + Application.RunOnMainThread(() => { + btnSwitch.IsSelected = !btnSwitch.IsSelected; + }); + }) { IsBackground = true }.Start(); + } + new System.Threading.Thread(() => { function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off"; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + Dictionary<string, string> d = new Dictionary<string, string>(); d.Add(FunctionAttributeKey.OnOff, function.trait_on_off.curValue.ToString()); if(fadeTime!= null) { - d.Add(FunctionAttributeKey.FadeTime, fadeTime.curValue.ToString()); + int result = 0; + int.TryParse(fadeTime.curValue.ToString(), out result); + d.Add(FunctionAttributeKey.FadeTime, result.ToString()); } Control.Ins.SendWriteCommand(function, d); }) @@ -104,12 +119,10 @@ btnSwitch.IsSelected = !btnSwitch.IsSelected; new System.Threading.Thread(() => { - if (function.functionCategory == FunctionCategory.Light) + if (SPK.LightSpkList().Contains( function.spk)) { - var light = function as Light; - light.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off"; - //Control.Send(CommandType_A.write, function); - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off"; + Dictionary<string, string> d = new Dictionary<string, string>(); d.Add("on_off", function.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(function, d); } @@ -123,9 +136,8 @@ /// </summary> void LoadEvent_LightDimming(DiyImageSeekBar dimmerControlBar) { - if(function.functionType == FunctionType.Dimmer || function.functionType == FunctionType.RGB) + if(function.spk == SPK.LightDimming || function.spk == SPK.LightRGB) { - var light = function as Light; dimmerControlBar.OnStartTrackingTouchEvent = (sender, e) => { onDimmerBar = true; (bodyDiv.Parent as VerticalScrolViewLayout).ScrollEnabled = false; @@ -133,10 +145,10 @@ dimmerControlBar.OnStopTrackingTouchEvent = (sender, e) => { onDimmerBar = false; (bodyDiv.Parent as VerticalScrolViewLayout).ScrollEnabled = true; - light.brightness = dimmerControlBar.Progress; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); - d.Add("brightness", light.brightness.ToString()); - Control.Ins.SendWriteCommand(light, d); + function.SetAttrState(FunctionAttributeKey.Brightness, dimmerControlBar.Progress.ToString()); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Brightness, dimmerControlBar.Progress.ToString()); + Control.Ins.SendWriteCommand(function, d); }; dimmerControlBar.OnProgressChangedEvent = (sender, e) => { dimmerControlBar.ProgressBarColor = CSS.CSS_Color.AuxiliaryColor1; @@ -180,7 +192,7 @@ /// <param name="btnStop"></param> /// <param name="btnOpen"></param> /// <param name="btnClose"></param> - void LoadEvent_ControlCurtain(Button btnStop, Button btnOpen, Button btnClose, Curtain curtain) + void LoadEvent_ControlCurtain(Button btnStop, Button btnOpen, Button btnClose, Function curtain) { btnClose.MouseUpEventHandler = (sender, e) => { @@ -188,26 +200,20 @@ btnStop.IsSelected = false; btnOpen.IsSelected = false; curtain.trait_on_off.curValue = "off"; - curtain.percent = 0; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); - d.Add("on_off", curtain.trait_on_off.curValue.ToString()); + curtain.SetAttrState(FunctionAttributeKey.Percent, 0); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.OnOff, curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; - //btnStop.MouseDownEventHandler = (sender, e) => - //{ - // btnStop.IsSelected = true; - // btnClose.IsSelected = false; - // btnOpen.IsSelected = false; - //}; btnStop.MouseUpEventHandler = (sender, e) => { btnStop.IsSelected = true; btnClose.IsSelected = false; btnOpen.IsSelected = false; curtain.trait_on_off.curValue = "stop"; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); - d.Add("on_off", curtain.trait_on_off.curValue.ToString()); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.OnOff, curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; @@ -217,13 +223,63 @@ btnClose.IsSelected = false; btnStop.IsSelected = false; curtain.trait_on_off.curValue = "on"; - curtain.percent = 100; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); - d.Add("on_off", curtain.trait_on_off.curValue.ToString()); + curtain.SetAttrState(FunctionAttributeKey.Percent, 100); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.OnOff, curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; } #endregion + + + /// <summary> + /// 鍔犺浇鏅捐。鏋舵帶鍒朵簨浠� + /// </summary> + void LoadEvent_ControlClothesHanger(Function function, Button btnUp, Button btnDown) + { + btnUp.MouseDownEventHandler = (sender, e) => + { + btnUp.IsSelected = true; + }; + btnUp.MouseUpEventHandler = (sender, e) => + { + new System.Threading.Thread(() => + { + System.Threading.Thread.Sleep(2000); + Application.RunOnMainThread(() => + { + btnUp.IsSelected = false; + }); + }) + { IsBackground = true }.Start(); + function.SetAttrState(FunctionAttributeKey.Position, "up"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Position, "up"); + Control.Ins.SendWriteCommand(function, d); + }; + + btnDown.MouseDownEventHandler = (sender, e) => + { + btnDown.IsSelected = true; + }; + btnDown.MouseUpEventHandler = (sender, e) => + { + new System.Threading.Thread(() => + { + System.Threading.Thread.Sleep(2000); + Application.RunOnMainThread(() => + { + btnDown.IsSelected = false; + }); + }) + { IsBackground = true }.Start(); + function.SetAttrState(FunctionAttributeKey.Position, "down"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Position, "down"); + Control.Ins.SendWriteCommand(function, d); + }; + } + #region 绌鸿皟浜嬩欢 #endregion @@ -237,6 +293,8 @@ /// <param name="curtain"></param> void LoadEvent_ControlMusic(Button btnPlay,Button btnNext,Button btnPrev, A31MusicModel a31player) { + if (a31player == null) + return; ///涓婁竴鏇茬偣鍑讳簨浠� btnPrev.MouseDownEventHandler = (sender, e) => { -- Gitblit v1.8.0