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