| | |
| | | /// <summary> |
| | | /// 设备类型RowLayout |
| | | /// </summary> |
| | | private RowLayout typeRowLayout; |
| | | private FrameLayout typeRowLayout; |
| | | /// <summary> |
| | | /// 楼层 |
| | | /// </summary> |
| | |
| | | { |
| | | var floors = new SelectFloor (); |
| | | AddChidren(floors); |
| | | floors.Init(599,357,Direction.Right); |
| | | floors.Init(580,330,Direction.Right); |
| | | floors.FloorAction += (floorName) => |
| | | { |
| | | floorBtn.Text = floorName; |
| | |
| | | Width = Application.GetRealWidth(1028), |
| | | Height = functionSceneBodyView.Height - Application.GetRealHeight(279 + 50) - 1, |
| | | BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor |
| | | |
| | | }; |
| | | functionSceneBodyView.AddChidren(deviceListScrolView); |
| | | tempFunctionTypeBtn = new FunctionButton(); |
| | |
| | | sendedControlCommand = false; |
| | | zbGateway.ReportAction += UpdateDeviceControllStatu; |
| | | AddZbGateway(zbGatewayList, zbGateway, commonDeviceList, deviceUI.CommonDevice); |
| | | (send2 as CommonForm.SelectedStatuButton).IsSelected = !(send2 as CommonForm.SelectedStatuButton).IsSelected; |
| | | if ((send2 as CommonForm.SelectedStatuButton).IsSelected) |
| | | (send2 as Button).IsSelected = !(send2 as Button).IsSelected; |
| | | if ((send2 as Button).IsSelected) |
| | | { |
| | | light.SwitchControl(1); |
| | | } |
| | |
| | | |
| | | foreach (var deviceType in Common.Room.GetdeviceTypes(room)) |
| | | { |
| | | typeRowLayout = new RowLayout() |
| | | typeRowLayout = new FrameLayout() |
| | | { |
| | | Width = Application.GetRealWidth(CommonPage.AppRealWidth / 5), |
| | | LineColor = ZigbeeColor.Current.GXCBackgroundColor, |
| | | Tag = deviceType |
| | | }; |
| | | functionTypeScrowView.AddChidren(typeRowLayout); |
| | |
| | | functionTypeIMG.SetTitle(DeviceUI.GetDeviceTypeName(deviceType)); |
| | | typeRowLayout.AddChidren(functionTypeIMG); |
| | | |
| | | |
| | | functionTypeIMG.ImageBtn.MouseUpEventHandler += ShowSameTypeFunction; |
| | | functionTypeIMG.NameBtn.MouseUpEventHandler += ShowSameTypeFunction; |
| | | functionTypeIMG.ImageBG.MouseUpEventHandler += ShowSameTypeFunction; |
| | | functionTypeIMG.ClickBtn.MouseUpEventHandler += ShowSameTypeFunction; |
| | | |
| | | |
| | | if (deviceType == room.DeviceUIList[0].CommonDevice.Type) |
| | | { |
| | | ShowSameTypeFunction(functionTypeIMG.ImageBtn, null); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | |
| | |
| | | Button curBtn = new Button(); |
| | | foreach (var room in Common.Room.CurrentRoom.GetRoomsByCurrentFloorIdAppendLoveRoom()) |
| | | { |
| | | var row = new RowLayout() |
| | | var row = new FrameLayout() |
| | | { |
| | | Width = Application.GetRealWidth(187 + 50), |
| | | Height = Application.GetRealHeight(167), |
| | | LineColor = ZigbeeColor.Current.GXCGrayBackgroundColor |
| | | Height = Application.GetRealHeight(167) |
| | | }; |
| | | roomFL.AddChidren(row); |
| | | |
| | |
| | | /// <param name="room"></param> |
| | | public void RefreshScene(Common.Room room) |
| | | { |
| | | functionSceneBodyView.RemoveAll(); |
| | | var sceneList = room.SceneUIList; |
| | | if (sceneList.Count == 0) |
| | | { |
| | |
| | | Width = Application.GetMinRealAverage(65), |
| | | Height = Application.GetMinRealAverage(65), |
| | | UnSelectedImagePath = "Item/Collection.png", |
| | | SelectedImagePath = "Item/CollectionSelected.png" |
| | | SelectedImagePath = "Item/CollectionSelected.png", |
| | | IsSelected = Common.Room.CurrentRoom.GetLoveRoom().SceneUIFilePathList.Contains(scene.FileName), |
| | | Tag = scene |
| | | }; |
| | | leftFL.AddChidren(collectionBtn); |
| | | |
| | | |
| | | var sceneNameBtn = new Button() |
| | | { |
| | | Width = Application.GetRealWidth(176), |
| | | Height = Application.GetRealHeight(200), |
| | | Height = Application.GetRealHeight(150), |
| | | TextColor = ZigbeeColor.Current.GXCTextWhiteColor, |
| | | Text = scene.Name, |
| | | Gravity = Gravity.Center, |
| | | IsMoreLines = true |
| | | }; |
| | | leftFL.AddChidren(sceneNameBtn); |
| | | |
| | | var collection = new Button |
| | | { |
| | | Tag=scene |
| | | }; |
| | | leftFL.AddChidren(collection); |
| | | collection.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (room.IsLove) |
| | | { |
| | | Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); |
| | | sceneScrolView.RemoveViewByTag(collectionBtn.Tag); |
| | | } |
| | | else |
| | | { |
| | | collectionBtn.IsSelected = !collectionBtn.IsSelected; |
| | | if (collectionBtn.IsSelected) |
| | | { |
| | | Common.Room.CurrentRoom.GetLoveRoom().AddScene(scene); |
| | | } |
| | | else |
| | | { |
| | | Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); |
| | | } |
| | | } |
| | | }; |
| | | |
| | | //定时 |
| | | var delayBtn = new RowLayoutDeleteButton |
| | |
| | | //编辑 |
| | | var settingBtn = new Device.CommonForm.RowLayoutEditButton() |
| | | { |
| | | TextID = R.MyInternationalizationString.Setting, |
| | | TextID = R.MyInternationalizationString.Editor, |
| | | Tag = scene.SceneDelayTime |
| | | }; |
| | | //删除 |
| | |
| | | //删除场景 |
| | | EventHandler<MouseEventArgs> delEvent = (sender, e) => |
| | | { |
| | | var tip = new CustomAlert { }; |
| | | AddChidren(tip); |
| | | tip.Show(Language.StringByID(R.MyInternationalizationString.ConfirmDelete)); |
| | | |
| | | //var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim)); |
| | | //alert.Show(); |
| | | tip.ResultEventHandler += async (e1) => |
| | | if(room.IsLove) |
| | | { |
| | | if (e1) |
| | | Shared.Common.Room.CurrentRoom.GetLoveRoom().DeleteScene(scene); |
| | | sceneScrolView.RemoveViewByTag((sender as Button).Tag); |
| | | } |
| | | else |
| | | { |
| | | var tip = new CustomAlert { }; |
| | | AddChidren(tip); |
| | | tip.Show(Language.StringByID(R.MyInternationalizationString.ConfirmDelete)); |
| | | |
| | | //var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.ConfirmDelete), Language.StringByID(R.MyInternationalizationString.Cancel), Language.StringByID(R.MyInternationalizationString.Confrim)); |
| | | //alert.Show(); |
| | | tip.ResultEventHandler += async (e1) => |
| | | { |
| | | //0 移除失败 1 移除成功 2 没有该场景 |
| | | var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id); |
| | | if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null) |
| | | if (e1) |
| | | { |
| | | //CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheMainGatewayIsNotOnLine); |
| | | CommonPage.Instance.FailureToServer(); |
| | | return; |
| | | //0 移除失败 1 移除成功 2 没有该场景 |
| | | var removeSceneAllData = await ZigBee.Device.Scene.DeleteSceneAsync(scene.Id); |
| | | if (removeSceneAllData == null || removeSceneAllData.removeSceneData == null) |
| | | { |
| | | //CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheMainGatewayIsNotOnLine); |
| | | CommonPage.Instance.FailureToServer(); |
| | | return; |
| | | } |
| | | //1成功 |
| | | if (removeSceneAllData.removeSceneData.Result == 1) |
| | | { |
| | | room.RemoveScene(scene); |
| | | //RefreshBodyView(); |
| | | sceneScrolView.RemoveViewByTag((sender as Button).Tag); |
| | | } |
| | | //0 移除失败 |
| | | else if (removeSceneAllData.removeSceneData.Result == 0) |
| | | { |
| | | CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); |
| | | return; |
| | | } |
| | | //2 没有该场景 |
| | | else if (removeSceneAllData.removeSceneData.Result == 2) |
| | | { |
| | | room.RemoveScene(scene); |
| | | //RefreshBodyView(); |
| | | sceneScrolView.RemoveViewByTag((sender as Button).Tag); |
| | | CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneIsNull); |
| | | return; |
| | | } |
| | | } |
| | | //1成功 |
| | | if (removeSceneAllData.removeSceneData.Result == 1) |
| | | { |
| | | room.RemoveScene(scene); |
| | | //RefreshBodyView(); |
| | | sceneScrolView.RemoveViewByTag((sender as Button).Tag); |
| | | } |
| | | //0 移除失败 |
| | | else if (removeSceneAllData.removeSceneData.Result == 0) |
| | | { |
| | | CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); |
| | | return; |
| | | } |
| | | //2 没有该场景 |
| | | else if (removeSceneAllData.removeSceneData.Result == 2) |
| | | { |
| | | room.RemoveScene(scene); |
| | | //RefreshBodyView(); |
| | | sceneScrolView.RemoveViewByTag((sender as Button).Tag); |
| | | CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneIsNull); |
| | | return; |
| | | } |
| | | } |
| | | }; |
| | | }; |
| | | } |
| | | |
| | | }; |
| | | deleteBtn.MouseUpEventHandler += delEvent; |
| | | //编辑场景 |
| | | settingBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | SceneRoomUI.EditScene(scene,room); |
| | | SceneUI.EditScene(scene, room); |
| | | }; |
| | | //编辑延时 |
| | | delayBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | var tList = new List<string>() { }; |
| | | |
| | | for (int i = 0; i < 60; i++) |
| | | var timeSelect = new SelectTime(); |
| | | CommonPage.Instance.AddChidren(timeSelect); |
| | | timeSelect.TempTime = scene.SceneDelayTime; |
| | | timeSelect.Init(); |
| | | timeSelect.TimeAction = (t) => |
| | | { |
| | | tList.Add($"{i} {Language.StringByID(R.MyInternationalizationString.Second)}"); |
| | | } |
| | | //int beforeIndex = (int)(sender as CommonForm.RowLayoutEditButton).Tag; |
| | | //PickerView.Show(tList, (obj) => |
| | | //{ |
| | | // var tempRoom = Shared.Common.Room.GetRoomByFilePath(sceneRoomUI.room.FileName); |
| | | // if (tempRoom == null) |
| | | // { |
| | | // return; |
| | | // } |
| | | // foreach (var ss in tempRoom.SceneUIList) |
| | | // { |
| | | // if (ss.Id == sceneRoomUI.sceneUI.Id) |
| | | // { |
| | | // //ss.SceneDelayTime = int.Parse(obj.Split(' ')[0]); |
| | | // sceneRoomUI.room.Save(); |
| | | // RefreshBodyView(); |
| | | // return; |
| | | // } |
| | | // } |
| | | //}, Language.StringByID(R.MyInternationalizationString.Confrim), tList[(int)(sender as CommonForm.RowLayoutEditButton).Tag]); |
| | | scene.SceneDelayTime = t; |
| | | }; |
| | | }; |
| | | } |
| | | } |