From fa6bcb2e9907772480f99205f36ec2a1ce735a22 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 09 一月 2020 14:11:07 +0800 Subject: [PATCH] 合并代码 --- ZigbeeApp/Shared/Phone/Device/Category/Category.cs | 292 +++++++++++++++++++++++++--------------------------------- 1 files changed, 126 insertions(+), 166 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Category/Category.cs b/ZigbeeApp/Shared/Phone/Device/Category/Category.cs index 5170e45..c786dfa 100755 --- a/ZigbeeApp/Shared/Phone/Device/Category/Category.cs +++ b/ZigbeeApp/Shared/Phone/Device/Category/Category.cs @@ -1134,30 +1134,14 @@ }; deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) => { - if (deviceUI.CommonDevice.DfunctionType == DeviceFunctionType.A寮�鍏�) + var lightControl = new Phone.Device.Light.OnOffControl(); + UserView.HomePage.Instance.AddChidren(lightControl); + UserView.HomePage.Instance.PageIndex += 1; + lightControl.Show(deviceUI, Common.Room.CurrentRoom); + lightControl.action += (curDev, curRoom) => { - var lightControl = new Phone.Device.Light.OnOffControl(); - UserView.HomePage.Instance.AddChidren(lightControl); - UserView.HomePage.Instance.PageIndex += 1; - //lightControl.action = RefreshBodyView; - lightControl.Show(deviceUI, Common.Room.CurrentRoom); - } - else if (deviceUI.CommonDevice.DfunctionType == DeviceFunctionType.A鎻掑骇) - { - var lightControl = new Phone.Device.Light.PlugControl(); - UserView.HomePage.Instance.AddChidren(lightControl); - UserView.HomePage.Instance.PageIndex += 1; - //lightControl.action = RefreshBodyView; - lightControl.Show(deviceUI, Common.Room.CurrentRoom); - } - else - { - var lightControl = new Phone.Device.Light.LightControl(); - UserView.HomePage.Instance.AddChidren(lightControl); - UserView.HomePage.Instance.PageIndex += 1; - //lightControl.action = RefreshBodyView; - lightControl.Show(deviceUI, Common.Room.CurrentRoom); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + }; }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => @@ -1168,21 +1152,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1265,8 +1235,13 @@ var lightControl = new Phone.Device.Light.AirSwitchControl(); UserView.HomePage.Instance.AddChidren(lightControl); UserView.HomePage.Instance.PageIndex += 1; - //lightControl.action = RefreshBodyView; lightControl.Show(deviceUI, Common.Room.CurrentRoom); + lightControl.action += (curDev, curRoom) => + { + + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + + }; }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => @@ -1277,21 +1252,8 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1376,8 +1338,12 @@ UserView.HomePage.Instance.AddChidren(dimmableLightControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; - //dimmableLightControl.action = RefreshBodyView; dimmableLightControl.Show(deviceUI, Common.Room.CurrentRoom); + dimmableLightControl.action += (curDev, curRoom) => + { + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + }; + }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => @@ -1388,21 +1354,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1447,7 +1399,6 @@ var deviceRow = new CategoryFunctionRow(0, 35); deviceRow.Init(deviceUI.IconPath, deviceUI.OnlineIconPath); deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - //deviceRow.SetOnLineStatu(ac.IsOnline == 1); deviceRow.SetStatuText(deviceUI.GetDeviceStatu()); deviceRow.IsSelected = ac.currentSystemMode != 1; deviceTypeRowLayout.AddChidren(deviceRow); @@ -1490,8 +1441,12 @@ UserView.HomePage.Instance.AddChidren(acControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; - //rollerShadeControl.action = RefreshBodyView; acControl.Show(deviceUI, Common.Room.CurrentRoom); + acControl.action += (curDev, curRoom) => + { + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + + }; }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => @@ -1502,21 +1457,8 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1588,8 +1530,11 @@ UserView.HomePage.Instance.AddChidren(rollerShadeControl); UserView.HomePage.Instance.PageIndex += 1; UserView.HomePage.Instance.ScrollEnabled = false; - //rollerShadeControl.action = RefreshBodyView; rollerShadeControl.Show(deviceUI, Common.Room.CurrentRoom); + rollerShadeControl.action += (curDev, curRoom) => + { + ReFreshDeviceActionForWin(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); + }; }; EventHandler<MouseEventArgs> deviceDetailHandler = (send2, e2) => @@ -1600,21 +1545,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceActionForWin(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1626,7 +1557,6 @@ deviceTypeRowLayout.AddRightView(editBtn); editBtn.MouseUpEventHandler += deviceDetailHandler; } - } } else if (deviceUI.CommonDevice.Type == DeviceType.DoorLock) @@ -1653,21 +1583,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1698,21 +1614,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1780,21 +1682,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1825,21 +1713,7 @@ detailInfo.Show(deviceUI, Shared.Common.Room.CurrentRoom); detailInfo.EditAction += (curDevice, curRoom) => { - if (curRoom.Id != Common.Room.CurrentRoom.Id) - { - Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); - deviceRow.RemoveFromParent(); - sameTypeList.Remove(deviceUI); - if (sameTypeList.Count == 0) - { - RefreshFunction(Common.Room.CurrentRoom); - } - } - else - { - deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); - deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); - } + ReFreshDeviceAction(deviceUI, curRoom, sameTypeList, deviceListScrolView, deviceRow); }; }; var editBtn = new CommonForm.RowLayoutEditButton() @@ -1852,7 +1726,6 @@ editBtn.MouseUpEventHandler += deviceDetailHandler; } } - //鍒犻櫎璁惧 EventHandler<MouseEventArgs> delEvent = (delSender, delE) => @@ -1874,7 +1747,7 @@ sameTypeList.Remove(deviceUI); if (Common.Room.CurrentRoom.GetLoveRoom().DeviceUIList.Find((obj) => obj.FileName == deviceUI.FileName) != null) { - Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); + Common.Room.CurrentRoom.GetLoveRoom().DeleteDevice(deviceUI.FileName); } } if (sameTypeList.Count == 0) @@ -1901,6 +1774,93 @@ } /// <summary> + /// ReFreshDeviceAction + /// </summary> + /// <param name="curRoom"></param> + /// <param name="sameTypeList"></param> + /// <param name="devListScrolView"></param> + /// <param name="deviceRow"></param> + private void ReFreshDeviceAction(DeviceUI deviceUI, Common.Room curRoom, List<DeviceUI> sameTypeList, VerticalScrolViewLayout devListScrolView, CategoryFunctionRow deviceRow) + { + if (Common.Room.CurrentRoom.IsLove) + { + deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); + deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); + if (Common.Room.CurrentRoom.IsCollectInRoom(deviceUI.FileName) == false) + { + devListScrolView.RemoveViewByTag(deviceUI); + sameTypeList.Remove(deviceUI); + if (sameTypeList.Count == 0) + { + RefreshFunction(Common.Room.CurrentRoom); + } + } + } + else + { + if (curRoom.Id != Common.Room.CurrentRoom.Id) + { + Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); + devListScrolView.RemoveViewByTag(deviceUI); + sameTypeList.Remove(deviceUI); + if (sameTypeList.Count == 0) + { + RefreshFunction(Common.Room.CurrentRoom); + } + } + else + { + deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); + deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); + } + } + } + + /// <summary> + /// ReFreshDeviceAction + /// </summary> + /// <param name="curRoom"></param> + /// <param name="sameTypeList"></param> + /// <param name="devListScrolView"></param> + /// <param name="deviceRow"></param> + private void ReFreshDeviceActionForWin(DeviceUI deviceUI, Common.Room curRoom, List<DeviceUI> sameTypeList, VerticalScrolViewLayout devListScrolView, CategoryFunctionForWinRow deviceRow) + { + if (Common.Room.CurrentRoom.IsLove) + { + deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); + deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); + if (Common.Room.CurrentRoom.IsCollectInRoom(deviceUI.FileName) == false) + { + devListScrolView.RemoveViewByTag(deviceUI); + sameTypeList.Remove(deviceUI); + if (sameTypeList.Count == 0) + { + RefreshFunction(Common.Room.CurrentRoom); + } + } + } + else + { + if (curRoom.Id != Common.Room.CurrentRoom.Id) + { + Shared.Common.Room.CurrentRoom.DeleteDevice(deviceUI.FileName); + devListScrolView.RemoveViewByTag(deviceUI); + sameTypeList.Remove(deviceUI); + if (sameTypeList.Count == 0) + { + RefreshFunction(Common.Room.CurrentRoom); + } + } + else + { + deviceRow.SetDeviceIcon(deviceUI.IconPath, deviceUI.OnlineIconPath); + deviceRow.SetTitle(deviceUI.CommonDevice.DeviceEpointName); + } + } + } + + + /// <summary> /// AddRoomView /// </summary> private void AddRoomView() -- Gitblit v1.8.0