From 0c0536e9b5db204fd3bd3c2443ef500b66bf7423 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期二, 24 十一月 2020 17:48:40 +0800 Subject: [PATCH] 2020-11-24-1 --- HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs | 317 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 190 insertions(+), 127 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs index 621dbd6..bf7e4d7 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs @@ -1,6 +1,7 @@ 锘縰sing System; using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; using Shared; +using System.Collections.Generic; namespace HDL_ON.UI.UI2.Intelligence.Automation { @@ -10,6 +11,10 @@ { Tag = "Logic"; } + /// <summary> + /// 榛樿閫変腑鏄埧闂存椂锛氬叏閮ㄥ尯鍩� + /// </summary> + private Entity.Room selectedRoom = new Entity.Room { name = Language.StringByID(StringId.allAreas) }; public void Show() { @@ -26,128 +31,6 @@ funAllAreaView.frameLayout.Y = topView.frameLayout.Bottom; this.AddChidren(funAllAreaView.FLayoutView()); - funAllAreaView.btnText1.MouseUpEventHandler += (sen, e) => - { - FrameLayout fLayout = new FrameLayout - { - BackgroundColor = CSS.CSS_Color.viewTrans60lucence, - }; - this.AddChidren(fLayout); - fLayout.MouseUpEventHandler += (sender, e1) => - { - fLayout.RemoveFromParent(); - }; - FrameLayout areaFra = new FrameLayout - { - X = Application.GetRealWidth(10), - Y = Application.GetRealHeight(103), - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(241), - BackgroundImagePath = "LogicIcon/bjicon.png", - }; - fLayout.AddChidren(areaFra); - - var roomNameList= LogicMethod.GetGetRoomNameList(); - - FrameLayout areaBgh= new FrameLayout - { - X = Application.GetRealWidth(10), - Y = Application.GetRealHeight(103), - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(241), - BackgroundImagePath = "LogicIcon/bjicon.png", - }; - fLayout.AddChidren(areaFra); - - VerticalScrolViewLayout vvBgh= new VerticalScrolViewLayout - { - X = Application.GetRealWidth(10), - Y = Application.GetRealHeight(103), - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(241), - BackgroundImagePath = "LogicIcon/bjicon.png", - }; - fLayout.AddChidren(areaFra); - - if (roomNameList.Count < 5) { - - - } - - - for (int i = 0; i < roomNameList.Count; i++) - { - string roomname = roomNameList[i]; - var roomFlayout = new FrameLayout - { - X = Application.GetRealWidth(8), - Y = Application.GetRealHeight(14), - Width = Application.GetRealWidth(144), - Height = Application.GetRealHeight(44), - BackgroundImagePath = "LogicIcon/bjicon.png", - }; - // foolrbj.AddChidren(roomFlayout); - - var btnRoomName = new Button - { - Width = Application.GetRealWidth(50), - Height = Application.GetRealHeight(20), - X = Application.GetRealWidth(16), - TextAlignment = TextAlignment.CenterLeft, - Gravity = Gravity.CenterVertical, - TextSize = TextSize.text14, - TextColor = CSS.CSS_Color.textColor, - Text = roomname, - - }; - roomFlayout.AddChidren(btnRoomName); - Button btnLine = new Button - { - Width = Application.GetRealWidth(112), - X = Application.GetRealWidth(16), - Height = 1, - BackgroundColor = CSS.CSS_Color.viewLine, - }; - btnLine.Y = roomFlayout.Height - 1; - var btnClick = new Button - { - Width = Application.GetRealWidth(144), - Height = Application.GetRealHeight(44), - }; - roomFlayout.AddChidren(btnClick); - - - btnClick.MouseUpEventHandler+= (sender, e2) => - { - - //roomhorizontalScrol.RemoveAll(); - //devicetypehorizontalScrol.RemoveAll(); - //middle.RemoveAll(); - //view.foolrnameBtn.Text = btnfoolrname.Text; - //flMain.RemoveFromParent(); - //var list = Method.GetRoomList(IfType, btnfoolrname.Tag.ToString()); - //if (list.Count == 0) - //{ - // devicetypehorizontalScrol.Height = 0; - // middle.Height = 0; - //} - //else - //{ - // devicetypehorizontalScrol.Height = Application.GetRealHeight(280); - // middle.Height = Application.GetRealHeight(1920 - 40 - 184 - 280 - 200); - //} - //AllRoomView(list, deviceTypeList); - }; - - } - - - - - }; - - - VerticalScrolViewLayout vv = new VerticalScrolViewLayout { Y = Application.GetRealHeight(117), @@ -155,7 +38,186 @@ }; this.AddChidren(vv); - var deviceList = LogicMethod.GetDeviceList(); + //鎴块棿鐐瑰嚮浜嬩欢 + EventHandler<MouseEventArgs> roomClick = (sender, e) => + { + #region 鍖哄煙寮规鐣岄潰 + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + fLayout.MouseUpEventHandler += (sender1, e1) => + { + fLayout.RemoveFromParent(); + }; + + FrameLayout bghFrameLyout = new FrameLayout + { + X = Application.GetRealWidth(10), + Y = Application.GetRealHeight(103), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(21 + 44), + BackgroundImagePath = "LogicIcon/bjicon.png", + }; + fLayout.AddChidren(bghFrameLyout); + + FrameLayout areaBgh = new FrameLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44), + }; + VerticalScrolViewLayout vvBgh = new VerticalScrolViewLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44 * 5), + }; + var roomList = LogicMethod.GetGatewayRoomListG(Language.StringByID(StringId.allAreas)); + if (roomList.Count > 5) + { + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * 5); + bghFrameLyout.AddChidren(vvBgh); + + } + else + { + + bghFrameLyout.AddChidren(areaBgh); + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * roomList.Count); + areaBgh.Height = Application.GetRealHeight(44 * roomList.Count); + } + #endregion + + for (int i = 0; i < roomList.Count; i++) + { + var room = roomList[i]; + LogicView.AreaView areaView = new LogicView.AreaView(); + if (roomList.Count > 5) + { + vvBgh.AddChidren(areaView.FLayoutView()); + } + else + { + areaView.frameLayout.Y = Application.GetRealHeight(i * 44); + areaBgh.AddChidren(areaView.FLayoutView()); + } + areaView.btnRoomName.Text = room.name; + areaView.btnClick.Tag = room; + areaView.btnClick.MouseUpEventHandler += (sender2, e2) => + { + fLayout.RemoveFromParent(); + funAllAreaView.btnText1.Text = (areaView.btnClick.Tag as Entity.Room).name; + selectedRoom = (areaView.btnClick.Tag as Entity.Room); + + var list = LogicMethod.GetFunctionDeviceList(areaView.btnClick.Tag as Entity.Room,LogicMethod.condition_if); + DeviceListView(vv, list); + }; + + } + }; + funAllAreaView.btnText1.MouseUpEventHandler += roomClick; + funAllAreaView.btnIcon1.MouseUpEventHandler += roomClick; + //鍔熻兘鐐瑰嚮浜嬩欢 + EventHandler<MouseEventArgs> funClick = (sender3, e3) =>{ + #region 鍖哄煙寮规鐣岄潰 + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + fLayout.MouseUpEventHandler += (sender1, e1) => + { + fLayout.RemoveFromParent(); + }; + + FrameLayout bghFrameLyout = new FrameLayout + { + X = Application.GetRealWidth(10), + Y = Application.GetRealHeight(103), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(21 + 44), + BackgroundImagePath = "LogicIcon/bjicon.png", + }; + fLayout.AddChidren(bghFrameLyout); + + FrameLayout areaBgh = new FrameLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44), + }; + VerticalScrolViewLayout vvBgh = new VerticalScrolViewLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44 * 5), + }; + + var functionList = LogicMethod.GetFunctionDeviceList(selectedRoom, LogicMethod.condition_if); + var deviceTypeList = LogicMethod.GetDeviceTypeList(functionList); + + + if (deviceTypeList.Count > 5) + { + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * 5); + bghFrameLyout.AddChidren(vvBgh); + + } + else + { + bghFrameLyout.AddChidren(areaBgh); + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * deviceTypeList.Count); + areaBgh.Height = Application.GetRealHeight(44 * deviceTypeList.Count); + } + #endregion + + for (int i = 0; i < deviceTypeList.Count; i++) + { + var deviceTypeName = deviceTypeList[i]; + LogicView.AreaView areaView = new LogicView.AreaView(); + if (deviceTypeList.Count > 5) + { + vvBgh.AddChidren(areaView.FLayoutView()); + } + else + { + areaView.frameLayout.Y = Application.GetRealHeight(i * 44); + areaBgh.AddChidren(areaView.FLayoutView()); + } + areaView.btnRoomName.Text = deviceTypeName; + areaView.btnClick.Tag = deviceTypeName; + areaView.btnClick.MouseUpEventHandler += (sender, e2) => + { + fLayout.RemoveFromParent(); + funAllAreaView.btnText1.Text = areaView.btnClick.Tag.ToString(); + var typeFunctionList = LogicMethod.GetDeviceTypeFunctionList(areaView.btnClick.Tag.ToString()); + var lists = LogicMethod.GetShowDeviceList(typeFunctionList, functionList); + DeviceListView(vv, lists); + }; + + } + }; + funAllAreaView.btnText2.MouseUpEventHandler += funClick; + funAllAreaView.btnIcon2.MouseUpEventHandler += funClick; + + var deviceList = LogicMethod.GetFunctionDeviceList(selectedRoom, LogicMethod.condition_if); + DeviceListView(vv, deviceList); + + } + /// <summary> + /// 鏄剧ず璁惧鐨刅iew + /// </summary> + /// <param name="verticalScrolView">涓婁笅婊戝姩</param> + /// <param name="deviceList"></param> + public void DeviceListView(VerticalScrolViewLayout verticalScrolView, List<HDL_ON.Entity.Function> deviceList) + { + verticalScrolView.RemoveAll(); foreach (var dev in deviceList) { LogicView.SelectTypeView funView = new LogicView.SelectTypeView(); @@ -164,14 +226,15 @@ funView.btnRoomName.Visible = true; funView.btnLine.X = Application.GetRealWidth(16); funView.btnLine.Width = Application.GetRealWidth(343); - vv.AddChidren(funView.FLayoutView()); + verticalScrolView.AddChidren(funView.FLayoutView()); funView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(dev.functionType); funView.btnDeviceName.Text = dev.name; - funView.btnRoomName.Text = dev.GetRoomListName(); + funView.btnRoomName.Text = dev.GetRoomListName(); + } - - } } + + } -- Gitblit v1.8.0