From 0f2e0147e8990e913d16d99bc1b94fb6bc53abd7 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期四, 03 十二月 2020 15:35:42 +0800 Subject: [PATCH] 2020-12-03-1 --- HDL_ON/UI/UI2/2-Classification/RoomPage.cs | 143 +++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 135 insertions(+), 8 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/RoomPage.cs b/HDL_ON/UI/UI2/2-Classification/RoomPage.cs index b8f4460..f6386d2 100644 --- a/HDL_ON/UI/UI2/2-Classification/RoomPage.cs +++ b/HDL_ON/UI/UI2/2-Classification/RoomPage.cs @@ -21,23 +21,34 @@ #region static Room room; - #endregion + Action skipEditPageAction; + Action ReloadRoomName; + #endregion - public RoomPage(Room r) + public RoomPage(Room r,Action rrn) { bodyView = this; room = r; + skipEditPageAction = () => + { + LoadEvent_SkipEditRoomPage(); + }; + ReloadRoomName = rrn; + } + /// <summary> + /// 閲嶈浇鐣岄潰 + /// </summary> + void ReLoadPage() + { + bodyView.RemoveAll(); + LoadPage(); } public void LoadPage() { - Action skipAction = () => - { - LoadEvent_SkipEditRoomPage(); - }; bodyView.BackgroundColor = CSS_Color.BackgroundColor; - new TopViewDiv(bodyView,room.name).LoadTopView(room ,skipAction); + new TopViewDiv(bodyView,room.name).LoadTopView_RoomTop(ReloadRoomName, skipEditPageAction); functionListView = new VerticalScrolViewLayout() { @@ -88,7 +99,123 @@ functionListView.AddChidren(functionDiv); } } - + foreach (var scene in room.GetRoomScenes(false)) + { + var sceneRow = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(116), + Radius = (uint)Application.GetMinRealAverage(12), + BorderColor = 0x00FFFFFF, + BorderWidth = 1, + BackgroundColor = CSS_Color.MainBackgroundColor, + Tag = "Scene-" + scene.sid + }; + functionListView.AddChidren(sceneRow); + LoadSceneRow(sceneRow, scene); + } } + + + + + /// <summary> + /// 鍔犺浇鍔熻兘绫诲瀷鎺у埗鍗$墖 + /// </summary> + public void LoadSceneRow(FrameLayout bodyDiv, Scene scene) + { + var btnIcon = new Button() + { + X = Application.GetRealWidth(10), + Y = Application.GetRealHeight(15), + Width = Application.GetRealWidth(32), + Height = Application.GetRealWidth(32), + }; + bodyDiv.AddChidren(btnIcon); + + var btnName = new Button() + { + X = Application.GetRealWidth(8 + 10 + 32), + Y = Application.GetRealHeight(10), + Width = Application.GetRealWidth(200), + Height = Application.GetRealHeight(24), + Text = scene.name, + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, + }; + bodyDiv.AddChidren(btnName); + + var btnFromFloor = new Button() + { + X = Application.GetRealWidth(8 + 10 + 32), + Y = Application.GetRealHeight(10 + 24), + Width = Application.GetRealWidth(200), + Height = Application.GetRealHeight(18), + Text = scene.GetRoomListName(), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + }; + bodyDiv.AddChidren(btnFromFloor); + + var btnCollectionIcon = new Button() + { + X = Application.GetRealWidth(299), + Y = Application.GetRealHeight(10), + Width = Application.GetMinRealAverage(40), + Height = Application.GetMinRealAverage(40), + SelectedImagePath = "Collection/CollectionIcon.png", + UnSelectedImagePath = "Collection/CollectionGrayIcon.png", + IsSelected = scene.collect + }; + bodyDiv.AddChidren(btnCollectionIcon); + btnIcon.UnSelectedImagePath = "FunctionIcon/Scene/SceneIcon.png"; + if ((scene as Scene).sceneType == SceneType.MovieScene) + { + var movieIcon = new Button() + { + X = Application.GetRealWidth(52), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(16), + Height = Application.GetRealWidth(16), + UnSelectedImagePath = "FunctionIcon/Scene/MovieMark.png", + }; + bodyDiv.AddChidren(movieIcon); + btnName.X = Application.GetRealWidth(52 + 16); + } + //鍔犺浇鍦烘櫙鎺у埗浜嬩欢 + LoadEvent_ControlScene(btnName,btnFromFloor,bodyDiv,scene ); + + LoadEvent_FunctionCollection(btnCollectionIcon,scene); + } + + /// <summary> + /// 鍔犺浇鍔熻兘鏀惰棌鎸夐挳浜嬩欢 + /// </summary> + void LoadEvent_FunctionCollection(Button btnCollectionIcon,Scene scene) + { + btnCollectionIcon.MouseUpEventHandler += (sender, e) => + { + btnCollectionIcon.IsSelected = scene.collect = !btnCollectionIcon.IsSelected; + scene.SaveSceneData(); + }; + } + /// <summary> + /// 鍔犺浇鍦烘櫙鎺у埗浜嬩欢 + /// </summary> + void LoadEvent_ControlScene(Button btnName,Button btnFromFloor,FrameLayout bodyDiv, Scene scene) + { + EventHandler<MouseEventArgs> upEvent = (sender, e) => { + DriverLayer.Control.Ins.ControlScene(scene); + string msg = scene.name + Language.StringByID(StringId.AlreadyOpened); + new PublicAssmebly().TipMsgAutoClose(msg, false); + }; + btnName.MouseUpEventHandler = upEvent; + btnFromFloor.MouseUpEventHandler = upEvent; + bodyDiv.MouseUpEventHandler = upEvent; + } + } } -- Gitblit v1.8.0