From 09dfbfd9b77ec887c17b10f15799a1d3f56e4e17 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 15 十二月 2020 12:04:42 +0800
Subject: [PATCH] 2020-12-15-1

---
 HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs |   51 ++++++++++++++++++++++++++++++---------------------
 1 files changed, 30 insertions(+), 21 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
index 4504b63..d562d05 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
@@ -14,12 +14,14 @@
         Scene scene;
 
         Action refreshAction;
-        Function function;
-        public SceneFunctionInfoEditPage(Scene s,Function fc,Action action)
+        SceneFunction sceneFunction;
+        //Function localFunction;
+        public SceneFunctionInfoEditPage(Scene s, SceneFunction fc,Action action)
         {
             bodyView = this;
             scene = s;
-            function = fc;
+            //localFunction = fc;
+            sceneFunction = fc;
             refreshAction = action;
         }
 
@@ -28,7 +30,7 @@
         {
             bodyView.BackgroundColor = CSS_Color.BackgroundColor;
 
-            new TopViewDiv(bodyView, function.name).LoadTopView();
+            new TopViewDiv(bodyView, sceneFunction.localFunction.name).LoadTopView();
 
             contentView = new VerticalScrolViewLayout()
             {
@@ -39,32 +41,32 @@
             bodyView.AddChidren(contentView);
 
             //鍔犺浇寮�鍏砇ow
-            LoadFunctionRow(function.trait_on_off);
+            LoadFunctionRow(sceneFunction.localFunction.trait_on_off);
 
-            switch (function.functionType)
+            switch (sceneFunction.localFunction.functionType)
             {
                 case FunctionType.AC:
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "set_temperature"));
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "mode"));
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "fan"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "fan"));
                     break;
                 case FunctionType.FloorHeating:
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "set_temperature"));
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "mode"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode"));
                     break;
                 case FunctionType.Curtain:
                     //鏃犳搷浣�
                     break;
                 case FunctionType.MotorCurtain:
                 case FunctionType.RollingShutter:
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "percent"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent"));
                     break;
                 case FunctionType.Relay:
                     //鏃犳搷浣�
                     break;
                 case FunctionType.Dimmer:
                 case FunctionType.RGB:
-                    LoadFunctionRow(function.function.Find((obj) => obj.key == "brightness"));
+                    LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness"));
                     break;
             }
 
@@ -98,15 +100,17 @@
 
             btnConfrim.MouseUpEventHandler = (sender, e) =>
             {
-                var temp = scene.sceneFunctionList.Find((obj) => obj.sid == function.sid);
-                if (temp!=null)
+                //var temp = localFunction.ConvertSceneFunction();
+                var temp = scene.functions.Find((obj) => obj.sid == sceneFunction.sid);
+                if (temp != null)
                 {
-                    temp = function;
+                    temp = sceneFunction;
                 }
                 else
                 {
-                    scene.sceneFunctionList.Add(function);
+                    scene.functions.Add(sceneFunction);
                 }
+                scene.SaveSceneData(true);
                 refreshAction();
                 this.RemoveFromParent();
             };
@@ -178,7 +182,7 @@
                     case "fan":
                         LoadEditDialog_FunctionPar(trait, btnFunctionText);
                         break;
-                    case "set_temperature":
+                    case "set_temp":
                         LoadEditDialog_Temp(trait, btnFunctionText);
                         break;
                     case "delay":
@@ -266,7 +270,7 @@
 
 
             btnSceneDelayTitle.MouseUpEventHandler = (sender, e) => {
-                new PublicAssmebly().SetSceneDelayDialog(function, btnDelayInfo);
+                new PublicAssmebly().SetSceneDelayDialog(scene, btnDelayInfo);
             };
 
 
@@ -320,7 +324,7 @@
                 SelectedTextColor = CSS_Color.MainColor,
                 TextSize = CSS_FontSize.SubheadingFontSize,
                 TextID = StringId.On,
-                IsSelected = function.trait_on_off.curValue.ToString() == "on"
+                IsSelected = trait.curValue.ToString() == "on"
             };
             optionView.AddChidren(btnOn);
 
@@ -334,7 +338,7 @@
                 SelectedTextColor = CSS_Color.MainColor,
                 TextSize = CSS_FontSize.SubheadingFontSize,
                 TextID = StringId.OFF,
-                IsSelected = function.trait_on_off.curValue.ToString() == "off"
+                IsSelected = trait.curValue.ToString() == "off"
             };
             optionView.AddChidren(btnOff);
 
@@ -364,11 +368,13 @@
             btnOn.MouseUpEventHandler = (sender, e) => {
                 dialog.Close();
                 trait.curValue = "on";
+                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "on";
                 btn.Text = trait.GetCurValueText() + trait.uintString;
             };
             btnOff.MouseUpEventHandler = (sender,e) =>{
                 dialog.Close();
                 trait.curValue = "off";
+                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "off";
                 btn.Text= trait.GetCurValueText() + trait.uintString;
             };
 
@@ -489,6 +495,7 @@
             btnConfrim.MouseUpEventHandler = (sender, e) => {
                 dialog.Close();
                 btn.Text = selectItem;
+                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ;
                 trait.curValue = selectItem.Replace(trait.uintString,"");
             };
 
@@ -632,6 +639,7 @@
             btnConfrim.MouseUpEventHandler = (sender, e) => {
                 dialog.Close();
                 trait.curValue = controlBar.Progress;
+                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ;
                 btn.Text = trait.curValue + trait.uintString;
             };
         }
@@ -785,6 +793,7 @@
             btnConfrim.MouseUpEventHandler = (sender, e) => {
                 dialog.Close();
                 trait.curValue = lastData;
+                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ;
                 btn.Text = lastText;
             };
 

--
Gitblit v1.8.0