| | |
| | | //初始化添加目标
|
| | | this.InitAddTargetControl();
|
| | |
|
| | | //分享的场景不能保存
|
| | | if (this.editorScene == null || this.editorScene.IsSharedScene == false)
|
| | | //完成
|
| | | var btnSave = new BottomClickButton();
|
| | | btnSave.TextID = R.MyInternationalizationString.uFinish;
|
| | | bodyFrameLayout.AddChidren(btnSave);
|
| | | btnSave.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //完成
|
| | | var btnSave = new BottomClickButton();
|
| | | btnSave.TextID = R.MyInternationalizationString.uFinish;
|
| | | bodyFrameLayout.AddChidren(btnSave);
|
| | | btnSave.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //保存场景数据
|
| | | this.SaveSceneData();
|
| | | };
|
| | | //保存场景数据
|
| | | this.SaveSceneData();
|
| | | };
|
| | |
|
| | | //分享的场景不能保存
|
| | | if (this.editorScene != null && this.editorScene.IsSharedScene == true)
|
| | | {
|
| | | btnSave.CanClick = false;
|
| | | }
|
| | | else if (Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不能保存
|
| | | btnSave.CanClick = false;
|
| | | }
|
| | | //如果是有模板,有设备的时候,在没有发送成功之前
|
| | | else if (Common.Config.Instance.Home.TemplateMode == 2
|
| | | && Common.Config.Instance.Home.SendTemplateSuccess == false)
|
| | | {
|
| | | btnSave.CanClick = false;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | //分享的场景不能编辑
|
| | | if (this.editorScene == null || this.editorScene.IsSharedScene == false)
|
| | | {
|
| | | if (Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不允许编辑
|
| | | return;
|
| | | }
|
| | | btnZhezhao.MouseUpEventHandler += (sender, e) =>
|
| | | {
|
| | | //房间图片选择
|
| | |
| | | //场景名称
|
| | | var rowScene = new FrameCaptionInputControl(Language.StringByID(R.MyInternationalizationString.SceneName), this.cloneScene.Name);
|
| | | rowScene.txtInput.PlaceholderText = Language.StringByID(R.MyInternationalizationString.PleaseInputSceneName);
|
| | | rowScene.txtInput.MaxByte = 32;//限制只能输入32个字节
|
| | | rowScene.Y = btnTitle.Bottom + Application.GetRealHeight(23);
|
| | | frameBack.AddChidren(rowScene);
|
| | | rowScene.InitControl();
|
| | |
| | | {
|
| | | this.nowRoomId = selectId;
|
| | | };
|
| | | }
|
| | | if (Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不允许编辑
|
| | | rowBelong.CanClick = false;
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | //显示添加目标菜单
|
| | | this.ShowAddTargetMenu();
|
| | | };
|
| | | if (Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不允许编辑
|
| | | rowAddTarget.CanClick = false;
|
| | | }
|
| | | //如果是有模板,有设备的时候,在没有发送成功之前
|
| | | if (Common.Config.Instance.Home.TemplateMode == 2
|
| | | && Common.Config.Instance.Home.SendTemplateSuccess == false)
|
| | | {
|
| | | rowAddTarget.CanClick = false;
|
| | | }
|
| | |
|
| | | HdlThreadLogic.Current.RunThread(async () =>
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //从网关获取场景的执行目标
|
| | | var result = await this.GetSceneTargetList();
|
| | | var result = this.GetSceneTargetList();
|
| | | if (result == true)
|
| | | {
|
| | | //添加【执行目标行】
|
| | |
| | | //分享的场景不能编辑
|
| | | if (this.editorScene == null || this.editorScene.IsSharedScene == false)
|
| | | {
|
| | | if (Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不允许编辑
|
| | | return;
|
| | | }
|
| | | //编辑
|
| | | var btnEditor = rowDevice.AddEditorControl();
|
| | | btnEditor.ButtonClickEvent += (sender, e) =>
|
| | |
| | | //分享的场景不能编辑
|
| | | if (this.editorScene == null || this.editorScene.IsSharedScene == false)
|
| | | {
|
| | | if (Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不允许编辑
|
| | | return;
|
| | | }
|
| | | //删除
|
| | | var btnDelete = rowScene.AddDeleteControl();
|
| | | btnDelete.ButtonClickEvent += (sender, e) =>
|
| | |
| | | //分享的场景不能编辑
|
| | | if (this.editorScene == null || this.editorScene.IsSharedScene == false)
|
| | | {
|
| | | if (Common.Config.Instance.Home.IsShowTemplate == true)
|
| | | {
|
| | | //模板场景不允许编辑
|
| | | return;
|
| | | }
|
| | | //编辑
|
| | | var btnEditor = rowDelay.AddEditorControl();
|
| | | btnEditor.ButtonClickEvent += (sender, e) =>
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 获取执行目标_______________________
|
| | |
|
| | | /// <summary>
|
| | | /// 从网关获取场景的执行目标
|
| | | /// </summary>
|
| | | /// <returns></returns>
|
| | | private async System.Threading.Tasks.Task<bool> GetSceneTargetList()
|
| | | private bool GetSceneTargetList()
|
| | | {
|
| | | if (this.editorScene == null || this.listAdjustTarget != null)
|
| | | {
|
| | |
| | | //打开进度条
|
| | | this.ShowProgressBar();
|
| | | //获取执行目标列表
|
| | | var listData = await HdlSceneLogic.Current.GetAdjustTargetList(this.editorScene);
|
| | | var listData = HdlSceneLogic.Current.GetAdjustTargetList(this.editorScene);
|
| | | if (listData == null)
|
| | | {
|
| | | this.CloseProgressBar(ShowReLoadMode.YES);
|
| | |
| | | //那个特殊的控件
|
| | | this.frameBottomTemp = new FrameLayout();
|
| | | frameBottomTemp.Height = bodyFrameLayout.Height - btnTemp.Yaxis + Application.GetRealHeight(23);
|
| | | this.listBodyControl.AddChidrenFrame(frameBottomTemp);
|
| | | this.listBodyControl.AddChidren(frameBottomTemp);
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
| | | /// <summary>
|
| | | /// 保存新建的场景
|
| | | /// </summary>
|
| | | private async void SaveSceneDataByNewMode()
|
| | | private void SaveSceneDataByNewMode()
|
| | | {
|
| | | //添加场景
|
| | | this.editorScene = await HdlSceneLogic.Current.AddNewSceneToGateway(this.cloneScene.Name, this.listAdjustTarget);
|
| | | this.editorScene = HdlSceneLogic.Current.AddNewSceneToGateway(this.cloneScene.Name, this.listAdjustTarget);
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | |
|
| | |
| | | this.editorScene.IconPath = this.cloneScene.IconPath;
|
| | | this.editorScene.Save();
|
| | |
|
| | | //新建场景,主页需要重新刷新
|
| | | UserView.UserPage.Instance.RefreshAllForm = true;
|
| | |
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | //调用回调函数
|
| | |
| | | var result = await HdlSceneLogic.Current.EditorSceneNameFromGateway(this.editorScene, this.cloneScene.Name);
|
| | | if (result == false)
|
| | | {
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | return;
|
| | | }
|
| | | }
|
| | |
| | | {
|
| | | //修改场景
|
| | | var result = await HdlSceneLogic.Current.EditorSceneFromGateway(this.editorScene, this.listAdjustTarget);
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | if (result == false)
|
| | | {
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | return;
|
| | | }
|
| | | }
|
| | |
| | | //变更房间
|
| | | HdlSceneLogic.Current.ChangedSceneRoom(this.editorScene, this.nowRoomId);
|
| | | }
|
| | | else
|
| | | {
|
| | | //移除出房间
|
| | | var room = HdlRoomLogic.Current.GetRoomBySceneId(this.editorScene.Id);
|
| | | if (room != null)
|
| | | {
|
| | | HdlSceneLogic.Current.DeleteSceneFromRoom(room, this.editorScene);
|
| | | }
|
| | | }
|
| | |
|
| | | //图片改变了
|
| | | if (isScenePictrueChanged == true)
|
| | |
| | | if (this.editorScene.IconPathType != 0)
|
| | | {
|
| | | //删除自定义图片
|
| | | Shared.IO.FileUtils.DeleteFile(System.IO.Path.Combine(Config.Instance.FullPath, this.editorScene.IconPath));
|
| | | HdlFileLogic.Current.DeleteFile(System.IO.Path.Combine(Config.Instance.FullPath, this.editorScene.IconPath));
|
| | | HdlAutoBackupLogic.DeleteFile(this.editorScene.IconPath);
|
| | | }
|
| | | if (this.cloneScene.IconPathType != 0)
|
| | |
| | | this.editorScene.IconPath = this.cloneScene.IconPath;
|
| | | this.editorScene.Save();
|
| | |
|
| | | //编辑场景,主页需要重新刷新
|
| | | UserView.UserPage.Instance.RefreshAllForm = true;
|
| | |
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | |
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | //调用回调函数
|