wxr
2020-12-19 792ca2a402feb952ef890d653f2e049c1230baf1
HDL_ON/UI/UI2/3-Intelligence/Scene/SetSceneFunctionInfoPage.cs
@@ -11,6 +11,7 @@
        FrameLayout bodyView;
        VerticalScrolViewLayout contentView;
        Button btnOnText;
        Button btnBrightnessText;
        Scene scene;
@@ -122,6 +123,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;
@@ -142,6 +152,11 @@
                    {
                        DAL.Server.IMessageCommon.Current.ShowErrorInfoAlter(result);
                    }
                }
                else
                {
                    refreshAction();
                    this.RemoveFromParent();
                }
            };
        }
@@ -165,7 +180,7 @@
            {
                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,
@@ -173,7 +188,7 @@
                Height = Application.GetMinRealAverage(16),
                UnSelectedImagePath = "Public/Right.png",
            };
            row.AddChidren(btnBrightnessRight);
            row.AddChidren(btnRight);
            var btnFunctionText = new Button()
            {
@@ -185,7 +200,13 @@
            };
            row.AddChidren(btnFunctionText);
            if (sceneStatus.key == FunctionAttributeKey.OnOff)
            {
                btnOnText = btnFunctionText;
            }
            else if (sceneStatus.key == FunctionAttributeKey.Brightness)
            {
                btnBrightnessText = btnFunctionText;
            }
            var btnFunctionName = new Button()
            {
@@ -272,7 +293,7 @@
                TextAlignment = TextAlignment.CenterRight,
                TextColor = CSS_Color.PromptingColor1,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                Text = scene.delayText
                Text = FunctionList.List.GetDelayText( sceneFunction.delay)
            };
            delayRow.AddChidren(btnDelayInfo);
@@ -288,10 +309,12 @@
            btnSceneDelayTitle.MouseUpEventHandler = (sender, e) => {
                new PublicAssmebly().SetSceneDelayDialog(scene, btnDelayInfo);
                Action<string> action = (obj) => {
                    sceneFunction.delay = obj;
                    btnDelayInfo.Text = FunctionList.List.GetDelayText(obj);
                };
                new PublicAssmebly().SetSceneDelayDialog(action,sceneFunction.delay);
            };
            #endregion
@@ -388,12 +411,32 @@
                trait.value = "on";
                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "on";
                btn.Text = FunctionList.List.GetValueText(trait.key, trait.value) + FunctionList.List.GetUintString(trait.key);
                var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
                if (temp != null)
                {
                    if (temp.value == "0")
                    {
                        temp.value = "100";
                    }
                    btnBrightnessText.Text = FunctionList.List.GetValueText(temp.key, temp.value);
                }
            };
            btnOff.MouseUpEventHandler = (sender,e) =>{
                dialog.Close();
                trait.value = "off";
                sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = "off";
                btn.Text= FunctionList.List.GetValueText(trait.key,trait.value) + FunctionList.List.GetUintString(trait.key);
                var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
                if (temp != null)
                {
                    if (temp.value != "0")
                    {
                        temp.value = "0";
                    }
                    btnBrightnessText.Text = FunctionList.List.GetValueText(temp.key, temp.value);
                }
            };
        }
@@ -405,6 +448,10 @@
        /// <param name="btn"></param>
        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)
            {
@@ -477,7 +524,12 @@
            uIPickerView.setNPicker(pickerItems, null, null);
            optionBaseView.AddChidren(uIPickerView);
            uIPickerView.setCurrentItems(pickerItems.IndexOf(trait.value.ToString()), 4, 5);
            string selectItem = trait.value.ToString() + FunctionList.List.GetUintString(trait.key);
            string selectItem = pickerItems[0];
            if (pickerItems.Contains(trait.value + FunctionList.List.GetUintString(trait.key)))
            {
                selectItem = trait.value.ToString() + FunctionList.List.GetUintString(trait.key);
            }
            dialog.Show();
@@ -600,7 +652,7 @@
                ProgressTextColor = CSS_Color.FirstLevelTitleColor,
                ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                MaxValue = 100,
                Progress = trait.value.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32( trait.value.Replace("{}","")),
                Progress = trait.value.ToString().Replace("{}", "") == "" ? 0 : Convert.ToInt32(trait.value.Replace("{}", "")),
                SeekBarPadding = Application.GetRealWidth(20),
            };
            optionBaseView.AddChidren(controlBar);
@@ -615,39 +667,47 @@
            };
            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.value = controlBar.Progress.ToString();
                btn.Text = trait.value + FunctionList.List.GetUintString(trait.key);
                if (controlBar.Progress > 0)
                var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff);
                if (temp != null)
                {
                    var temp = sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff);
                    if (temp != null)
                    if (controlBar.Progress > 0)
                    {
                        temp.value = "on";
                        btnOnText.Text = FunctionList.List.GetValueText(temp.key, temp.value);
                    }
                    else
                    {
                        temp.value = "off";
                    }
                    btnOnText.Text = FunctionList.List.GetValueText(temp.key, temp.value);
                }
            };
        }
        /// <summary>
        /// 加载功能属性数据选择弹窗
        /// </summary>