From 43b0d5870d528f23ecd6aeceb6cfd4325188b46f Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期四, 01 七月 2021 15:50:43 +0800 Subject: [PATCH] Revert "1" --- HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs | 531 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 386 insertions(+), 145 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs index d562d05..ff17320 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs @@ -10,21 +10,20 @@ { FrameLayout bodyView; VerticalScrolViewLayout contentView; + Button btnOnText; + Button btnBrightnessText; Scene scene; Action refreshAction; SceneFunction sceneFunction; - //Function localFunction; public SceneFunctionInfoEditPage(Scene s, SceneFunction fc,Action action) { bodyView = this; scene = s; - //localFunction = fc; sceneFunction = fc; refreshAction = action; } - public void LoadPage() { @@ -40,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_temp")); - 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_temp")); - 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() { @@ -100,8 +128,17 @@ btnConfrim.MouseUpEventHandler = (sender, e) => { - //var temp = localFunction.ConvertSceneFunction(); 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; @@ -110,9 +147,24 @@ { scene.functions.Add(sceneFunction); } - scene.SaveSceneData(true); - 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(); + } }; } @@ -120,9 +172,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() @@ -131,11 +183,20 @@ 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() + else + { + if(sceneStatus.value == "stop") + { + sceneStatus.value = "on"; + } + } + Button btnRight = new Button() { X = Application.GetRealWidth(339), Gravity = Gravity.CenterVertical, @@ -143,7 +204,7 @@ Height = Application.GetMinRealAverage(16), UnSelectedImagePath = "Public/Right.png", }; - row.AddChidren(btnBrightnessRight); + row.AddChidren(btnRight); var btnFunctionText = new Button() { @@ -151,9 +212,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() { @@ -161,62 +230,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_temp": - 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 @@ -254,7 +310,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); @@ -270,14 +326,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(action, sceneFunction.delay); }; - - #endregion } + #endregion #region 灞炴�ч�夋嫨寮圭獥 @@ -286,7 +350,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(); @@ -324,7 +388,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); @@ -338,7 +402,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); @@ -367,15 +431,43 @@ }; btnOn.MouseUpEventHandler = (sender, e) => { dialog.Close(); - trait.curValue = "on"; + trait.value = "on"; sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "on"; - btn.Text = trait.GetCurValueText() + trait.uintString; + 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"; + trait.value = "off"; sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "off"; - btn.Text= trait.GetCurValueText() + trait.uintString; + 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() + "%"; + } }; } @@ -385,8 +477,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) { @@ -452,33 +548,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(); @@ -495,19 +577,18 @@ 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,""); + //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) { @@ -546,13 +627,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, @@ -580,8 +660,6 @@ }; topView.AddChidren(btnConfrim); - - Button btnMinusSignIcon = new Button() { X = Application.GetRealWidth(26), @@ -605,7 +683,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); @@ -620,36 +698,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; - sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ; - 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 = ""; @@ -664,10 +905,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, @@ -690,7 +931,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, @@ -718,7 +959,7 @@ }; topView.AddChidren(btnConfrim); int hei = 1; - foreach (var m in trait.value) + foreach (var m in statusList) { var row = new FrameLayout() { @@ -726,7 +967,7 @@ Height = Application.GetRealHeight(50), }; optionBaseView.AddChidren(row); - if (trait.value.Count > hei) + if (statusList.Count > hei) { optionBaseView.AddChidren(new Button() { @@ -750,7 +991,7 @@ }; row.AddChidren(btnChoose); - if (trait.curValue.ToString() == m) + if (trait.value == m) { lastButton = btnChoose; btnChoose.IsSelected = true; @@ -762,7 +1003,7 @@ TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.TextFontSize, Tag = m, - Text = trait.GetValueText(m) + Text = trait.GetValueText() }; row.AddChidren(btnPropertyTitle); @@ -792,8 +1033,8 @@ }; btnConfrim.MouseUpEventHandler = (sender, e) => { dialog.Close(); - trait.curValue = lastData; - sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ; + trait.value = lastData; + //sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.curValue.ToString() ; btn.Text = lastText; }; -- Gitblit v1.8.0