wxr
2023-05-06 f8343a2e765eefe10c8a0d6bdd6db65b0cf0321c
HDL_ON/UI/UI2/FuntionControlView/Light/DimmerPageBLL.cs
@@ -21,13 +21,13 @@
                    if (updataTemp.spk == bodyView.function.spk && updataTemp.sid == bodyView.function.sid)
                    {
                        bodyView.btnBrightnessText.Text = updataTemp.GetAttrState(FunctionAttributeKey.Brightness) + "%";
                        bodyView.btnBrightnessText.Y = ((100 - Convert.ToInt32( updataTemp.GetAttrState(FunctionAttributeKey.Brightness))) * Application.GetRealHeight(288 - 16 - 16) / 100) + Application.GetRealWidth(40);
                        if (updataTemp.trait_on_off.curValue.ToString() == "on")
                        {
                            bodyView.dimmerBar.SetProgressBarColors(CSS_Color.AuxiliaryColor1, CSS_Color.AuxiliaryColor1);
                            if (!bodyView.onDimmerBar)
                            {
                                bodyView.dimmerBar.Progress = Convert.ToInt32(updataTemp.GetAttrState(FunctionAttributeKey.Brightness));
                                bodyView.btnBrightnessText.Y = ((100 - Convert.ToInt32(updataTemp.GetAttrState(FunctionAttributeKey.Brightness))) * Application.GetRealHeight(288 - 16 - 16) / 100) + Application.GetRealWidth(40);
                            }
                        }
                        else
@@ -83,28 +83,31 @@
            };
        }
        bool curDimmerStatus = false;
        /// <summary>
        /// 灯光调光事件
        /// </summary>
        void LoadEvent_DimmerBar()
        {
            //if (function.online)
            if (function.online)
            {
                dimmerBar.OnStartTrackingTouchEvent = (sender, e) =>
                {
                    onDimmerBar = true;
                    curDimmerStatus = onDimmerBar = true;
                    dimmerBar.SetProgressBarColors(CSS_Color.AuxiliaryColor1, CSS_Color.AuxiliaryColor1);
                };
                dimmerBar.OnStopTrackingTouchEvent = (sender, e) =>
                {
                    onDimmerBar = false;
                    curDimmerStatus = false;
                    function.SetAttrState(FunctionAttributeKey.Brightness, dimmerBar.Progress);
                    System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                    d.Add(FunctionAttributeKey.Brightness, dimmerBar.Progress.ToString());
                    if(dimmerBar.Progress > 0)
                    {
                        d.Add(FunctionAttributeKey.OnOff, "on");
                    }
                    //if(dimmerBar.Progress > 0)
                    //{
                    //    d.Add(FunctionAttributeKey.OnOff, "on");
                    //}
                    Control.Ins.SendWriteCommand(function, d);
                    btnBrightnessText.Text = dimmerBar.Progress + "%";
                };
@@ -128,14 +131,14 @@
                    }
                    else
                    {
                        if (500 < (DateTime.Now - function.refreshTime).TotalMilliseconds)
                        if (350 < (DateTime.Now - function.refreshTime).TotalMilliseconds)
                        {
                            function.refreshTime = DateTime.Now;
                            new System.Threading.Thread(() =>
                            {
                                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                                d.Add(FunctionAttributeKey.Brightness, e.ToString());
                                Control.Ins.SendWriteCommand(function, d);
                                System.Collections.Generic.Dictionary<string, string> dic = new System.Collections.Generic.Dictionary<string, string>();
                                dic.Add(FunctionAttributeKey.Brightness, e.ToString());
                                Control.Ins.SendWriteCommand(function, dic);
                            })
                            { IsBackground = true }.Start();
                        }
@@ -152,16 +155,16 @@
        {
            btnSwitch.MouseUpEventHandler += (sender, e) =>
            {
                //if (!function.online)
                //{
                //    new Tip()
                //    {
                //        CloseTime = 1,
                //        Text = Language.StringByID(StringId.DeviceOfflineCannotOption),
                //        Direction = AMPopTipDirection.None,
                //    }.Show(MainPage.BaseView);
                //    return;
                //}
                if (!function.online)
                {
                    new Tip()
                    {
                        CloseTime = 1,
                        Text = Language.StringByID(StringId.DeviceOfflineCannotOption),
                        Direction = AMPopTipDirection.None,
                    }.Show(MainPage.BaseView);
                    return;
                }
                btnSwitch.IsSelected = !btnSwitch.IsSelected;
                if (btnSwitch.IsSelected)
                {
@@ -176,19 +179,19 @@
                    function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off";
                    System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                    d.Add(FunctionAttributeKey.OnOff, function.trait_on_off.curValue.ToString());
                    d.Add(FunctionAttributeKey.FadeTime, function.GetAttrState(FunctionAttributeKey.FadeTime));
                    if (btnSwitch.IsSelected)
                    {
                        if(function.lastBrightness == 0)
                        {
                            function.lastBrightness = 100;
                        }
                        d.Add(FunctionAttributeKey.Brightness, function.lastBrightness.ToString());
                    }
                    else
                    {
                        function.lastBrightness = Convert.ToInt32( function.GetAttrState(FunctionAttributeKey.Brightness));
                    }
                    d.Add(FunctionAttributeKey.FadeTime, barFadeTime.Progress.ToString());
                    //if (btnSwitch.IsSelected)
                    //{
                    //    if(function.lastBrightness == 0)
                    //    {
                    //        function.lastBrightness = 100;
                    //    }
                    //    d.Add(FunctionAttributeKey.Brightness, function.lastBrightness.ToString());
                    //}
                    //else
                    //{
                    //    function.lastBrightness = Convert.ToInt32( function.GetAttrState(FunctionAttributeKey.Brightness));
                    //}
                    Control.Ins.SendWriteCommand(function, d);
                })
                { IsBackground = true }.Start();