From 1e826b20e55f65c8b50c166c222500c09d4b5063 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 04 十二月 2020 11:58:13 +0800
Subject: [PATCH] 2020-12-04-1
---
HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs | 554 ++++++++++++++++++++++++++++--------------------------
1 files changed, 286 insertions(+), 268 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
index 8fa2108..461408f 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
@@ -17,10 +17,6 @@
/// 瀹氫箟涓�涓彉閲忥紝璁板綍閫変腑鐘舵��
/// </summary>
private string selectedState = "unknown";
- /// <summary>
- /// 瀹氫箟涓�涓彉閲忥紝璁板綍閫変腑鐘舵�佽褰曞睘鎬�
- /// </summary>
- private string keyVlaue = "";
public void Show(Entity.Function device, int index, bool edit)
{
#region 鐣岄潰甯冨眬
@@ -39,199 +35,50 @@
Height = Application.GetRealHeight(667 - 64),
};
this.AddChidren(fLayout);
- #endregion
- switch (device.functionType)
- {
- //寮�鍏崇伅鍏� light.Switch
- case FunctionType.Dimmer:
- {
- #region 鐣岄潰
- ///寮�鍏�
- LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView();
- lightSwitchView.btnText.TextID = StringId.switchLogic;
- fLayout.AddChidren(lightSwitchView.FLayoutView());
- ///浜害
- LogicView.FunTypeView brightnessView = new LogicView.FunTypeView();
- brightnessView.frameLayout.Y = lightSwitchView.frameLayout.Bottom;
- brightnessView.btnText.TextID = StringId.brightnesLogic;
- fLayout.AddChidren(brightnessView.FLayoutView());
- #endregion
- #region 鐐瑰嚮浜嬩欢
- ///寮�鍏崇偣鍑讳簨浠�
- lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
- {
- FrameLayout frame = new FrameLayout
- {
- BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
- };
- this.AddChidren(frame);
- Dictionary<string, string> dic = new Dictionary<string, string>();
- LogicMethod.dictionary(dic, "key", "on_off");
- keyVlaue = "on_off";
- LogicView.SwitchView switchView = new LogicView.SwitchView();
- switchView.FLayoutView(frame, 2);
- switchView.btnOn.MouseUpEventHandler += (sender2, e2) =>
- {
- LogicMethod.dictionary(dic, "value", "on");
- lightSwitchView.btnState.TextID = StringId.onLogic;
- selectedState = device.functionType + "_on";
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- RemView(frame);
- };
- switchView.btnOff.MouseUpEventHandler += (sender3, e3) =>
- {
- LogicMethod.dictionary(dic, "value", "off");
- lightSwitchView.btnState.TextID = StringId.offLogic;
- selectedState = device.functionType + "_off";
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- RemView(frame);
- };
- if (lightSwitchView.btnState.Text != "")
- {
- if (lightSwitchView.btnState.Text == switchView.btnOn.Text)
- {
- switchView.btnOn.TextColor = CSS.CSS_Color.textConfirmColor;
- }
- else
- {
- switchView.btnOff.TextColor = CSS.CSS_Color.textConfirmColor;
- }
- }
- };
- ///浜害鐐瑰嚮浜嬩欢
- brightnessView.btnClick.MouseUpEventHandler += (sender, e) =>
- {
- FrameLayout frame = new FrameLayout
- {
- BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
- };
- this.AddChidren(frame);
- int brightnesValue =0;
- Dictionary<string, string> dic = new Dictionary<string, string>();
- LogicMethod.dictionary(dic, "key", "brightness");
- keyVlaue = "brightness";
- LogicView.BrightnessView brightness = new LogicView.BrightnessView();
- brightness.btnTitle.TextID = StringId.brightnesLogic;
- brightness.FLayoutView(frame);
- brightness.btn_subtract_click.MouseUpEventHandler += (sender2, e2) =>
- {
- if (brightnesValue > 0)
- {
- brightnesValue -= 1;
- brightness.seekBarVol.Progress = brightnesValue;
- }
- };
- brightness.btn_add_click.MouseUpEventHandler += (sende2, e2) =>
- {
- if (brightnesValue < 100)
- {
- brightnesValue += 1;
- brightness.seekBarVol.Progress = brightnesValue;
-
- }
- };
- EventHandler<int> progressclick = (sender2, e2) =>
- {
- brightnesValue = brightness.seekBarVol.Progress;
- };
- brightness.seekBarVol.OnProgressChangedEvent += progressclick;
- brightness.seekBarVol.OnStopTrackingTouchEvent += progressclick;
- brightness.btnConfirm.MouseUpEventHandler += (sende2, e2) =>
- {
- if (brightnesValue ==0)
- {
- return;
- }
-
- LogicMethod.dictionary(dic, "value", brightnesValue.ToString());
- selectedState = device.functionType + brightnesValue.ToString();
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- brightnessView.btnState.Text = brightnesValue.ToString();
- RemView(frame);
-
- };
- if (brightnessView.btnState.Text != "")
- {
- brightnesValue = int.Parse(brightnessView.btnState.Text);
- brightness.seekBarVol.Progress = brightnesValue;
- }
- };
- if (edit)
- {
- GetEditState(device, index, lightSwitchView.btnState, brightnessView.btnState, null, null);
- }
- #endregion
- }
- break;
- case FunctionType.RGB:
- break;
- case FunctionType.RGBW:
- break;
- case FunctionType.CCT:
- break;
- case FunctionType.Relay:
- {
- LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView();
- lightSwitchView.btnText.TextID = StringId.switchLogic;
- fLayout.AddChidren(lightSwitchView.FLayoutView());
- lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
- {
- FrameLayout frame = new FrameLayout
- {
- BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
- };
- this.AddChidren(frame);
- Dictionary<string, string> dic = new Dictionary<string, string>();
- LogicMethod.dictionary(dic, "key", "on_off");
- keyVlaue = "on_off";
- LogicView.SwitchView switchView = new LogicView.SwitchView();
- switchView.FLayoutView(frame, 3);
- switchView.btnOn.MouseUpEventHandler += (sender2, e2) =>
- {
- LogicMethod.dictionary(dic, "value", "on");
- lightSwitchView.btnState.TextID = StringId.onLogic;
- selectedState = device.functionType + "_on";
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- RemView(frame);
- };
- switchView.btnOff.MouseUpEventHandler += (sender3, e3) =>
- {
- LogicMethod.dictionary(dic, "value", "off");
- lightSwitchView.btnState.TextID = StringId.offLogic;
- selectedState = device.functionType + "_off";
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- RemView(frame);
-
- };
- if (lightSwitchView.btnState.Text != "")
- {
- if (lightSwitchView.btnState.Text == switchView.btnOn.Text)
- {
- switchView.btnOn.TextColor = CSS.CSS_Color.textConfirmColor;
- }
- else
- {
- switchView.btnOff.TextColor = CSS.CSS_Color.textConfirmColor;
- }
- }
- };
- if (edit)
- {
- GetEditState(device, index, lightSwitchView.btnState, null, null, null);
- }
- }
- break;
- //绐楀笜
- case FunctionType.Curtain:
- break;
- }
- #region 淇濆瓨
///淇濆瓨View
LogicView.SaveView saveView = new LogicView.SaveView();
saveView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight);
saveView.btnSave.TextID = StringId.completeLogic;
this.AddChidren(saveView.FLayoutView());
+ #endregion
+ #region 缂栬緫璁惧鐘舵��
+ switch (device.functionType)
+ {
+ //寮�鍏崇伅鍏� light.Switch
+ case FunctionType.Dimmer:
+ case FunctionType.RGB:
+ case FunctionType.RGBW:
+ case FunctionType.CCT:
+ {
+ //2琛ㄧず(寮�锛屽叧)鍔熻兘
+ SwitchBrightnessView(fLayout, device, index, edit,2);
+ }
+ break;
+ case FunctionType.Relay:
+ {
+ //2琛ㄧず(寮�锛屽叧)鍔熻兘
+ SwitchView(fLayout, device, index, edit, 2);
+ }
+ break;
+ //绐楀笜
+ case FunctionType.Curtain:
+ {
+ //3琛ㄧず(寮�锛屽叧锛屾殏鍋�)鍔熻兘
+ SwitchView(fLayout, device, index, edit, 3);
+ }
+ break;
+ case FunctionType.TrietexCurtain:
+ case FunctionType.RollerCurtain:
+ {
+ //3琛ㄧず(寮�锛屽叧锛屾殏鍋�)鍔熻兘
+ SwitchBrightnessView(fLayout, device, index, edit, 3);
+ }
+ break;
+
+ }
+ #endregion
+ #region 淇濆瓨鐐瑰嚮鏃堕棿
saveView.btnClick.MouseUpEventHandler += (sen, e) =>
{
@@ -271,8 +118,228 @@
addLogic.Show();
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
-
#endregion
+
+ }
+ /// <summary>
+ ///寮�鍏�=鐣岄潰
+ /// </summary>
+ /// <param name="fLayout"></param>
+ /// <param name="device"></param>
+ /// <param name="index"></param>
+ /// <param name="edit"></param>
+ /// <param name="intView">閫変腑View鐨勬暟閲�</param>
+ private void SwitchView(FrameLayout fLayout, Entity.Function device, int index, bool edit,int intView)
+ {
+ #region 鐣岄潰
+ ///寮�鍏�
+ LogicView.FunTypeView curtainSwitchView = new LogicView.FunTypeView();
+ curtainSwitchView.btnText.TextID = StringId.switchLogic;
+ fLayout.AddChidren(curtainSwitchView.FLayoutView());
+ #endregion
+ #region 鐐瑰嚮浜嬩欢
+ ///寮�鍏崇偣鍑讳簨浠�
+ curtainSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
+ {
+ SwitchViewMethod(device, curtainSwitchView.btnState, intView);
+ };
+ if (edit)
+ {
+ GetEditState(device, index, curtainSwitchView.btnState, null, null, null);
+ }
+ #endregion
+
+ }
+ /// <summary>
+ ///锛堝紑鍏�+浜害/鐧惧垎姣�)鐣岄潰
+ /// </summary>
+ /// <param name="fLayout"></param>
+ /// <param name="device"></param>
+ /// <param name="index"></param>
+ /// <param name="edit"></param>
+ /// <param name="intView">閫変腑View鐨勬暟閲�</param>
+ private void SwitchBrightnessView(FrameLayout fLayout, Entity.Function device, int index, bool edit,int intView)
+ {
+ #region 鐣岄潰
+ ///寮�鍏�
+ LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView();
+ lightSwitchView.btnText.TextID = StringId.switchLogic;
+ fLayout.AddChidren(lightSwitchView.FLayoutView());
+ ///浜害
+ LogicView.FunTypeView brightnessView = new LogicView.FunTypeView();
+ brightnessView.frameLayout.Y = lightSwitchView.frameLayout.Bottom;
+ if (device.functionType == FunctionType.TrietexCurtain || device.functionType == FunctionType.RollerCurtain)
+ {
+
+ brightnessView.btnText.TextID = StringId.percentum;
+ }
+ else
+ {
+ brightnessView.btnText.TextID = StringId.brightnesLogic;
+ }
+ fLayout.AddChidren(brightnessView.FLayoutView());
+ #endregion
+ #region 鐐瑰嚮浜嬩欢
+ ///寮�鍏崇偣鍑讳簨浠�
+ lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) =>
+ {
+ SwitchViewMethod(device, lightSwitchView.btnState, intView);
+ };
+ ///浜害鐐瑰嚮浜嬩欢
+ brightnessView.btnClick.MouseUpEventHandler += (sender, e) =>
+ {
+ BrightnessMethod(device, brightnessView.btnState, brightnessView.btnText.Text);
+ };
+ if (edit)
+ {
+ GetEditState(device, index, lightSwitchView.btnState, brightnessView.btnState, null, null);
+ }
+ #endregion
+
+ }
+ /// <summary>
+ /// 寮�鍏�=鍔熻兘涓嬩竴绾х晫闈�
+ /// </summary>
+ /// <param name="device"></param>
+ /// <param name="button"></param>
+ /// <param name="len">鏄剧ず閫夋嫨View鏁伴噺</param>
+ private void SwitchViewMethod(Entity.Function device, Button button, int len)
+ {
+ #region 鐣岄潰
+ FrameLayout frame = new FrameLayout
+ {
+ BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
+ };
+ this.AddChidren(frame);
+ LogicView.SwitchView switchView = new LogicView.SwitchView();
+ switchView.FLayoutView(frame, len);
+ #endregion
+
+ #region 鐐瑰嚮浜嬩欢
+ Dictionary<string, string> dic = new Dictionary<string, string>();
+ LogicMethod.dictionary(dic, "key", "on_off");
+ string keyVlaue = "on_off";
+ //寮�-鐐瑰嚮浜嬩欢
+ switchView.btnOn.MouseUpEventHandler += (sender2, e2) =>
+ {
+ LogicMethod.dictionary(dic, "value", "on");
+ button.TextID = StringId.onLogic;
+ selectedState = device.functionType + "_on";
+ AddDictionaryData(dicSateteList, keyVlaue, dic);
+ RemView(frame);
+ };
+ //鍏�-鐐瑰嚮浜嬩欢
+ switchView.btnOff.MouseUpEventHandler += (sender3, e3) =>
+ {
+ LogicMethod.dictionary(dic, "value", "off");
+ button.TextID = StringId.offLogic;
+ selectedState = device.functionType + "_off";
+ AddDictionaryData(dicSateteList, keyVlaue, dic);
+ RemView(frame);
+
+ };
+ //鏆傚仠-鐐瑰嚮浜嬩欢
+ switchView.btnStop.MouseUpEventHandler += (sender3, e3) =>
+ {
+ LogicMethod.dictionary(dic, "value", "stop");
+ button.TextID = StringId.stop;
+ selectedState = device.functionType + "_stop";
+ AddDictionaryData(dicSateteList, keyVlaue, dic);
+ RemView(frame);
+
+ };
+ ///鏄剧ず涔嬪墠鐘舵��
+ if (button.Text != "")
+ {
+ if (button.Text == switchView.btnOn.Text)
+ {
+ switchView.btnOn.TextColor = CSS.CSS_Color.textConfirmColor;
+ }
+ else if (button.Text == switchView.btnOff.Text)
+ {
+ switchView.btnOff.TextColor = CSS.CSS_Color.textConfirmColor;
+ }
+ else if (button.Text == switchView.btnStop.Text)
+ {
+ switchView.btnOff.TextColor = CSS.CSS_Color.textConfirmColor;
+ }
+ }
+ #endregion
+
+
+ }
+
+ /// <summary>
+ /// 浜害/鐧惧垎姣�=鍔熻兘涓嬩竴绾х晫闈�
+ /// </summary>
+ /// <param name="device"></param>
+ /// <param name="button"></param>
+ private void BrightnessMethod(Entity.Function device, Button button, string titleName)
+ {
+ #region 鐣岄潰
+ FrameLayout frame = new FrameLayout
+ {
+ BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
+ };
+ this.AddChidren(frame);
+ LogicView.BrightnessView brightness = new LogicView.BrightnessView();
+ brightness.btnTitle.Text = titleName;
+ brightness.FLayoutView(frame);
+ #endregion
+ #region 鐐瑰嚮浜嬩欢
+ int brightnesValue = 0;
+ Dictionary<string, string> dic = new Dictionary<string, string>();
+ LogicMethod.dictionary(dic, "key", "brightness");
+ string keyVlaue = "brightness";
+ //鈥旂偣鍑讳簨浠�
+ brightness.btn_subtract_click.MouseUpEventHandler += (sender2, e2) =>
+ {
+ if (brightnesValue > 0)
+ {
+ brightnesValue -= 1;
+ brightness.seekBarVol.Progress = brightnesValue;
+ }
+ };
+ //+鐐瑰嚮浜嬩欢
+ brightness.btn_add_click.MouseUpEventHandler += (sende2, e2) =>
+ {
+ if (brightnesValue < 100)
+ {
+ brightnesValue += 1;
+ brightness.seekBarVol.Progress = brightnesValue;
+
+ }
+ };
+ //杩涘害鏉℃粦鍔ㄧ偣鍑讳簨浠�
+ EventHandler<int> progressclick = (sender2, e2) =>
+ {
+ brightnesValue = brightness.seekBarVol.Progress;
+ };
+ brightness.seekBarVol.OnProgressChangedEvent += progressclick;
+ brightness.seekBarVol.OnStopTrackingTouchEvent += progressclick;
+ //纭畾鐐瑰嚮浜嬩欢
+ brightness.btnConfirm.MouseUpEventHandler += (sende2, e2) =>
+ {
+ if (brightnesValue == 0)
+ {
+ return;
+ }
+
+ LogicMethod.dictionary(dic, "value", brightnesValue.ToString());
+ selectedState = device.functionType + brightnesValue.ToString();
+ AddDictionaryData(dicSateteList, keyVlaue, dic);
+ button.Text = brightnesValue.ToString();
+ RemView(frame);
+
+ };
+ //鏄剧ず涔嬪墠鐘舵��
+ if (button.Text != "")
+ {
+ brightnesValue = int.Parse(button.Text);
+ brightness.seekBarVol.Progress = brightnesValue;
+ }
+ #endregion
+
}
/// <summary>
@@ -352,11 +419,37 @@
}
}
break;
+ case FunctionType.Curtain:
+ {
+ foreach (var dic in dicList)
+ {
+ string value = dic["value"];
+ switch (value)
+ {
+ case "on":
+ {
+ button1.Text = Language.StringByID(StringId.onLogic);
+ }
+ break;
+ case "off":
+ {
+ button1.Text = Language.StringByID(StringId.offLogic);
+ }
+ break;
+ case "stop":
+ {
+ button1.Text = Language.StringByID(StringId.stop);
+ }
+ break;
+ }
+ }
+ }
+ break;
}
}
/// <summary>
- /// 娣诲姞閫変腑鏁版嵁
+ /// 娣诲姞澶勭悊閫変腑鏁版嵁
/// </summary>
/// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param>
/// <param name="keyValue">璇嗗埆璁惧</param>
@@ -390,7 +483,6 @@
}
}
-
/// <summary>
/// 娣诲姞鐩爣
/// </summary>
@@ -418,80 +510,6 @@
}
}
- /// <summary>
- /// 寮�鍏冲姛鑳藉睍寮�鐣岄潰
- /// </summary>
- /// <param name="frame"></param>
- /// <param name="device"></param>
- /// <param name="button"></param>
- /// <param name="len"></param>
- public void SwitchViewMethod1(FrameLayout frame, Entity.Function device, Button button, int len)
- {
- LogicView.SwitchView switchView = new LogicView.SwitchView();
- switchView.FLayoutView(frame, len);
-
- Button btnOn = new Button
- {
- TextAlignment = TextAlignment.Center,
- TextSize = LogicView.TextSize.text16,
- TextColor = CSS.CSS_Color.textCancelColor,
- TextID = StringId.onLogic,
- Height = Application.GetRealHeight(44),
- Width = Application.GetRealWidth(343),
-
- };
- switchView.frameLayout.AddChidren(btnOn);
- Button btnLine = new Button
- {
- Height = 1,
- BackgroundColor = CSS.CSS_Color.viewLine,
- Y = btnOn.Bottom,
- };
- switchView.frameLayout.AddChidren(btnLine);
- Button btnOff = new Button
- {
- Y = btnLine.Bottom,
- TextAlignment = TextAlignment.Center,
- TextSize = LogicView.TextSize.text16,
- TextColor = CSS.CSS_Color.textCancelColor,
- TextID = StringId.offLogic,
- Height = Application.GetRealHeight(44),
- Width = Application.GetRealWidth(343),
- };
- switchView.frameLayout.AddChidren(btnOff);
-
- Dictionary<string, string> dic = new Dictionary<string, string>();
- LogicMethod.dictionary(dic, "key", "on_off");
- keyVlaue = "on_off";
-
- btnOn.MouseUpEventHandler += (sender2, e2) =>
- {
- LogicMethod.dictionary(dic, "value", "on");
- RemView(frame);
- button.TextID = StringId.onLogic;
- selectedState = device.functionType + "_on";
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- };
- btnOff.MouseUpEventHandler += (sender3, e3) =>
- {
- LogicMethod.dictionary(dic, "value", "off");
- RemView(frame);
- button.TextID = StringId.offLogic;
- selectedState = device.functionType + "_off";
- AddDictionaryData(dicSateteList, keyVlaue, dic);
- };
- if (button.Text != "")
- {
- if (button.Text == btnOn.Text)
- {
- btnOn.TextColor = CSS.CSS_Color.textConfirmColor;
- }
- else
- {
- btnOff.TextColor = CSS.CSS_Color.textConfirmColor;
- }
- }
- }
}
}
--
Gitblit v1.8.0