From cf3d4880046912f8b46c9e54769986a179faa26c Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期四, 08 四月 2021 18:01:13 +0800
Subject: [PATCH] 2021-04-08 1.更新音箱功能
---
HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs | 157 +++++++++++++++++----------------------------------
1 files changed, 53 insertions(+), 104 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs
index a8c1f3d..4f9c820 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneAddPage.cs
@@ -196,7 +196,7 @@
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
- TextID = StringId.BelongToZone,
+ TextID = StringId.LocationManagement,
};
belongToZoneRow.AddChidren(btnBelongToTitle);
@@ -217,7 +217,7 @@
TextAlignment = TextAlignment.CenterRight,
TextColor = CSS_Color.PromptingColor1,
TextSize = CSS_FontSize.TextFontSize,
- Text = scene.GetRoomListName() == "" ? Language.StringByID(StringId.WholeHouseScene) : scene.GetRoomListName()
+ Text = scene.GetRoomListName() == "" ? Language.StringByID(StringId.WholeZone) : scene.GetRoomListName()
};
belongToZoneRow.AddChidren(btnZoneName);
@@ -255,7 +255,7 @@
TextAlignment = TextAlignment.CenterRight,
TextColor = CSS_Color.PromptingColor1,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- Text = FunctionList.List.GetDelayText(scene.delay.ToString())
+ Text = scene.GetDelayText()
};
sceneDelayRow.AddChidren(btnSceneDelayInfo);
@@ -270,14 +270,18 @@
};
sceneDelayRow.AddChidren(btnSceneDelayTitle);
-
btnSceneDelayTitle.MouseUpEventHandler = (sender, e) =>
{
Action<string> action = (obj) => {
scene.delay = obj;
- btnSceneDelayInfo.Text = FunctionList.List.GetDelayText(obj);
+ btnSceneDelayInfo.Text = scene.GetDelayText();
};
- new PublicAssmebly().SetSceneDelayDialog(action ,scene.delay);
+ 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(items, action ,scene.delay);
};
contentView.AddChidren(new Button()
@@ -312,7 +316,7 @@
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.MainColor,
TextSize = CSS_FontSize.SubheadingFontSize,
- TextID = StringId.AddFunction,
+ TextID = StringId.FunctionManagement,
IsBold = true,
};
addFunctionRow.AddChidren(btnAddFunctionTitle);
@@ -423,7 +427,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
{
@@ -477,7 +481,6 @@
row.AddRightView(btnDelSceneFunction);
btnDelSceneFunction.MouseUpEventHandler = (sender, e) => {
scene.functions.Remove(scenefunction);
- scene.SaveSceneData(true);
row.RemoveFromParent();
functionListView.Height = Application.GetRealWidth(65 * scene.functions.Count);
};
@@ -500,113 +503,35 @@
}
}
- if (sceneFunction.status.Count == 0)
- {
- return sceneFunctionInfo += Language.StringByID(StringId.Open);
- }
+ 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);
+ sceneFunctionInfo += modeState.GetValueText();
}
if (tempState != null)
{
- sceneFunctionInfo += FunctionList.List.GetValueText(tempState.key, tempState.value);
- sceneFunctionInfo += FunctionList.List.GetUintString(tempState.key);
+ sceneFunctionInfo += tempState.GetValueText();
+ sceneFunctionInfo += tempState.GetUintString();
}
if (fanState != null)
{
- sceneFunctionInfo += FunctionList.List.GetValueText(fanState.key, fanState.value);
+ sceneFunctionInfo += tempState.GetValueText();
}
var briState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
if (briState != null)
{
- sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness").curValue.ToString() + "%";
- }
- else
- {
- sceneFunctionInfo += Language.StringByID(StringId.Open);
+ sceneFunctionInfo += briState.value + "%";
}
var perState = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
if (perState != null)
{
- sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness").curValue.ToString() + "%";
- }
- else
- {
- sceneFunctionInfo += Language.StringByID(StringId.Open);
+ sceneFunctionInfo += perState.value + "%";
}
- //FunctionAttributes perTrait;
-
- //switch (sceneFunction.localFunction.functionType)
- //{
- //case FunctionType.AC:
- //var acMode = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Mode);
- //var acTemp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.SetTemp);
- //var acFan = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed);
- //if (acMode != null)
- //{
- // sceneFunctionInfo += FunctionList.List.GetValueText(acMode.key, acMode.value);
- //}
- //if (acTemp != null)
- //{
- // sceneFunctionInfo += FunctionList.List.GetValueText(acTemp.key, acTemp.value);
- // sceneFunctionInfo += FunctionList.List.GetUintString(acTemp.key);
- //}
- //if (acFan!=null)
- //{
- // sceneFunctionInfo += FunctionList.List.GetValueText(acFan.key, acFan.value);
- //}
- // break;
- //case FunctionType.FloorHeating:
- //sceneFunctionInfo += sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode").GetCurValueText();
- //sceneFunctionInfo += " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp").curValue.ToString() +
- // sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp").uintString;
- //break;
- //case FunctionType.Dimmer:
- //perTrait = sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness");
- //if (perTrait != null)
- //{
- // sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness").curValue.ToString() + "%";
- //}
- //else
- //{
- // sceneFunctionInfo += Language.StringByID(StringId.Open);
- //}
- //break;
- //case FunctionType.Relay:
- // sceneFunctionInfo += Language.StringByID(StringId.Open);
- // break;
- //case FunctionType.RGB:
- // perTrait = sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent");
- // if (perTrait != null)
- // {
- // sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness").curValue.ToString() + "%";
- // }
- // else
- // {
- // sceneFunctionInfo += Language.StringByID(StringId.Open);
- // }
- // break;
- //case FunctionType.Curtain:
- // sceneFunctionInfo += Language.StringByID(StringId.Open);
- // break;
- //case FunctionType.MotorCurtain:
- // perTrait = sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent");
- // if (perTrait != null)
- // {
- // sceneFunctionInfo += Language.StringByID(StringId.Open) + " " + sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent").curValue.ToString() + "%";
- // }
- // else
- // {
- // sceneFunctionInfo += Language.StringByID(StringId.Open);
- // }
- // break;
- //}
return sceneFunctionInfo;
}
@@ -844,6 +769,7 @@
pictureOptionView.Parent.RemoveFromParent();
Action<string> action = (obj) => {
scene.ImagePath = obj;
+ addSceneImageView.ImageBytes = null;//瑙e喅鏈塈mageBytes涓嶅姞杞絀magePath
addSceneImageView.ImagePath = scene.ImagePath;
};
@@ -902,17 +828,40 @@
return;
}
}
- var result = scene.AddScene();
- if (result == StateCode.SUCCESS)
+ var waitPage = new Loading();
+ MainPage.BaseView.AddChidren(waitPage);
+ waitPage.Start(Language.StringByID(StringId.PleaseWait));
+ new System.Threading.Thread(() =>
{
- FunctionList.List.scenes.Add(scene);
- backAction();
- this.RemoveFromParent();
- }
- else
- {
- IMessageCommon.Current.ShowErrorInfoAlter(result);
- }
+ try
+ {
+ var serverScene = new Scene();
+ var result = FunctionList.List.AddScene(scene, out serverScene);
+ Application.RunOnMainThread(() =>
+ {
+ if (result == StateCode.SUCCESS)
+ {
+ scene = serverScene;
+ FunctionList.List.scenes.Add(scene);
+ backAction();
+ RemoveFromParent();
+ }
+ else
+ {
+ IMessageCommon.Current.ShowErrorInfoAlter(result);
+ }
+ });
+ }
+ catch { }
+ finally
+ {
+ Application.RunOnMainThread(() => {
+ waitPage.Hide();
+ waitPage.RemoveFromParent();
+ });
+ }
+ })
+ { IsBackground = true, Priority = ThreadPriority.AboveNormal }.Start();
};
}
--
Gitblit v1.8.0