From a39e669803d485caa354f0c6facde96905c0c44b Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 10 一月 2020 12:00:42 +0800
Subject: [PATCH] 2019.1.10
---
ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 105 insertions(+), 7 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Panel/PanelButtonSettionForm.cs
index 4745c8f..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
@@ -213,7 +226,7 @@
//{
// menuCount = 2;
//}
- var frame = new TopRightMenuControl(menuCount);
+ var frame = new TopRightMenuControl(menuCount, 1);
if (canTest == true)
{
//瀹氫綅
@@ -288,6 +301,91 @@
var form = new PanelBackLightSettionForm();
form.AddForm((Panel)nowSelectDevice);
};
+ }
+ }
+
+ #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闇囧姩浣胯兘;
+ });
+ }
+ });
}
}
@@ -374,7 +472,7 @@
var btnIcon = new NormalViewControl(Application.GetMinRealAverage(52), Application.GetMinRealAverage(52), false);
btnIcon.Name = "btn" + device.DeviceEpoint;
btnIcon.Gravity = Gravity.Center;
- btnIcon.Radius = 6;
+ btnIcon.RadiusEx = 16;
btnIcon.BorderWidth = 2;
btnIcon.BorderColor = 0xff979797;
frame.AddChidren(btnIcon, ChidrenBindMode.BindEventOnly);
--
Gitblit v1.8.0