From c173a2976e0fcb61649cac7dd192fedbfbb5cb60 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期一, 28 十二月 2020 17:51:07 +0800 Subject: [PATCH] 2020-12-28-1 --- HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs | 138 +++++++++++ HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/.DS_Store | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/CheckView.cs | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs | 0 .vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs | 137 +++------- HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store | 0 .vs/HDL_APP_Project/xs/sqlite3/storage.ide | 0 .vs/HDL_APP_Project/xs/UserPrefs.xml | 34 - HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs | 267 ++++++++++------------ .vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs | 134 ---------- 12 files changed, 325 insertions(+), 385 deletions(-) diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml index e441a72..2229666 100644 --- a/.vs/HDL_APP_Project/xs/UserPrefs.xml +++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml @@ -1,44 +1,32 @@ 锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default"> <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS automaticSigning="False" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.00008020-001674E61438002E" /> - <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs"> + <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/CheckView.cs"> <Files> - <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="476" Column="19" /> - <File FileName="HDL_ON/UI/UI1-Login/LoginPageBLL.cs" Line="31" Column="32" /> - <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs" Line="260" Column="56" /> - <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs" Line="84" Column="33" /> - <File FileName="HDL_ON/UI/UI2/2-Classification/RoomPageBLL.cs" Line="43" Column="38" /> - <File FileName="HDL_ON/UI/UI2/2-Classification/RoomPage.cs" Line="78" Column="51" /> - <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/RoomEditPage.cs" Line="145" Column="33" /> - <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/RoomEditPageBLL.cs" Line="115" Column="33" /> - <File FileName="HDL_ON/Entity/Room.cs" Line="52" Column="23" /> - <File FileName="HDL_ON/Entity/FunctionList.cs" Line="215" Column="87" /> - <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs" Line="213" Column="47" /> + <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs" Line="21" Column="32" /> + <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs" Line="349" Column="67" /> + <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs" Line="51" Column="47" /> + <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs" Line="95" Column="30" /> + <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs" Line="168" Column="23" /> + <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/CheckView.cs" Line="40" Column="43" /> </Files> <Pads> <Pad Id="ProjectPad"> <State name="__root__"> <Node name="HDL_APP_Project" expanded="True"> <Node name="HDL_ON" expanded="True"> - <Node name="DAL" expanded="True" /> - <Node name="Entity" expanded="True"> - <Node name="Function" expanded="True" /> - </Node> <Node name="UI" expanded="True"> - <Node name="UI1-Login" expanded="True" /> <Node name="UI2" expanded="True"> - <Node name="2-Classification" expanded="True" /> <Node name="3-Intelligence" expanded="True"> <Node name="Automation" expanded="True"> - <Node name="FunTpye.cs" selected="True" /> + <Node name="LogicView" expanded="True"> + <Node name="CheckView.cs" selected="True" /> + </Node> </Node> </Node> - <Node name="4-PersonalCenter" expanded="True"> - <Node name="RoomListManage" expanded="True" /> - </Node> + <Node name="FuntionControlView" expanded="True" /> </Node> </Node> </Node> - <Node name="HDL-ON_iOS" expanded="True" /> </Node> </State> </Pad> diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide index 68eb646..e34c7ca 100644 --- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide +++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide Binary files differ diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm index ccd4fd0..d60c418 100644 --- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm +++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm Binary files differ diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal index 839ea2a..5315dee 100644 --- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal +++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store b/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store index e28334d..5b92ec3 100755 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs old mode 100755 new mode 100644 index 2d7fbb3..d3bb907 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs @@ -63,13 +63,7 @@ //鍦烘櫙鐐瑰嚮浜嬩欢 sceneView.btnClick.MouseUpEventHandler += (sen, e) => { - - FrameLayout fLayout = new FrameLayout - { - BackgroundColor = CSS.CSS_Color.viewTrans60lucence, - }; - this.AddChidren(fLayout); - SceneMethod(fLayout); + SceneMethod(); }; //寤舵椂鐐瑰嚮浜嬩欢 delayView.btnClick.MouseUpEventHandler += (sen, e) => @@ -89,138 +83,30 @@ /// <summary> /// 娣诲姞鍦烘櫙 /// </summary> - /// <param name="fLayout">寮规涓绘帶浠�</param> - public void SceneMethod(FrameLayout fLayout) + public void SceneMethod() { - int line = 0; var sceneList = LogicMethod.GetSceneList(); - if (sceneList.Count == 0|| sceneList.Count>5) - { - line = 5; - } - else { - line = sceneList.Count; - } - LogicView.DateView view = new LogicView.DateView(); - view.btnTitle.TextID = StringId.addSceneLogic; - view.FLayoutView(fLayout, line); - - view.btnCancel.MouseUpEventHandler += (sender2, e2) => - { - fLayout.RemoveFromParent(); - }; - FrameLayout frameL = new FrameLayout - { - Y = Application.GetRealHeight(56), - Height = Application.GetRealHeight(50 * line), - }; - - VerticalRefreshLayout verticalRefresh = new VerticalRefreshLayout - { - Y = Application.GetRealHeight(56), - Height = Application.GetRealHeight(50 * 5), - - }; - verticalRefresh.BeginHeaderRefreshingAction += () => - { - //鍏抽棴鍒锋柊View锛� - verticalRefresh.EndHeaderRefreshing(); - }; - - if (sceneList.Count == 0) - { - Button btnTipNot = new Button - { - X=Application.GetRealWidth(93), - Y = Application.GetRealHeight(80), - Width = Application.GetRealWidth(158), - Height = Application.GetRealWidth(158), - UnSelectedImagePath = "TipNot.png", - - }; - view.frameLayout.AddChidren(btnTipNot); - - Button btnTipNotText = new Button() - { - Y = btnTipNot.Bottom+ Application.GetRealHeight(16), - Height = Application.GetRealHeight(20), - TextID = StringId.secnenull, - TextColor = CSS.CSS_Color.textColor, - TextSize =LogicView.TextSize.text14, - TextAlignment = TextAlignment.Center, - }; - view.frameLayout.AddChidren(btnTipNotText); - } - else if (sceneList.Count <=5 ) { - view.frameLayout.AddChidren(frameL); - } - else if(sceneList.Count>5) { - view.frameLayout.AddChidren(verticalRefresh); - - } - - - //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鐘舵�� - Button buttonClick = new Button(); - HDL_ON.Entity.Scene sceneSelecetd = null; - verticalRefresh.BeginHeaderRefreshingAction += () => - { - //鍏抽棴鍒锋柊View锛� - verticalRefresh.EndHeaderRefreshing(); - }; - - for (int i = 0; i < sceneList.Count; i++) - { + List<string> nameList = new List<string>(); + for (int i = 0; i < sceneList.Count; i++) { var scene = sceneList[i]; - LogicView.CheckView sceneView = new LogicView.CheckView(); - sceneView.btnText.Text = scene.name; - sceneView.btnText.TextSize = LogicView.TextSize.text14; - if (sceneList.Count <= 5) - { - sceneView.frameLayout.Y = Application.GetRealWidth(i*50); - frameL.AddChidren(sceneView.FLayoutView()); - if (sceneList.Count-1==i) { - sceneView.btnLine.BackgroundColor = CSS.CSS_Color.view; - } - } - else - { - verticalRefresh.AddChidren(sceneView.FLayoutView()); - } - sceneView.btnClick.Tag = scene;//鏍囪绱㈠紩 - //鍦烘櫙鐨勭偣鍑讳簨浠� - sceneView.btnClick.MouseUpEventHandler += (sender, e) => - { - buttonClick.IsSelected = false; - sceneView.btnCheckIcon.IsSelected = true; - buttonClick = sceneView.btnCheckIcon; - sceneSelecetd = sceneView.btnClick.Tag as HDL_ON.Entity.Scene; - }; - + nameList.Add(scene.name); } - //纭鐐瑰嚮浜嬩欢 - view.btnConfirm.MouseUpEventHandler += (sender1, e1) => + PublicInterface publicInterface = new PublicInterface(); + publicInterface.FrameOrVv(this, nameList, StringId.addSceneLogic, (index) => { - - if (sceneSelecetd == null) - { - //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 - return; - } + var sceneSelecetd = sceneList[index]; Output outputDevice = new Output(); outputDevice.target_type = "2"; outputDevice.sid = sceneSelecetd.sid; //娌″暐浣滅敤锛屼负浜嗗彂閫佹暟鎹牸寮忕粺涓�; - outputDevice.status = new List<Dictionary<string, string>> { new Dictionary<string, string> { { "key", "scene"},{ "value", "0" } } }; + outputDevice.status = new List<Dictionary<string, string>> { new Dictionary<string, string> { { "key", "scene" }, { "value", "0" } } }; AddOutput(outputDevice); - fLayout.RemoveFromParent(); LogicMethod.RemoveAllView(); AddLogic addLogic = new AddLogic(); MainPage.BasePageView.AddChidren(addLogic); addLogic.Show(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; - + }); } /// <summary> diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs old mode 100755 new mode 100644 index bb24069..e46520b --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.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 鐣岄潰甯冨眬 @@ -68,7 +64,31 @@ BackgroundColor = CSS.CSS_Color.viewTrans60lucence, }; this.AddChidren(frame); - SwitchViewMethod(frame, device, lightSwitchView.btnState, 2); + LogicView.SwitchView switchView = new LogicView.SwitchView(); + switchView.FLayoutView(frame, 2, lightSwitchView.btnState.Text, (strValue) => + { + int id = 0; + switch (strValue) + { + case "on": + { + id = StringId.onLogic; + } + break; + case "off": + { + id = StringId.offLogic; + } + break; + } + //鏄剧ず鏂囨湰 + lightSwitchView.btnState.TextID = id; + selectedState = device.functionType + "_" + strValue; + //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; + string keyVlaue = "on_off"; + AddDictionary(keyVlaue, strValue); + + }); }; if (edit) { @@ -87,8 +107,6 @@ this.AddChidren(saveView.FLayoutView()); saveView.btnClick.MouseUpEventHandler += (sen, e) => { - - if (selectedState != "unknown") { Input inputDevice = new Input(); @@ -129,46 +147,6 @@ } /// <summary> - /// 寮�鍏冲姛鑳藉睍寮�鐣岄潰 - /// </summary> - /// <param name="frame"></param> - /// <param name="device"></param> - /// <param name="button"></param> - /// <param name="len"></param> - public void SwitchViewMethod(FrameLayout frame, Entity.Function device, Button button, int len) - { - - LogicView.SwitchView switchView = new LogicView.SwitchView(); - switchView.FLayoutView(frame, len, button.Text, (strValue) => - { - int id = 0; - switch (strValue) - { - case "on": - { - id = StringId.onLogic; - } - break; - case "off": - { - id = StringId.offLogic; - } - break; - } - button.TextID = id; - keyVlaue = "on_off"; - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", "on_off"); - LogicMethod.dictionary(dic, "comparator", "="); - LogicMethod.dictionary(dic, "data_type", "string"); - LogicMethod.dictionary(dic, "value", strValue); - AddDictionaryData(dicSateteList, keyVlaue, dic); - selectedState = device.functionType + "_" + strValue; - - }); - - } - /// <summary> /// 鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� /// </summary> /// <param name="device">缂栬緫璁惧</param> @@ -177,7 +155,7 @@ /// <param name="button2">鏄剧ずBtn</param> /// <param name="button3">鏄剧ずBtn</param> /// <param name="button4">鏄剧ずBtn</param> - private void GetEditState(Entity.Function device , int index, Button button1, Button button2, Button button3, Button button4) + private void GetEditState(Entity.Function device, int index, Button button1, Button button2, Button button3, Button button4) { Input inputs = Logic.currlogic.input[index]; var dicList = inputs.condition as List<Dictionary<string, string>>; @@ -188,48 +166,31 @@ //鏈夋暟鎹噸鏂拌祴鍊� dicSateteList = dicList; } - switch (device.functionType) - { - //寮�鍏崇伅鍏� light.Switch - case FunctionType.Dimmer: - case FunctionType.RGB: - case FunctionType.RGBW: - case FunctionType.ColorTemperature: - case FunctionType.Relay: - //绐楀笜 - case FunctionType.Curtain: - case FunctionType.RollingShutter: - case FunctionType.MotorCurtain: - //绌鸿皟 - case FunctionType.AC: - //鍦扮儹 - case FunctionType.FloorHeating: - { - foreach (var dic in dicList) - { - string value = dic["value"]; - if (value == "on") - { - button1.Text = Language.StringByID(StringId.onLogic); - } - else - { - button1.Text = Language.StringByID(StringId.offLogic); - } - } - } - break; - - } + InpOrOutLogicMethod.EditState(device, dicList, button1, button2, button3, button4); } /// <summary> /// 娣诲姞閫変腑鏁版嵁 /// </summary> - /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param> - /// <param name="keyValue">璇嗗埆璁惧</param> + /// <param name="KeyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param> + /// <param name="selectedValue">鐘舵�佸��</param> + private void AddDictionary(string KeyValue, string selectedValue) + { + //鏁版嵁灏佽 + Dictionary<string, string> dic = new Dictionary<string, string>(); + LogicMethod.dictionary(dic, "key", KeyValue); + LogicMethod.dictionary(dic, "comparator", "="); + LogicMethod.dictionary(dic, "data_type", "string"); + LogicMethod.dictionary(dic, "value", selectedValue); + AddDictionaryList(KeyValue, dic, dicSateteList); + } + /// <summary> + /// 鏇存柊鏁版嵁鍒楄〃 + /// </summary> + /// <param name="keyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param> /// <param name="dictionary">閫変腑鏁版嵁</param> + /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param> /// <returns></returns> - private void AddDictionaryData(List<Dictionary<string, string>> dicList, string keyValue, Dictionary<string, string> dictionary) + private void AddDictionaryList(string keyValue, Dictionary<string, string> dictionary, List<Dictionary<string, string>> dicList) { int indexValue = -1; for (int i = 0; i < dicList.Count; i++) @@ -283,14 +244,6 @@ Logic.currlogic.input.Add(input); } - } - /// <summary> - /// 绉婚櫎鎺т欢 - /// </summary> - /// <param name="frame"></param> - private void RemView(FrameLayout frame) - { - frame.RemoveFromParent(); } } } diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/.DS_Store b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/.DS_Store index afb4543..031f247 100755 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/.DS_Store +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/CheckView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/CheckView.cs old mode 100755 new mode 100644 diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs old mode 100755 new mode 100644 diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs old mode 100755 new mode 100644 index 16c87a0..1b41b53 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs @@ -253,6 +253,142 @@ } /// <summary> + /// + /// </summary> + /// <param name="frame">鏄剧ず鍦ㄥ摢涓晫闈㈢殑鐖舵帶浠�</param> + /// <param name="list">鏄剧ず鏁版嵁婧�</param> + /// <param name="titleText">鏍囬</param> + /// <param name="action">杩斿洖鍊�</param> + public void FrameOrVv(FrameLayout frame, List<string>list, int titleText,Action<int> action) { + + int line = 0; + if (list.Count == 0 || list.Count > 5) + { + //瓒呭嚭5涓彧鑳介粯璁�5涓�; + line = 5; + } + else + { + line = list.Count; + } + + FrameLayout frameLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + frame.AddChidren(frameLayout); + + LogicView.DateView view = new LogicView.DateView(); + view.btnTitle.TextID = titleText; + view.FLayoutView(frameLayout, line); + view.btnCancel.MouseUpEventHandler += (sender, e) => + { + //绉婚櫎fLayout鐣岄潰 + frameLayout.RemoveFromParent(); + }; + //灏忎簬5浣跨敤 + FrameLayout frameL = new FrameLayout + { + Y = Application.GetRealHeight(56), + Height = Application.GetRealHeight(50 * line), + }; + //澶т簬5浣跨敤 + VerticalRefreshLayout verticalRefresh = new VerticalRefreshLayout + { + Y = Application.GetRealHeight(56), + Height = Application.GetRealHeight(50 * 5), + + }; + verticalRefresh.BeginHeaderRefreshingAction += () => + { + //鍏抽棴鍒锋柊View锛� + verticalRefresh.EndHeaderRefreshing(); + }; + + if (list.Count == 0) + { + Button btnTipNot = new Button + { + X = Application.GetRealWidth(93), + Y = Application.GetRealHeight(80), + Width = Application.GetRealWidth(158), + Height = Application.GetRealWidth(158), + UnSelectedImagePath = "TipNot.png", + + }; + view.frameLayout.AddChidren(btnTipNot); + + Button btnTipNotText = new Button() + { + Y = btnTipNot.Bottom + Application.GetRealHeight(16), + Height = Application.GetRealHeight(20), + TextID = StringId.secnenull, + TextColor = CSS.CSS_Color.textColor, + TextSize = LogicView.TextSize.text14, + TextAlignment = TextAlignment.Center, + }; + view.frameLayout.AddChidren(btnTipNotText); + } + else if (list.Count > 0 && list.Count <= 5) + { + view.frameLayout.AddChidren(frameL); + } + else if (list.Count > 5) + { + view.frameLayout.AddChidren(verticalRefresh); + + } + ///瀹氫箟涓�涓狟tn璁板綍閫変腑鐘舵�� + Button checkBtn = new Button + { + Tag = "unknown", + }; + for (int i = 0; i < list.Count; i++) + { + string strName = list[i]; + LogicView.CheckView checkView = new LogicView.CheckView(); + checkView.btnText.TextSize = LogicView.TextSize.text14; + if (list.Count <= 5) + { + checkView.frameLayout.Y = Application.GetRealWidth(i * 50); + frameL.AddChidren(checkView.FLayoutView()); + if (line - 1 == i) + { + checkView.btnLine.BackgroundColor = CSS.CSS_Color.view; + } + } + else + { + verticalRefresh.AddChidren(checkView.FLayoutView()); + } + checkView.btnText.Text = strName; + checkView.btnClick.Tag = i;//鏍囪 + //鐐瑰嚮浜嬩欢 + checkView.btnClick.MouseUpEventHandler += (sender1, e1) => + { + checkBtn.IsSelected = false; + checkView.btnCheckIcon.IsSelected = true; + checkBtn = checkView.btnCheckIcon; + checkBtn.Tag = checkView.btnClick.Tag.ToString(); + }; + + } + view.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (checkBtn.Tag.ToString() == "unknown") + { + return; + } + int indexValue = int.Parse(checkBtn.Tag.ToString()); + action(indexValue); + //绉婚櫎fLayout鐣岄潰 + frameLayout.RemoveFromParent(); + }; + + } + + + /// <summary> /// 鑾峰彇鐣岄潰鍒楄〃 /// </summary> /// <param name="isStr">鑷繁瀹氫箟鑷繁鐢�</param> @@ -321,7 +457,7 @@ /// <summary> /// 妯″紡/椋庨�熶簰鐩歌浆鎹㈠�肩殑鏂规硶 /// </summary> - /// <param name="text"></param> + /// <param name="text">鏂囨湰</param> /// <param name="type">鑷繁瀹氫箟鑷繁鐢�</param> /// <returns></returns> public string GetModeValueString(string text, string type) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs index a139048..22fefd3 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs @@ -51,14 +51,57 @@ case FunctionType.RGBW: case FunctionType.ColorTemperature: { - //2琛ㄧず(寮�锛屽叧)鍔熻兘 - SwitchBrightnessView(fLayout, device, index, edit, 2); + #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) => + { + SwitchViewMethod(device, lightSwitchView.btnState, 2); + }; + ///浜害鐐瑰嚮浜嬩欢 + brightnessView.btnClick.MouseUpEventHandler += (sender, e) => + { + BrightnessMethod(device, brightnessView.btnState, brightnessView.btnText.Text); + + }; + if (edit) + { + //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� + GetEditState(device, index, lightSwitchView.btnState, brightnessView.btnState, null, null); + } + #endregion } break; case FunctionType.Relay: { - //2琛ㄧず(寮�锛屽叧)鍔熻兘 - SwitchView(fLayout, device, index, edit, 2); + #region 鐣岄潰 + ///寮�鍏� + LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView(); + lightSwitchView.btnText.TextID = StringId.switchLogic; + fLayout.AddChidren(lightSwitchView.FLayoutView()); + #endregion + #region 鐐瑰嚮浜嬩欢 + ///寮�鍏崇偣鍑讳簨浠� + lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) => + { + SwitchViewMethod(device, lightSwitchView.btnState, 2); + }; + if (edit) + { + //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� + GetEditState(device, index, lightSwitchView.btnState, null, null, null); + } + #endregion } break; //绐楀笜 @@ -66,8 +109,24 @@ case FunctionType.MotorCurtain: case FunctionType.RollingShutter: { - //3琛ㄧず(寮�锛屽叧锛屾殏鍋�)鍔熻兘 - SwitchView(fLayout, device, index, edit, 3); + #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, 3); + }; + if (edit) + { + //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� + GetEditState(device, index, curtainSwitchView.btnState, null, null, null); + } + #endregion } break; case FunctionType.AC: @@ -107,19 +166,17 @@ { ///涔嬪墠鐨勭姸鎬佹枃鏈� string tempValue = temperatureView.btnState.Text; - LogicView.TemperatureView tempView= new LogicView.TemperatureView(); - tempView.FLayoutView(this, tempValue,(stateStr)=> { + LogicView.TemperatureView tempView = new LogicView.TemperatureView(); + tempView.FLayoutView(this, tempValue, (stateStr) => + { //鐣岄潰鏄剧ず閫変腑鍊� temperatureView.btnState.Text = stateStr; //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; string keyVlaue = "set_temp"; - selectedState = device.functionType + "_"+ keyVlaue; + selectedState = device.functionType + "_" + keyVlaue; string set_temp_value = stateStr.Replace("鈩�", ""); //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", keyVlaue); - LogicMethod.dictionary(dic, "value", set_temp_value); - AddDictionaryData(dicSateteList, keyVlaue, dic); + AddDictionary(keyVlaue, set_temp_value); }); @@ -131,20 +188,16 @@ string currText = acModehView.btnState.Text; //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; string keyVlaue = "mode"; - selectedState = device.functionType + "_"+keyVlaue; + selectedState = device.functionType + "_" + keyVlaue; PublicInterface modeView = new PublicInterface(); - var modeListStr= modeView.GetViewList(keyVlaue); + var modeListStr = modeView.GetViewList(keyVlaue); modeView.SingleSelectionShow(this, modeListStr, Language.StringByID(StringId.modeLogic), currText , (stateValue) => { //鐣岄潰鏄剧ず閫変腑鍊� acModehView.btnState.Text = stateValue; //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", keyVlaue); - LogicMethod.dictionary(dic, "value", modeView.GetModeValueString(stateValue, keyVlaue)); - AddDictionaryData(dicSateteList, keyVlaue, dic); - + AddDictionary(keyVlaue, modeView.GetModeValueString(stateValue, keyVlaue)); }); }; @@ -165,10 +218,7 @@ //鐣岄潰鏄剧ず閫変腑鍊� acSpeedView.btnState.Text = stateValue; //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", keyVlaue); - LogicMethod.dictionary(dic, "value", speedView.GetModeValueString(stateValue, keyVlaue)); - AddDictionaryData(dicSateteList, keyVlaue, dic); + AddDictionary(keyVlaue, speedView.GetModeValueString(stateValue, keyVlaue)); }); }; @@ -207,6 +257,7 @@ ///寮�鍏崇偣鍑讳簨浠� floorHeatingSwitchVie.btnClick.MouseUpEventHandler += (sender, e) => { + SwitchViewMethod(device, floorHeatingSwitchVie.btnState, 2); }; ///娓╁害鐐瑰嚮浜嬩欢 @@ -214,33 +265,30 @@ { string tempValue = temperatureView.btnState.Text; LogicView.TemperatureView tempView = new LogicView.TemperatureView(); - tempView.FLayoutView(this, tempValue, (stateStr) => { + tempView.FLayoutView(this, tempValue, (stateStr) => + { //鐣岄潰鏄剧ず閫変腑鍊� temperatureView.btnState.Text = stateStr; //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; string keyVlaue = "set_temp"; - selectedState = device.functionType + "_"+ keyVlaue; + selectedState = device.functionType + "_" + keyVlaue; string set_temp_value = stateStr.Replace("鈩�", ""); //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", keyVlaue); - LogicMethod.dictionary(dic, "value", set_temp_value); - AddDictionaryData(dicSateteList, keyVlaue, dic); + AddDictionary(keyVlaue, set_temp_value); }); - + }; ///妯″紡鐐瑰嚮浜嬩欢 floorHeatingModehView.btnClick.MouseUpEventHandler += (sender, e) => { - - + + ///涔嬪墠鐨勭姸鎬佹枃鏈� - string currText= floorHeatingModehView.btnState.Text; + string currText = floorHeatingModehView.btnState.Text; //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; string keyVlaue = "mode"; - selectedState = device.functionType + "_"+ keyVlaue; - + selectedState = device.functionType + "_" + keyVlaue; PublicInterface modeView = new PublicInterface(); var modeListStr = modeView.GetViewList("floorheatingmode"); modeView.SingleSelectionShow(this, modeListStr, Language.StringByID(StringId.modeLogic), currText @@ -249,10 +297,7 @@ //鐣岄潰鏄剧ず閫変腑鍊� floorHeatingModehView.btnState.Text = stateValue; //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", keyVlaue); - LogicMethod.dictionary(dic, "value", modeView.GetModeValueString(stateValue, "floorheatingmode")); - AddDictionaryData(dicSateteList, keyVlaue, dic); + AddDictionary(keyVlaue, modeView.GetModeValueString(stateValue, "floorheatingmode")); }); }; @@ -271,8 +316,6 @@ #region 淇濆瓨鐐瑰嚮浜嬩欢 saveView.btnClick.MouseUpEventHandler += (sen, e) => { - - if (selectedState != "unknown") { Output outputDevice = new Output(); @@ -372,85 +415,6 @@ #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.MotorCurtain || device.functionType == FunctionType.RollingShutter) - { - - 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> @@ -469,28 +433,31 @@ switchView.FLayoutView(frame, len, button.Text, (strValue) => { int id = 0; - switch (strValue) { - case "on": { + switch (strValue) + { + case "on": + { id = StringId.onLogic; } break; - case "off": { + case "off": + { id = StringId.offLogic; - } break; - case "stop": { + } + break; + case "stop": + { id = StringId.stop; - } break; + } + break; } //鐣岄潰鏄剧ず閫変腑鍊� button.TextID = id; selectedState = device.functionType + "_" + strValue; + //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; string keyVlaue = "on_off"; //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", "on_off"); - LogicMethod.dictionary(dic, "value", strValue); - AddDictionaryData(dicSateteList, keyVlaue, dic); - + AddDictionary(keyVlaue, strValue); }); #endregion } @@ -508,11 +475,10 @@ brightness.FLayoutView(this, titleName, stateVlaue, (brightnesValue) => { //鐣岄潰鏄剧ず閫変腑鍊� - button.Text = brightnesValue+"%"; - string keyVlaue = ""; + button.Text = brightnesValue + "%"; selectedState = device.functionType + brightnesValue.ToString(); - //鏁版嵁灏佽 - Dictionary<string, string> dic = new Dictionary<string, string>(); + //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; + string keyVlaue = ""; switch (device.functionType) { //寮�鍏崇伅鍏� light.Switch @@ -521,20 +487,18 @@ case FunctionType.RGBW: case FunctionType.ColorTemperature: { - LogicMethod.dictionary(dic, "key", "brightness"); keyVlaue = "brightness"; } break; case FunctionType.MotorCurtain: case FunctionType.RollingShutter: { - LogicMethod.dictionary(dic, "key", "percent"); keyVlaue = "percent"; } break; } - LogicMethod.dictionary(dic, "value", brightnesValue.ToString()); - AddDictionaryData(dicSateteList, keyVlaue, dic); + //鏁版嵁灏佽 + AddDictionary(keyVlaue, brightnesValue); }); #endregion @@ -562,13 +526,26 @@ InpOrOutLogicMethod.EditState(device, dicList, button1, button2, button3, button4); } /// <summary> - /// 娣诲姞澶勭悊閫変腑鏁版嵁 + /// 娣诲姞閫変腑鏁版嵁 /// </summary> - /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param> - /// <param name="keyValue">璇嗗埆璁惧</param> + /// <param name="KeyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param> + /// <param name="selectedValue">鐘舵�佸��</param> + private void AddDictionary(string KeyValue, string selectedValue) + { + //鏁版嵁灏佽 + Dictionary<string, string> dic = new Dictionary<string, string>(); + LogicMethod.dictionary(dic, "key", KeyValue); + LogicMethod.dictionary(dic, "value", selectedValue); + AddDictionaryList(KeyValue, dic, dicSateteList); + } + /// <summary> + /// 鏇存柊鏁版嵁鍒楄〃 + /// </summary> + /// <param name="keyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param> /// <param name="dictionary">閫変腑鏁版嵁</param> + /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param> /// <returns></returns> - private void AddDictionaryData(List<Dictionary<string, string>> dicList, string keyValue, Dictionary<string, string> dictionary) + private void AddDictionaryList(string keyValue, Dictionary<string, string> dictionary, List<Dictionary<string, string>> dicList) { int indexValue = -1; for (int i = 0; i < dicList.Count; i++) @@ -623,7 +600,7 @@ } } - + } -- Gitblit v1.8.0