From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 27 八月 2021 13:21:21 +0800
Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1

---
 HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs |  122 ++++++++++++++--------------------------
 1 files changed, 44 insertions(+), 78 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
index cbf976b..67f47d5 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
@@ -261,7 +261,7 @@
                     TextAlignment = TextAlignment.CenterRight,
                     TextColor = CSS_Color.PromptingColor1,
                     TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
-                    Text = FunctionList.List.GetDelayText( scene.delay)
+                    Text = scene.GetDelayText()
                 };
                 sceneDelayRow.AddChidren(btnSceneDelayInfo);
 
@@ -281,9 +281,14 @@
                 {
                     Action<string> action = (obj) => {
                         scene.delay = obj;
-                        btnSceneDelayInfo.Text = FunctionList.List.GetDelayText(obj);
+                        btnSceneDelayInfo.Text = scene.GetDelayText();
                         scene.EditScene();
                     };
+                    Dictionary<string, string> items = new Dictionary<string, string>();
+                    items.Add("30", "30s");
+                    items.Add("60", "1min");
+                    items.Add("120", "2min");
+                    items.Add("300", "5min");
                     new PublicAssmebly().SetSceneDelayDialog(action,scene.delay);
                 };
 
@@ -326,6 +331,7 @@
 
             functionListView = new VerticalScrolViewLayout() {
                 Height = 0,
+                ScrollEnabled  = false,
             };
             contentView.AddChidren(functionListView);
 
@@ -367,38 +373,50 @@
                 BackgroundColor = CSS_Color.MainBackgroundColor,
                 //IsBold = true
             };
-            bodyView.AddChidren(btnComplete);
-
+            if (scene.can_delete)
+            {
+                bodyView.AddChidren(btnComplete);
+            }
             LoadEventList();
 
             var waitPage = new Loading();
             new Thread(() => {
-                Application.RunOnMainThread(() => {
-                    bodyView.AddChidren(waitPage);
-                    waitPage.Start(Language.StringByID(StringId.PleaseWait));
-                });
-                var pm = new HttpServerRequest();
-                var pack = pm.GetSceneInfo(scene.userSceneId);
-                if (pack.Code == StateCode.SUCCESS)
+                try
                 {
-                    var sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(pack.Data.ToString());
-                    var tempScene = sceneList.Find((obj) => obj.userSceneId == scene.userSceneId);
-                    if(tempScene!= null)
-                    {
-                        scene.functions = tempScene.functions;
-                    }
                     Application.RunOnMainThread(() =>
                     {
-                        LoadFunctionRow();
-                        waitPage.Hide();
+                        bodyView.AddChidren(waitPage);
+                        waitPage.Start(Language.StringByID(StringId.PleaseWait));
                     });
+                    var pm = new HttpServerRequest();
+                    var pack = pm.GetSceneInfo(scene.userSceneId);
+                    if (pack.Code == StateCode.SUCCESS)
+                    {
+                        var sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(pack.Data.ToString());
+                        var tempScene = sceneList.Find((obj) => obj.userSceneId == scene.userSceneId);
+                        if (tempScene != null)
+                        {
+                            scene.functions = tempScene.functions;
+                        }
+                        Application.RunOnMainThread(() =>
+                        {
+                            LoadFunctionRow();
+                            waitPage.Hide();
+                            waitPage.RemoveFromParent();
+                        });
+                    }
+                    else
+                    {
+                        IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+                    }
                 }
-                else
+                catch { }
+                finally
                 {
                     Application.RunOnMainThread(() =>
                     {
                         waitPage.Hide();
-                        IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+                        waitPage.RemoveFromParent();
                     });
                 }
             }).Start();
@@ -451,7 +469,7 @@
                     TextAlignment = TextAlignment.BottomRight,
                     TextColor = CSS_Color.FirstLevelTitleColor,
                     TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
-                    Text = GetFunctionScnenInfo(scenefunction),
+                    Text = scenefunction.GetFunctionScnenInfo(),
                 };
                 row.AddChidren(btnFunctionInfo);
 
@@ -468,7 +486,7 @@
 
                 if (Convert.ToInt32( scenefunction.delay) > 0)
                 {
-                    btnFunctionDelayInfo.Text = Language.StringByID(StringId.Delay) + " " + FunctionList.List.GetDelayText(scenefunction.delay);
+                    btnFunctionDelayInfo.Text = Language.StringByID(StringId.Delay) + " " + new Scene() { delay = scenefunction.delay }.GetDelayText();
                 }
                 else
                 {
@@ -498,20 +516,15 @@
                 };
                 row.AddChidren(btnFunctionFloorAndRoom);
 
-                btnFunctionName.MouseUpEventHandler = (sender, e) =>
+                EventHandler<MouseEventArgs> skipEvent = (sender, e) =>
                 {
                     var ssf = new SceneFunctionInfoEditPage(scene, scenefunction, refreshFunctionRowAction);
                     MainPage.BasePageView.AddChidren(ssf);
                     ssf.LoadPage();
                     MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                 };
-                btnFunctionFloorAndRoom.MouseUpEventHandler = (sender, e) =>
-                {
-                    var ssf = new SceneFunctionInfoEditPage(scene, scenefunction, refreshFunctionRowAction);
-                    MainPage.BasePageView.AddChidren(ssf);
-                    ssf.LoadPage();
-                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                };
+                btnFunctionName.MouseUpEventHandler = skipEvent;
+                btnFunctionFloorAndRoom.MouseUpEventHandler = skipEvent;
 
 
                 Button btnDelSceneFunction = new Button() {
@@ -525,55 +538,8 @@
                     scene.EditScene();
                     row.RemoveFromParent();
                     functionListView.Height = Application.GetRealWidth(65 * scene.functions.Count);
-                    //LoadFunctionRow(functionListView);
                 };
             }
-        }
-
-        /// <summary>
-        /// 瑙f瀽鍦烘櫙鍔熻兘鏁版嵁
-        /// </summary>
-        /// <param name="sceneFunction"></param>
-        string GetFunctionScnenInfo(SceneFunction sceneFunction)
-        {
-            var sceneFunctionInfo = "";
-            foreach (var sfs in sceneFunction.status)
-            {
-                if (sfs.key == FunctionAttributeKey.OnOff)
-                {
-                    if (sfs.value == "off")
-                        return Language.StringByID(StringId.Close);
-                }
-            }
-            sceneFunctionInfo += Language.StringByID(StringId.Open) + " ";
-
-            var modeState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Mode);
-            var tempState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.SetTemp);
-            var fanState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed);
-            if (modeState != null)
-            {
-                sceneFunctionInfo += FunctionList.List.GetValueText(modeState.key, modeState.value) + " ";
-            }
-            if (tempState != null)
-            {
-                sceneFunctionInfo += FunctionList.List.GetValueText(tempState.key, tempState.value) + " ";
-                sceneFunctionInfo += FunctionList.List.GetUintString(tempState.key);
-            }
-            if (fanState != null)
-            {
-                sceneFunctionInfo += FunctionList.List.GetValueText(fanState.key, fanState.value) + " ";
-            }
-            var briState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
-            if (briState != null)
-            {
-                sceneFunctionInfo += briState.value + "%";
-            }
-            var perState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
-            if (perState != null)
-            {
-                sceneFunctionInfo += perState.value + "%";
-            }
-            return sceneFunctionInfo;
         }
 
         /// <summary>

--
Gitblit v1.8.0