old mode 100755
new mode 100644
| | |
| | | using System; |
| | | using System.Collections.Generic;
|
| | | using System.Collections.Generic; |
| | | using HDL_ON.DriverLayer; |
| | | using HDL_ON.Entity; |
| | | using HDL_ON.UI.CSS; |
| | |
| | | /// 场景内容显示区域 |
| | | /// </summary> |
| | | FrameLayout floorChangeView; |
| | | /// <summary>
|
| | | /// 楼层房间选择的下拉对象
|
| | | /// <summary> |
| | | /// 楼层房间选择的下拉对象 |
| | | /// </summary> |
| | | FloorRoomSelectPopupView floorRoomSelectView = null; |
| | | Button btnSceneTilte; |
| | | |
| | | #region 场景底部切换显示区域 |
| | | FrameLayout topView; |
| | | /// <summary> |
| | | /// 场景区域,顶部区域 |
| | | /// </summary> |
| | | FrameLayout sceneTopView; |
| | | /// <summary> |
| | | /// 楼层选择下拉图标 |
| | | /// </summary> |
| | |
| | | |
| | | public void LoadPage() |
| | | { |
| | | MainPage.CurPageIndex = 2; |
| | | bodyView.BackgroundColor = CSS_Color.MainBackgroundColor; |
| | | #region top |
| | | topView = new FrameLayout() |
| | |
| | | bodyView.AddChidren(topView); |
| | | |
| | | //不是A网关或者是成员 只允许添加场景隐藏自动化 |
| | | var HideAutoPage = DB_ResidenceData.Instance.GatewayType != 1 || DB_ResidenceData.Instance.CurrentRegion.IsOthreShare; |
| | | var HideAutoPage = DB_ResidenceData.Instance.CurrentRegion.isOtherShare; |
| | | //判断是否需要隐藏自动化 |
| | | if (HideAutoPage) |
| | | { |
| | |
| | | UnSelectedImagePath = "Public/AddIcon.png", |
| | | }; |
| | | topView.AddChidren(btnAddIconBg); |
| | | |
| | | btnAddIcon = new Button() |
| | | { |
| | | X = Application.GetRealWidth(337-20), |
| | | Width = Application.GetMinRealAverage(28+30), |
| | | Height = Application.GetMinRealAverage(28+29), |
| | | X = Application.GetRealWidth(337 - 20), |
| | | Width = Application.GetMinRealAverage(28 + 30), |
| | | Height = Application.GetMinRealAverage(28 + 29), |
| | | }; |
| | | topView.AddChidren(btnAddIcon); |
| | | #endregion |
| | |
| | | /// </summary> |
| | | floorChangeView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(52), |
| | | Height = Application.GetRealHeight(53), |
| | | }; |
| | | scenePageView.AddChidren(floorChangeView); |
| | | #region 场景底部切换显示区域 |
| | | /// <summary> |
| | | /// 场景区域,顶部区域 |
| | | /// </summary> |
| | | sceneTopView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(53), |
| | | }; |
| | | floorChangeView.AddChidren(sceneTopView); |
| | | /// <summary> |
| | | /// 楼层选择下拉图标 |
| | | /// </summary> |
| | |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | | X = Application.GetRealWidth(16), |
| | | Y = Application.GetRealHeight(18), |
| | | Gravity = Gravity.CenterVertical, |
| | | UnSelectedImagePath = "Public/DownIcon.png", |
| | | }; |
| | | floorChangeView.AddChidren(btnFloorDownIcon); |
| | |
| | | btnFloor = new Button() |
| | | { |
| | | X = btnFloorDownIcon.Right, |
| | | Y = Application.GetRealHeight(18), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetRealWidth(200), |
| | | Height = Application.GetMinRealAverage(16), |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = DB_ResidenceData.Instance.CurFloor.roomName, |
| | | }; |
| | | floorChangeView.AddChidren(btnFloor);
|
| | |
|
| | | string nowSelectId = null;
|
| | | btnFloor.MouseUpEventHandler += (sender, e) =>
|
| | | {
|
| | | if (this.floorRoomSelectView == null)
|
| | | {
|
| | | //先初始化
|
| | | this.floorRoomSelectView = new FloorRoomSelectPopupView();
|
| | | }
|
| | | //显示下拉列表
|
| | | this.floorRoomSelectView.ShowSceneView(btnFloor, (selectId, listScene) =>
|
| | | {
|
| | | nowSelectId = selectId;
|
| | | //重新刷新场景列表
|
| | | this.LoadSceneFunctionControlZone(listScene);
|
| | | }, nowSelectId);
|
| | | floorChangeView.AddChidren(btnFloor); |
| | | |
| | | string nowSelectId = null; |
| | | btnFloor.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (this.floorRoomSelectView == null) |
| | | { |
| | | //先初始化 |
| | | this.floorRoomSelectView = new FloorRoomSelectPopupView(); |
| | | } |
| | | //显示下拉列表 |
| | | this.floorRoomSelectView.ShowSceneView(btnFloor, (selectId, listScene) => |
| | | { |
| | | nowSelectId = selectId; |
| | | //重新刷新场景列表 |
| | | this.LoadSceneFunctionControlZone(listScene); |
| | | }, nowSelectId); |
| | | }; |
| | | |
| | | #endregion |
| | |
|
| | | |
| | | sceneFunctionView = new VerticalScrolViewLayout() |
| | | { |
| | | Y = floorChangeView.Bottom, |
| | | Height = Application.GetRealHeight(667 - 64 - 49 - 52 + 30), |
| | | Y = Application.GetRealHeight(53), |
| | | Height = Application.GetRealHeight(667 - 64 - 49 - 52 + 0), |
| | | }; |
| | | scenePageView.AddChidren(sceneFunctionView); |
| | | LoadSceneFunctionControlZone(null); |
| | |
| | | /// </summary> |
| | | void LoadSceneFunctionControlZone(List<Scene> listScene) |
| | | { |
| | | //topView.AddChidren(btnAddIcon); |
| | | |
| | | sceneFunctionView.RemoveAll(); |
| | | var rowView = new FrameLayout(); |
| | | try |
| | | { |
| | | int index = 0; |
| | | //获取能够显示的场景 |
| | | if (listScene == null)
|
| | | {
|
| | | //初始值
|
| | | if (this.floorRoomSelectView == null)
|
| | | {
|
| | | //先初始化
|
| | | this.floorRoomSelectView = new FloorRoomSelectPopupView();
|
| | | }
|
| | | listScene = this.floorRoomSelectView.GetCanShowListScene();
|
| | | } |
| | | foreach (var scene in listScene) |
| | | if (listScene == null) |
| | | { |
| | | //if (scene.roomIds.Count == 0)//如何在房间已经移除了这个功能,则收藏界面也不会再显示 |
| | | //{ |
| | | // scene.collect = false; |
| | | // continue; |
| | | //} |
| | | if (index % 2 == 0) |
| | | //初始值 |
| | | if (this.floorRoomSelectView == null) |
| | | { |
| | | sceneFunctionView.AddChidren(new Button() { Height = Application.GetRealHeight(7) }); |
| | | rowView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealWidth(122), |
| | | }; |
| | | sceneFunctionView.AddChidren(rowView); |
| | | sceneFunctionView.AddChidren(new Button() { Height = Application.GetRealHeight(7) }); |
| | | //先初始化 |
| | | this.floorRoomSelectView = new FloorRoomSelectPopupView(); |
| | | } |
| | | var functionView_X = Application.GetRealWidth((16 + 164) * (index % 2) + 16); |
| | | |
| | | var functionView = new FrameLayout() |
| | | { |
| | | X = functionView_X, |
| | | Width = Application.GetRealWidth(164), |
| | | Height = Application.GetRealWidth(122), |
| | | Tag = scene.sid, |
| | | //BackgroundImagePath = (scene as Scene).ImagePath, |
| | | }; |
| | | rowView.AddChidren(functionView); |
| | | //2020-12-03 修改图片加载方法 |
| | | ImageUtlis.Current.LoadLocalOrNetworkImages((scene as Scene).ImagePath, functionView); |
| | | |
| | | LoadSceneFunctionDiv(functionView, scene); |
| | | index++; |
| | | listScene = this.floorRoomSelectView.GetCanShowListScene(); |
| | | } |
| | | |
| | | if (index == 0) |
| | | if (listScene.Count == 0) |
| | | { |
| | | var view = new FrameLayout(); |
| | | sceneFunctionView.AddChidren(view); |
| | |
| | | }; |
| | | view.AddChidren(btnNoCollectionTip); |
| | | } |
| | | else |
| | | { |
| | | var rowView = new FrameLayout(); |
| | | new System.Threading.Thread(() => |
| | | { |
| | | foreach (var scene in listScene) |
| | | { |
| | | System.Threading.Thread.Sleep(10); |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | if (index % 2 == 0) |
| | | { |
| | | rowView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealWidth(122), |
| | | }; |
| | | sceneFunctionView.AddChidren(rowView); |
| | | sceneFunctionView.AddChidren(new Button() |
| | | { |
| | | Height = Application.GetRealHeight(7 + 7), |
| | | }); |
| | | } |
| | | var functionView_X = Application.GetRealWidth((16 + 164) * (index % 2) + 16); |
| | | |
| | | var functionView = LoadSceneFunctionDiv(functionView_X, scene); |
| | | rowView.AddChidren(functionView); |
| | | index++; |
| | | }); |
| | | } |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | /// <summary> |
| | | /// 加载场景控制卡片 |
| | | /// </summary> |
| | | void LoadSceneFunctionDiv(FrameLayout view, Scene scene) |
| | | //FrameLayout LoadSceneFunctionDiv(FrameLayout view, Scene scene) |
| | | FrameLayout LoadSceneFunctionDiv(int functionView_X, Scene scene) |
| | | { |
| | | var view = new FrameLayout() |
| | | { |
| | | X = functionView_X, |
| | | Width = Application.GetRealWidth(164), |
| | | Height = Application.GetRealWidth(122), |
| | | Tag = scene.sid, |
| | | }; |
| | | //2020-12-03 修改图片加载方法 |
| | | ImageUtlis.Current.LoadLocalOrNetworkImages(scene.ImagePath, view); |
| | | |
| | | try |
| | | { |
| | | Button btnCoverd = new Button() |
| | |
| | | UnSelectedImagePath = "Collection/SceneCovered.png", |
| | | }; |
| | | view.AddChidren(btnCoverd); |
| | | |
| | | Button btnShowDelay; |
| | | btnShowDelay = new Button() |
| | | { |
| | | X = Application.GetRealWidth(40), |
| | | Y = Application.GetRealWidth(4), |
| | | Height = Application.GetRealWidth(32), |
| | | Width = Application.GetRealWidth(100), |
| | | TextColor = CSS_Color.AuxiliaryColor1, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | }; |
| | | view.AddChidren(btnShowDelay); |
| | | |
| | | Button btnName; |
| | | btnName = new Button() |
| | |
| | | btnZone = new Button() |
| | | { |
| | | X = Application.GetRealWidth(12), |
| | | Y = btnName.Bottom, |
| | | Y = Application.GetRealWidth(68+24), |
| | | Height = Application.GetRealWidth(18), |
| | | Width = Application.GetRealWidth(113), |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | |
| | | Width = Application.GetRealWidth(32), |
| | | UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png", |
| | | }; |
| | | view.AddChidren(btnSettingIcon); |
| | | if (scene.userId == UserInfo.Current.ID) |
| | | { |
| | | view.AddChidren(btnSettingIcon); |
| | | } |
| | | |
| | | Button btnCollection; |
| | | btnCollection = new Button() |
| | |
| | | SelectedImagePath = "Collection/CollectionIcon.png", |
| | | IsSelected = scene.collect, |
| | | }; |
| | | //view.AddChidren(btnCollection); |
| | | //2020-12-16 如果是成员隐藏收藏功能 |
| | | if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) |
| | | view.AddChidren(btnCollection); |
| | | btnCollection.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | view.AddChidren(btnCollection); |
| | | } |
| | | btnCollection.MouseUpEventHandler = (sender, e) => { |
| | | scene.collect = btnCollection.IsSelected = !btnCollection.IsSelected; |
| | | scene.CollectScene(); |
| | | }; |
| | | LoadEvent_ControlScene(btnCoverd,btnName,btnZone, scene); |
| | | btnSettingIcon.MouseUpEventHandler = (sender, e) => { |
| | | Action backAction = () => { |
| | | LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene); |
| | | btnSettingIcon.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | Action backAction = () => |
| | | { |
| | | LoadSceneFunctionControlZone(null); |
| | | }; |
| | | Action refreshAction = () => { |
| | | Action refreshAction = () => |
| | | { |
| | | btnName.Text = scene.name; |
| | | btnZone.Text = scene.GetRoomListName(); |
| | | //2020-12-03 修改图片加载方法 |
| | |
| | | aep.LoadPage(refreshAction); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | }; |
| | | //场景正在倒计时执行中 |
| | | scene.SceneCountDown(btnShowDelay); |
| | | |
| | | return view; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MainPage.Log("homepage LoadControlView error : " + ex.Message); |
| | | return view; |
| | | } |
| | | finally |
| | | { |
| | | } |
| | | } |
| | | #endregion |
| | |
| | | /// </summary> |
| | | void LoadAutomationPageView() |
| | | { |
| | | //btnAddIcon.RemoveFromParent(); |
| | | automationPage = new FrameLayout(); |
| | | contentPageView.AddChidren(automationPage); |
| | | UI2.Intelligence.Automation.MainView.automationPage = automationPage; |
| | | UI2.Intelligence.Automation.MainView.MainShow(); |
| | | }
|
| | | } |
| | | #endregion |
| | | } |
| | | |
| | |
| | | if (!btnAutomationTitle.IsSelected) |
| | | { |
| | | //如果是成员 |
| | | if (DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) |
| | | if (DB_ResidenceData.Instance.CurrentRegion.isOtherShare) |
| | | { |
| | | //如果没有场景权限 |
| | | if (!DB_ResidenceData.Instance.CurrentRegion.isAllowCreateScene) |
| | |
| | | else |
| | | { |
| | | //跳转到逻辑界面 |
| | | UI2.Intelligence.Automation.MainView.SkipAddLogicPage(); |
| | | UI2.Intelligence.Automation.MainView logicMainView = new UI2.Intelligence.Automation.MainView(); |
| | | logicMainView.SkipAddLogicPage(); |
| | | } |
| | | }; |
| | | } |
| | |
| | | /// <summary> |
| | | /// 加载场景控制事件 |
| | | /// </summary> |
| | | void LoadEvent_ControlScene(Button btnCoverd, Button btnName, Button btnZone, Scene scene) |
| | | void LoadEvent_ControlScene(Button btnCoverd, Button btnName, Button btnZone, Button btnShowDelay, Scene scene) |
| | | { |
| | | |
| | | EventHandler<MouseEventArgs> eventHandler = (sender, e) => |
| | | { |
| | | //场景正在倒计时执行中,不允许再点击 |
| | | if (scene.LastExecutionTime == "" || Convert.ToDouble(scene.LastExecutionTime) + Convert.ToDouble(scene.delay) < Convert.ToDouble(Utlis.GetTimestamp(false))) |
| | | { |
| | | scene.LastExecutionTime = Utlis.GetTimestamp(false); |
| | | } |
| | | else |
| | | { |
| | | return; |
| | | } |
| | | string msg = scene.name + Language.StringByID(StringId.AlreadyOpened); |
| | | new PublicAssmebly().TipMsgAutoClose(msg, true); |
| | | Control.Ins.ControlScene(scene); |
| | | scene.SceneCountDown(btnShowDelay); |
| | | }; |
| | | btnCoverd.MouseUpEventHandler = eventHandler; |
| | | btnName.MouseUpEventHandler = eventHandler; |