From 6eb21769c74cfcd10084f73ff3f212355849a3c7 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期一, 17 五月 2021 15:00:13 +0800
Subject: [PATCH] 2021-5-17-2
---
HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs | 516 ++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 378 insertions(+), 138 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
index c95e0f6..9da0de8 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
@@ -10,6 +10,8 @@
{
FrameLayout bodyView;
VerticalScrolViewLayout contentView;
+ Button btnOnText;
+ Button btnBrightnessText;
Scene scene;
@@ -22,7 +24,6 @@
sceneFunction = fc;
refreshAction = action;
}
-
public void LoadPage()
{
@@ -38,38 +39,67 @@
};
bodyView.AddChidren(contentView);
- //鍔犺浇寮�鍏砇ow
- LoadFunctionRow(sceneFunction.localFunction.trait_on_off);
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff));
- switch (sceneFunction.localFunction.functionType)
+ foreach (var attr in sceneFunction.status)
{
- case FunctionType.AC:
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temperature"));
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode"));
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "fan"));
- break;
- case FunctionType.FloorHeating:
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temperature"));
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode"));
- break;
- case FunctionType.Curtain:
- //鏃犳搷浣�
- break;
- case FunctionType.MotorCurtain:
- case FunctionType.RollingShutter:
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent"));
- break;
- case FunctionType.Relay:
- //鏃犳搷浣�
- break;
- case FunctionType.Dimmer:
- case FunctionType.RGB:
- LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness"));
- break;
+ switch (attr.key)
+ {
+ case FunctionAttributeKey.SetTemp:
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.SetTemp));
+ break;
+ case FunctionAttributeKey.Mode:
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Mode));
+ break;
+ case FunctionAttributeKey.FanSpeed:
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed));
+ break;
+ case FunctionAttributeKey.Percent:
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent));
+ break;
+ case FunctionAttributeKey.Brightness:
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness));
+ break;
+ case FunctionAttributeKey.FadeTime:
+ LoadFunctionRow(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.FadeTime));
+ break;
+ }
}
- //鍔犺浇寤舵椂Row
- LoadDelayRow();
+ //鍔犺浇寮�鍏砇ow
+ //LoadFunctionRow(sceneFunction.localFunction.trait_on_off);
+ //switch (sceneFunction.localFunction.functionType)
+ //{
+ // case SPK.AcStandard:
+ // 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 SPK.FloorHeatStandard:
+ // LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "set_temp"));
+ // LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "mode"));
+ // break;
+ // case SPK.CurtainSwitch:
+ // //鏃犳搷浣�
+ // break;
+ // case SPK.CurtainTrietex:
+ // case SPK.CurtainRoller:
+ // LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "percent"));
+ // break;
+ // case SPK.LightSwitch:
+ // //鏃犳搷浣�
+ // break;
+ // case SPK.LightDimming:
+ // case SPK.LightRGB:
+ // LoadFunctionRow(sceneFunction.localFunction.attributes.Find((obj) => obj.key == "brightness"));
+ // break;
+ //}
+
+ if (DB_ResidenceData.Instance.GatewayType != 0)
+ {
+ //鍔犺浇寤舵椂Row
+ LoadDelayRow();
+ }
var bottomView = new FrameLayout()
{
@@ -99,6 +129,15 @@
btnConfrim.MouseUpEventHandler = (sender, e) =>
{
var temp = scene.functions.Find((obj) => obj.sid == sceneFunction.sid);
+ //if (sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness) != null)
+ //{
+ // try
+ // {
+ // //涓�绔彛涓嶆敮鎸佸紑鍏冲�间笌浜害鍊间竴璧峰鐞嗭紝闇�瑕佸皢寮�鍏冲�肩Щ闄ゆ帀
+ // sceneFunction.status.Remove(sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff));
+ // }
+ // catch { }
+ //}
if (temp != null)
{
temp = sceneFunction;
@@ -107,8 +146,24 @@
{
scene.functions.Add(sceneFunction);
}
- refreshAction();
- this.RemoveFromParent();
+ if (!string.IsNullOrEmpty(scene.userSceneId))
+ {
+ var result = scene.UpdateScene();
+ if (result == DAL.Server.StateCode.SUCCESS)
+ {
+ refreshAction();
+ this.RemoveFromParent();
+ }
+ else
+ {
+ DAL.Server.IMessageCommon.Current.ShowErrorInfoAlter(result);
+ }
+ }
+ else
+ {
+ refreshAction();
+ this.RemoveFromParent();
+ }
};
}
@@ -116,9 +171,9 @@
/// <summary>
/// 鍔犺浇鍔熻兘Row
/// </summary>
- void LoadFunctionRow(FunctionAttributes trait)
+ void LoadFunctionRow(SceneFunctionStatus sceneStatus)
{
- if (trait == null)
+ if (sceneStatus == null)
return;
#region Row code
var row = new FrameLayout()
@@ -127,11 +182,11 @@
BackgroundColor = CSS_Color.MainBackgroundColor,
};
contentView.AddChidren(row);
- if (trait.key != "on_off")
+ if (sceneStatus.key != FunctionAttributeKey.OnOff)
{
row.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
}
- Button btnBrightnessRight = new Button()
+ Button btnRight = new Button()
{
X = Application.GetRealWidth(339),
Gravity = Gravity.CenterVertical,
@@ -139,7 +194,7 @@
Height = Application.GetMinRealAverage(16),
UnSelectedImagePath = "Public/Right.png",
};
- row.AddChidren(btnBrightnessRight);
+ row.AddChidren(btnRight);
var btnFunctionText = new Button()
{
@@ -147,9 +202,17 @@
TextAlignment = TextAlignment.CenterRight,
TextColor = CSS_Color.PromptingColor1,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- Text = trait.GetCurValueText() + trait.uintString
+ Text = sceneStatus.GetValueText() + sceneStatus.GetUintString()
};
row.AddChidren(btnFunctionText);
+ if (sceneStatus.key == FunctionAttributeKey.OnOff)
+ {
+ btnOnText = btnFunctionText;
+ }
+ else if (sceneStatus.key == FunctionAttributeKey.Brightness || sceneStatus.key == FunctionAttributeKey.Percent)
+ {
+ btnBrightnessText = btnFunctionText;
+ }
var btnFunctionName = new Button()
{
@@ -157,62 +220,49 @@
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.SubheadingFontSize,
- Text = trait.name_text
+ Text = sceneStatus.GetNameText()
};
row.AddChidren(btnFunctionName);
btnFunctionName.MouseUpEventHandler = (sender, e) =>
{
- switch (trait.key)
+ switch (sceneStatus.key)
{
- case "on_off":
- LoadEditDialog_OnOff(trait, btnFunctionText);
+ case FunctionAttributeKey.OnOff:
+ LoadEditDialog_OnOff(sceneStatus, btnFunctionText);
break;
- case "brightness":
- LoadEditDialog_Percent(trait, btnFunctionText);
+ case FunctionAttributeKey.Brightness:
+ LoadEditDialog_Percent(sceneStatus, btnFunctionText);
break;
- //case "color":
- // break;
- case "mode":
- LoadEditDialog_FunctionPar(trait, btnFunctionText);
+ case FunctionAttributeKey.Mode:
+ var statusList = new List<string>();
+ var tr = sceneFunction.localFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.Mode);
+ foreach(var t in tr.value)
+ {
+ statusList.Add(t);
+ }
+ LoadEditDialog_FunctionPar(sceneStatus, btnFunctionText,statusList);
break;
- case "fan":
- LoadEditDialog_FunctionPar(trait, btnFunctionText);
+ case FunctionAttributeKey.FanSpeed:
+ var fanStatusList = new List<string>();
+ var tr1 = sceneFunction.localFunction.attributes.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed);
+ foreach (var t in tr1.value)
+ {
+ fanStatusList.Add(t);
+ }
+ LoadEditDialog_FunctionPar(sceneStatus, btnFunctionText, fanStatusList);
break;
- case "set_temperature":
- LoadEditDialog_Temp(trait, btnFunctionText);
+ case FunctionAttributeKey.SetTemp:
+ LoadEditDialog_Temp(sceneStatus, btnFunctionText);
break;
- case "delay":
+ case FunctionAttributeKey.FadeTime:
+
break;
case "cct":
break;
- //case "fade_time":
- case "percent":
- LoadEditDialog_Percent(trait, btnFunctionText);
+ case FunctionAttributeKey.Percent:
+ LoadEditDialog_Percent(sceneStatus, btnFunctionText);
break;
- //case "lock":
- //case "ico":
- //case "swing":
- //case "set_ point":
- //case "pm25":
- //case "volume":
- //case "vol_step":
- //case "source":
- //case "treble":
- //case "bass":
- //case "playlist":
- //case "song_name":
- //case "current_status":
- //case "enable":
- //case "lux":
- //case "adjust_value":
- //case "range":
- //case "humidity":
- //case "type":
- //case "state":
- //case "sensitivity":
- //case "pm25value":
}
- //LoadEditDialog_Temp(trait, btnFunctionText);
};
#endregion
@@ -250,7 +300,7 @@
TextAlignment = TextAlignment.CenterRight,
TextColor = CSS_Color.PromptingColor1,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- Text = scene.delayText
+ Text = new Scene() { delay = sceneFunction.delay }.GetDelayText()
};
delayRow.AddChidren(btnDelayInfo);
@@ -266,14 +316,22 @@
btnSceneDelayTitle.MouseUpEventHandler = (sender, e) => {
- new PublicAssmebly().SetSceneDelayDialog(scene, btnDelayInfo);
+ Action<string> action = (obj) => {
+ sceneFunction.delay = obj;
+ btnDelayInfo.Text = new Scene() { delay = sceneFunction.delay }.GetDelayText();
+ };
+ 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,sceneFunction.delay);
};
-
-
#endregion
}
+
#endregion
#region 灞炴�ч�夋嫨寮圭獥
@@ -282,7 +340,7 @@
/// </summary>
/// <param name="function"></param>
/// <param name="btn"></param>
- void LoadEditDialog_OnOff(FunctionAttributes trait, Button btn)
+ void LoadEditDialog_OnOff(SceneFunctionStatus trait, Button btn)
{
Dialog dialog = new Dialog();
@@ -320,7 +378,7 @@
SelectedTextColor = CSS_Color.MainColor,
TextSize = CSS_FontSize.SubheadingFontSize,
TextID = StringId.On,
- IsSelected = trait.curValue.ToString() == "on"
+ IsSelected = trait.value.ToString() == "on"
};
optionView.AddChidren(btnOn);
@@ -334,7 +392,7 @@
SelectedTextColor = CSS_Color.MainColor,
TextSize = CSS_FontSize.SubheadingFontSize,
TextID = StringId.OFF,
- IsSelected = trait.curValue.ToString() == "off"
+ IsSelected = trait.value.ToString() == "off"
};
optionView.AddChidren(btnOff);
@@ -363,13 +421,43 @@
};
btnOn.MouseUpEventHandler = (sender, e) => {
dialog.Close();
- trait.curValue = "on";
- btn.Text = trait.GetCurValueText() + trait.uintString;
+ trait.value = "on";
+ sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "on";
+ btn.Text = trait.GetValueText() + trait.GetUintString();
+
+ var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
+ if (temp == null)
+ {
+ temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
+ }
+ if (temp != null)
+ {
+ if (temp.value == "0")
+ {
+ temp.value = "100";
+ }
+ btnBrightnessText.Text = temp.GetValueText() + "%";
+ }
};
btnOff.MouseUpEventHandler = (sender,e) =>{
dialog.Close();
- trait.curValue = "off";
- btn.Text= trait.GetCurValueText() + trait.uintString;
+ trait.value = "off";
+ sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "off";
+ btn.Text= trait.GetValueText() + trait.GetUintString();
+
+ var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
+ if(temp == null)
+ {
+ temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
+ }
+ if (temp != null)
+ {
+ if (temp.value != "0")
+ {
+ temp.value = "0";
+ }
+ btnBrightnessText.Text = temp.GetValueText() + "%";
+ }
};
}
@@ -379,8 +467,12 @@
/// </summary>
/// <param name="function"></param>
/// <param name="btn"></param>
- void LoadEditDialog_Temp(FunctionAttributes trait, Button btn)
+ void LoadEditDialog_Temp(SceneFunctionStatus trait, Button btn)
{
+ double temp = 16;
+ double.TryParse(trait.value, out temp);
+ trait.value = temp.ToString();
+
List<string> pickerItems = new List<string>();
if(trait == null)
{
@@ -446,33 +538,19 @@
Height = Application.GetRealHeight(210),
Radius = (uint)Application.GetRealWidth(12),
};
- if(trait!=null)
+ for (int i = 16; i <= 32; i += 1)
{
- if (trait.data_type == "float")
- {
- for (double i = trait.min; i <= trait.max; i += 0.5)
- {
- pickerItems.Add(i.ToString() + trait.uintString);
- }
- }
- else
- {
- for (int i = trait.min; i <= trait.max; i += 1)
- {
- pickerItems.Add(i.ToString() + trait.uintString);
- }
- }
- }else
- {
- for (int i = 16; i <= 32; i += 1)
- {
- pickerItems.Add(i.ToString() + trait.uintString);
- }
+ pickerItems.Add(i.ToString() + trait.GetUintString());
}
uIPickerView.setNPicker(pickerItems, null, null);
optionBaseView.AddChidren(uIPickerView);
- uIPickerView.setCurrentItems(pickerItems.IndexOf(trait.curValue.ToString()), 4, 5);
- string selectItem = trait.curValue.ToString() + trait.uintString;
+ uIPickerView.setCurrentItems(pickerItems.IndexOf(trait.value.ToString()), 4, 5);
+
+ string selectItem = pickerItems[0];
+ if (pickerItems.Contains(trait.value + trait.GetUintString()))
+ {
+ selectItem = trait.value.ToString() + trait.GetUintString();
+ }
dialog.Show();
@@ -489,18 +567,18 @@
btnConfrim.MouseUpEventHandler = (sender, e) => {
dialog.Close();
btn.Text = selectItem;
- trait.curValue = selectItem.Replace(trait.uintString,"");
+ //sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.value.ToString() ;
+ trait.value = selectItem.Replace(trait.GetUintString(),"");
};
}
-
/// <summary>
/// 鍔犺浇浜害閫夋嫨寮圭獥
/// </summary>
/// <param name="function"></param>
/// <param name="btn"></param>
- void LoadEditDialog_Percent(FunctionAttributes trait, Button btn)
+ void LoadEditDialog_Percent(SceneFunctionStatus trait, Button btn)
{
if (trait == null)
{
@@ -539,13 +617,12 @@
optionBaseView.AddChidren(topView);
topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
-
var btnTitle = new Button()
{
Gravity = Gravity.CenterHorizontal,
TextAlignment = TextAlignment.Center,
Width = Application.GetRealWidth(100),
- Text = trait.name_text,
+ Text = trait.GetNameText(),
IsBold = true,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.SubheadingFontSize,
@@ -573,8 +650,6 @@
};
topView.AddChidren(btnConfrim);
-
-
Button btnMinusSignIcon = new Button()
{
X = Application.GetRealWidth(26),
@@ -598,7 +673,7 @@
ProgressTextColor = CSS_Color.FirstLevelTitleColor,
ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
MaxValue = 100,
- Progress = trait.curValue.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32( trait.curValue),
+ Progress = trait.value.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32(trait.value.Replace("{}", "")),
SeekBarPadding = Application.GetRealWidth(20),
};
optionBaseView.AddChidren(controlBar);
@@ -613,35 +688,199 @@
};
optionBaseView.AddChidren(btnPlusSgnIcon);
- btnMinusSignIcon.MouseUpEventHandler = (sender, e) => {
+ btnMinusSignIcon.MouseUpEventHandler = (sender, e) =>
+ {
controlBar.Progress--;
};
- btnPlusSgnIcon.MouseUpEventHandler = (sender, e) => {
+ btnPlusSgnIcon.MouseUpEventHandler = (sender, e) =>
+ {
controlBar.Progress++;
};
-
dialog.Show();
- pView.MouseUpEventHandler = (sender, e) => {
+ pView.MouseUpEventHandler = (sender, e) =>
+ {
dialog.Close();
};
- btnCancel.MouseUpEventHandler = (sender, e) => {
+ btnCancel.MouseUpEventHandler = (sender, e) =>
+ {
dialog.Close();
};
- btnConfrim.MouseUpEventHandler = (sender, e) => {
+ btnConfrim.MouseUpEventHandler = (sender, e) =>
+ {
dialog.Close();
- trait.curValue = controlBar.Progress;
- btn.Text = trait.curValue + trait.uintString;
+ trait.value = controlBar.Progress.ToString();
+ btn.Text = trait.value + trait.GetUintString();
+
+ var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff);
+ if (temp != null)
+ {
+ if (controlBar.Progress > 0)
+ {
+ temp.value = "on";
+ }
+ else
+ {
+ temp.value = "off";
+ }
+ btnOnText.Text = temp.GetValueText();
+ }
};
}
+
+ /// <summary>
+ /// 鍔犺浇鍙樺寲閫熷害閫夋嫨寮圭獥
+ /// </summary>
+ /// <param name="function"></param>
+ /// <param name="btn"></param>
+ void LoadEditDialog_FadeTime(SceneFunctionStatus trait, Button btn)
+ {
+ if (trait == null)
+ {
+ return;
+ }
+
+ Dialog dialog = new Dialog();
+
+ var pView = new FrameLayout()
+ {
+ BackgroundColor = CSS_Color.DialogTransparentColor1,
+ };
+ dialog.AddChidren(pView);
+
+ var optionBaseView = new FrameLayout()
+ {
+ Y = Application.GetRealHeight(467),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(180),
+ AnimateSpeed = 0.3f,
+ Animate = Animate.DownToUp,
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ pView.AddChidren(optionBaseView);
+
+ var topView = new FrameLayout()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(40),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ optionBaseView.AddChidren(topView);
+ topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+ var btnTitle = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ TextAlignment = TextAlignment.Center,
+ Width = Application.GetRealWidth(100),
+ Text = trait.GetNameText(),
+ IsBold = true,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ };
+ topView.AddChidren(btnTitle);
+
+ var btnCancel = new Button()
+ {
+ X = Application.GetRealWidth(21),
+ Width = Application.GetRealWidth(100),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.Cancel,
+ };
+ topView.AddChidren(btnCancel);
+
+ var btnConfrim = new Button()
+ {
+ Width = Application.GetRealWidth(320),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.Confirm,
+ };
+ topView.AddChidren(btnConfrim);
+
+ Button btnMinusSignIcon = new Button()
+ {
+ X = Application.GetRealWidth(26),
+ Y = Application.GetRealHeight(118),
+ Width = Application.GetMinRealAverage(24),
+ Height = Application.GetMinRealAverage(24),
+ Text = "0s",
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ optionBaseView.AddChidren(btnMinusSignIcon);
+
+ DiyImageSeekBar controlBar = new DiyImageSeekBar()
+ {
+ X = btnMinusSignIcon.Right + Application.GetRealWidth(12),
+ Y = Application.GetRealHeight(100),//414,璁捐鏁版嵁
+ Width = Application.GetRealWidth(220),
+ Height = Application.GetRealHeight(54),
+ SeekBarViewHeight = Application.GetRealHeight(8),
+ ThumbImagePath = "Public/ThumbImage.png",
+ ThumbImageHeight = Application.GetRealHeight(54),
+ ProgressBarColor = CSS_Color.MainColor,
+ ProgressTextColor = CSS_Color.FirstLevelTitleColor,
+ ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ MaxValue = 100,
+ Progress = trait.value.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32(trait.value.Replace("{}", "")),
+ SeekBarPadding = Application.GetRealWidth(20),
+ };
+ optionBaseView.AddChidren(controlBar);
+
+ Button btnPlusSgnIcon = new Button()
+ {
+ X = controlBar.Right + Application.GetRealWidth(12),
+ Y = Application.GetRealHeight(118),
+ Width = Application.GetMinRealAverage(24),
+ Height = Application.GetMinRealAverage(24),
+ Text = "10s",
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ optionBaseView.AddChidren(btnPlusSgnIcon);
+
+ btnMinusSignIcon.MouseUpEventHandler = (sender, e) =>
+ {
+ controlBar.Progress--;
+ };
+ btnPlusSgnIcon.MouseUpEventHandler = (sender, e) =>
+ {
+ controlBar.Progress++;
+ };
+
+ dialog.Show();
+ pView.MouseUpEventHandler = (sender, e) =>
+ {
+ dialog.Close();
+ };
+
+ btnCancel.MouseUpEventHandler = (sender, e) =>
+ {
+ dialog.Close();
+ };
+ btnConfrim.MouseUpEventHandler = (sender, e) =>
+ {
+ dialog.Close();
+ trait.value = controlBar.Progress.ToString();
+ btn.Text = trait.value + trait.GetUintString();
+ };
+ }
/// <summary>
/// 鍔犺浇鍔熻兘灞炴�ф暟鎹�夋嫨寮圭獥
/// </summary>
- void LoadEditDialog_FunctionPar(FunctionAttributes trait, Button btn)
+ void LoadEditDialog_FunctionPar(SceneFunctionStatus trait, Button btn,List<string> statusList)
{
Button lastButton = new Button();
var lastData = "";
@@ -656,10 +895,10 @@
var optionBaseView = new FrameLayout()
{
- Y = Application.GetRealHeight(579 - 50 * trait.value.Count),
+ Y = Application.GetRealHeight(579 - 50 * statusList.Count),
Gravity = Gravity.CenterHorizontal,
Width = Application.GetRealWidth(343),
- Height = Application.GetRealHeight(50 * trait.value.Count + 50),
+ Height = Application.GetRealHeight(50 * statusList.Count + 50),
AnimateSpeed = 0.3f,
Animate = Animate.DownToUp,
BackgroundColor = CSS_Color.MainBackgroundColor,
@@ -682,7 +921,7 @@
Gravity = Gravity.CenterHorizontal,
TextAlignment = TextAlignment.Center,
Width = Application.GetRealWidth(100),
- Text = trait.name_text,
+ Text = trait.GetNameText(),
IsBold = true,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.SubheadingFontSize,
@@ -710,7 +949,7 @@
};
topView.AddChidren(btnConfrim);
int hei = 1;
- foreach (var m in trait.value)
+ foreach (var m in statusList)
{
var row = new FrameLayout()
{
@@ -718,7 +957,7 @@
Height = Application.GetRealHeight(50),
};
optionBaseView.AddChidren(row);
- if (trait.value.Count > hei)
+ if (statusList.Count > hei)
{
optionBaseView.AddChidren(new Button()
{
@@ -742,7 +981,7 @@
};
row.AddChidren(btnChoose);
- if (trait.curValue.ToString() == m)
+ if (trait.value == m)
{
lastButton = btnChoose;
btnChoose.IsSelected = true;
@@ -754,7 +993,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
Tag = m,
- Text = trait.GetValueText(m)
+ Text = trait.GetValueText()
};
row.AddChidren(btnPropertyTitle);
@@ -784,7 +1023,8 @@
};
btnConfrim.MouseUpEventHandler = (sender, e) => {
dialog.Close();
- trait.curValue = lastData;
+ trait.value = lastData;
+ //sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ;
btn.Text = lastText;
};
--
Gitblit v1.8.0