From 737c036a39176fd2085ce82b7c60391da8cb508c Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期二, 31 十二月 2019 19:17:47 +0800 Subject: [PATCH] 合并了代码 --- ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 103 insertions(+), 5 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs index a948e82..64f5ab7 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs @@ -36,6 +36,18 @@ /// 璁惧闇�瑕佷繚瀛樼殑璁惧鍚嶅瓧 /// </summary> private Dictionary<int, string> dicDeviceSaveName = new Dictionary<int, string>(); + /// <summary> + /// 绠�绾﹂潰鏉跨殑闇囧姩鏁版嵁 + /// </summary> + private HdlDevicePanelLogic.VibrationInfo vibrationInfo = null; + /// <summary> + /// 鏄惁宸茬粡璇诲彇浜嗛渿鍔ㄦ暟鎹� + /// </summary> + private bool hadReadVibrationInfo = false; + /// <summary> + /// 淇℃伅缂栬緫鎺т欢 + /// </summary> + private InformationEditorControl tableContr = null; #endregion @@ -68,15 +80,11 @@ this.ClearBodyFrame(); //鍒濆鍖栨甯� - var tableContr = new InformationEditorControl(); + this.tableContr = new InformationEditorControl(); this.listview = tableContr.InitControl(bodyFrameLayout, Language.StringByID(R.MyInternationalizationString.uDeviceEditor), 708, 1028); //鍒濆鍖栬澶囧洖璺浘鏍� this.InitDeviceEpointIcon(); - - //鍒濆鍖栨甯冨畬鎴� - tableContr.FinishInitControl(bodyFrameLayout, this.listview); - tableContr = null; //淇濆瓨 var btnFinish = new BottomClickButton(); @@ -173,6 +181,11 @@ this.AddBindRow(); //娣诲姞鑳屽厜鐏 this.AddBackLightRow(); + //娣诲姞闇囧姩鍙嶉琛� + this.AddVibrationFeedbackRow(); + + //鍒濆鍖栨甯冨畬鎴� + tableContr.FinishInitControl(bodyFrameLayout, this.listview); } #endregion @@ -293,6 +306,91 @@ #endregion + #region 鈻� 闇囧姩鍙嶉___________________________ + + /// <summary> + /// 娣诲姞闇囧姩鍙嶉琛� + /// </summary> + private void AddVibrationFeedbackRow() + { + var listDevice = Common.LocalDevice.Current.GetDevicesByMac(nowSelectDevice.DeviceAddr, false); + var myType = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice); + //鍙湁绠�绾﹂潰鏉挎墠浼氭湁杩欎釜鑿滃崟 + if (myType.ConcreteType == Common.DeviceConcreteType.ButtonPanel_SimpleTwo + || myType.ConcreteType == Common.DeviceConcreteType.ButtonPanel_SimpleThree + || myType.ConcreteType == Common.DeviceConcreteType.ButtonPanel_SimpleFour) + { + //闇囧姩鍙嶉 + var rowContr = new FrameRowControl(listview.rowSpace / 2); + rowContr.UseClickStatu = false; + listview.AddChidren(rowContr); + rowContr.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uVibrationFeedback), 600); + //搴曠嚎 + rowContr.AddBottomLine(); + //鍙崇澶� + var btnSwitch = rowContr.AddMostRightSwitchIcon(); + if (vibrationInfo != null) + { + btnSwitch.IsSelected = vibrationInfo.A闇囧姩浣胯兘; + } + + btnSwitch.ButtonClickEvent += (sender, e) => + { + if (vibrationInfo == null) + { + //鑾峰彇鏁版嵁澶辫触鏃�,缁欎粬鐜�,浣嗘槸娌℃晥鏋� + btnSwitch.IsSelected = !btnSwitch.IsSelected; + return; + } + //鐐瑰嚮涓�娆′箣鍚�,涓嶈兘鍐嶆鐐瑰嚮 + btnSwitch.CanClick = false; + bool statu = !btnSwitch.IsSelected; + + HdlThreadLogic.Current.RunThread(() => + { + vibrationInfo.A闇囧姩浣胯兘 = statu; + //璁剧疆绠�绾﹂潰鏉块渿鍔ㄥ姛鑳界殑淇℃伅 + var result = HdlDevicePanelLogic.Current.SetPanelVibrationData(nowSelectDevice, vibrationInfo); + if (result == true) + { + HdlThreadLogic.Current.RunMain(() => + { + btnSwitch.IsSelected = statu; + }); + } + else + { + //澶辫触鏃�,鏁版嵁杩樺師 + vibrationInfo.A闇囧姩浣胯兘 = !vibrationInfo.A闇囧姩浣胯兘; + } + //鍏佽涓嬩竴娆$偣鍑� + btnSwitch.CanClick = true; + }); + }; + if (hadReadVibrationInfo == true) + { + //涓嶅啀璇诲彇 + return; + } + this.hadReadVibrationInfo = true; + + HdlThreadLogic.Current.RunThread(() => + { + //鑾峰彇绠�绾﹂潰鏉块渿鍔ㄥ姛鑳界殑淇℃伅(null琛ㄧず鍑洪敊) + vibrationInfo = HdlDevicePanelLogic.Current.GetPanelVibrationData(nowSelectDevice); + if (vibrationInfo != null) + { + HdlThreadLogic.Current.RunMain(() => + { + btnSwitch.IsSelected = vibrationInfo.A闇囧姩浣胯兘; + }); + } + }); + } + } + + #endregion + #region 鈻� 鍒濆鍖栬澶囧洖璺浘鏍嘷________________ /// <summary> -- Gitblit v1.8.0