wxr
2023-07-18 762eed3a31840aa91ac508c63b8df54029cf0262
HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs
@@ -1,4 +1,5 @@
using System;
using HDL_ON.DriverLayer;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using Shared;
@@ -49,6 +50,11 @@
        /// 色盘里面那个会滑动的球
        /// </summary>
        Button btnWhiteRound;
        /// <summary>
        /// 炫彩开关按钮
        /// </summary>
        Button btnColorfulSwitch;
        #endregion
        #region 区域变量
@@ -228,7 +234,7 @@
            dimmerBar = new DiyImageSeekBar()
            {
                X = Application.GetRealWidth(35 + 22),
                Y = Application.GetRealHeight(312 - magriHeight),
                Y = Application.GetRealHeight(316 - magriHeight),
                Width = Application.GetRealWidth(210),
                Height = Application.GetRealHeight(54),
                SeekBarViewHeight = Application.GetRealHeight(8),
@@ -279,7 +285,7 @@
                var btnGradualChangeMinValuesText = new Button()
                {
                    X = Application.GetRealWidth(35),
                    Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10),
                    Y = btnGradualChangeText.Bottom,// + Application.GetRealHeight(10),
                    Width = Application.GetRealWidth(22),
                    Height = Application.GetRealHeight(21),
                    Text = "0s",
@@ -317,7 +323,7 @@
                var btnGradualChangeMaxValuesText = new Button()
                {
                    X = barFadeTime.Right,
                    Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10),
                    Y = btnGradualChangeText.Bottom,// + Application.GetRealHeight(10),
                    Width = Application.GetRealWidth(35),
                    Height = Application.GetRealHeight(21),
                    Text = "10s",
@@ -329,7 +335,7 @@
                };
                controlView.AddChidren(btnGradualChangeMaxValuesText);
                #endregion
                heightMore = 70;
                //heightMore += 70;
            }
@@ -337,10 +343,11 @@
            {
                #region 炫彩功能
                var btnGradualChangeText = new Button()
                {
                    X = Application.GetRealWidth(35),
                    Y = Application.GetRealHeight(375+ heightMore- magriHeight),
                    Y = Application.GetRealHeight(heightMore + magriHeight),
                    Width = Application.GetRealWidth(224),
                    Height = Application.GetRealHeight(21),
                    TextAlignment = TextAlignment.CenterLeft,
@@ -350,16 +357,16 @@
                };
                controlView.AddChidren(btnGradualChangeText);
                var btnGradualChangeMinValuesText = new Button()
                var btnEditColorful = new Button()
                {
                    X = Application.GetRealWidth(35),
                    Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10),
                    Y = btnGradualChangeText.Bottom,// + Application.GetRealHeight(10),
                    Width = Application.GetRealWidth(22),
                    Height = Application.GetRealHeight(21),
                    UnSelectedImagePath = "Public/Edit.png",
                };
                controlView.AddChidren(btnGradualChangeMinValuesText);
                btnGradualChangeMinValuesText.MouseUpEventHandler = (sender, e) => {
                controlView.AddChidren(btnEditColorful);
                btnEditColorful.MouseUpEventHandler = (sender, e) => {
                    var rgbView = new ColorfulInfoPage(function);
                    MainPage.BasePageView.AddChidren(rgbView);
                    rgbView.LoadPage();
@@ -368,23 +375,44 @@
                var barColorful = new FrameLayout()
                {
                    X = btnGradualChangeMinValuesText.Right + Application.GetRealWidth(15),
                    Y = Application.GetRealHeight(412 + heightMore-magriHeight),
                    X = btnEditColorful.Right + Application.GetRealWidth(15),
                    Y = Application.GetRealHeight(27 + heightMore + magriHeight),
                    Width = Application.GetRealWidth(180),
                    Height = Application.GetRealHeight(8),
                    BackgroundImagePath = "FunctionIcon/Light/ColorfulBar.png",
                };
                controlView.AddChidren(barColorful);
                var btnGradualChangeMaxValuesText = new Button()
                btnColorfulSwitch = new Button()
                {
                    X = barColorful.Right + Application.GetRealWidth(8),
                    Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10),
                    Y = btnGradualChangeText.Bottom,// + Application.GetRealHeight(10),
                    Width = Application.GetRealWidth(38),
                    Height = Application.GetRealHeight(24),
                    UnSelectedImagePath = "Public/Switch.png"
                    UnSelectedImagePath = "Public/Switch.png",
                    SelectedImagePath = "Public/SwitchOn.png",
                };
                controlView.AddChidren(btnGradualChangeMaxValuesText);
                controlView.AddChidren(btnColorfulSwitch);
                btnColorfulSwitch.MouseUpEventHandler = (sender, e) => {
                    btnColorfulSwitch.IsSelected = !btnColorfulSwitch.IsSelected;
                    new System.Threading.Thread(() =>
                    {
                        try
                        {
                            var controlColorfulState = btnColorfulSwitch.IsSelected ? "on" : "off";
                            function.SetAttrState(FunctionAttributeKey.Colorful, controlColorfulState);
                            System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                            d.Add(FunctionAttributeKey.Colorful, controlColorfulState);
                            Control.Ins.SendWriteCommand(function, d);
                        }catch(Exception ex)
                        {
                            MainPage.Log($"控制炫彩开关异常:{ex.Message}");
                        }
                    })
                    { IsBackground = true }.Start();
                };
                #endregion