wxr
2022-11-11 b47f91b91bc5371bba0c8801dbd648772ab331fc
HDL_ON/UI/UI2/FuntionControlView/Acst/AcstSubPage.cs
@@ -21,6 +21,7 @@
        Function function;
        uint curColor;
        string colorString;
        string imageFolder = "blue";
@@ -33,17 +34,33 @@
            Application.RunOnMainThread(() => {
                bodyView.btnTempValues.Text = temp.GetAttrState(AcstSub_AttrEnum.room_temp.ToString());
                bodyView.btnHumiValues.Text = temp.GetAttrState(AcstSub_AttrEnum.room_humidity.ToString());
                int setTempValue = 0;
                double dd = 0;
                double.TryParse(temp.GetAttrState(AcstSub_AttrEnum.set_temp.ToString(), "--"), out dd);
                setTempValue = Convert.ToInt32(dd);
                if (setTempValue != 0)
                    bodyView.btnSetTempValues.Text = setTempValue.ToString();
                bodyView.btnSetTempValues.Width = bodyView.btnSetTempValues.GetTextWidth() + Application.GetRealWidth(10);
                bodyView.tempBar.Progress = Convert.ToInt32(temp.GetAttrState(FunctionAttributeKey.SetTemp)) + 16;
                //int progress = 0;
                //int.TryParse(temp.GetAttrState(AcstSub_AttrEnum.set_temp.ToString()), out progress);
                bodyView.tempBar.Progress = setTempValue - 16;
                if(temp.trait_on_off.curValue.ToString() == "on")
                {
                    bodyView.btnPowerControl.IsSelected = true;
                    bodyView.tempBar.IsOffline = false;
                    bodyView.tempBar.ProgressBarColor = bodyView.curColor;
                    //bodyView.tempBar.IsClickable = function.trait_on_off.curValue.ToString() == "off",
                    //bodyView.tempBar.IsOffline = false;
                }
                else
                {
                    bodyView.btnPowerControl.IsSelected = false;
                    bodyView.tempBar.IsOffline = true;
                    bodyView.tempBar.ProgressBarColor = CSS_Color.DividingLineColor;
                    //bodyView.tempBar.IsOffline = true;
                }
            });
@@ -56,21 +73,24 @@
            switch (imageFolder)
            {
                case "blue":
                    curColor = CSS.CSS_Color.MainColor;
                    curColor = CSS_Color.MainColor;
                    colorString = "#4484F4";
                    break;
                case "orange":
                    curColor = 0xFFFFB848;
                    colorString = "#FFB848";
                    break;
                case "purple":
                    curColor = 0xFF9175F3;
                    colorString = "#9175F3";
                    break;
            }
            bodyView = this;
        }
        public void LoadPage()
        public void LoadPage(Action action)
        {
            new TopViewDiv(bodyView, function.GetRoomListName()).LoadTopView();
            new TopViewDiv(bodyView, function.name).LoadTopView_FunctionTop(function,action);
            var contentView = new FrameLayout()
            {
@@ -169,7 +189,7 @@
            EventHandler<MouseEventArgs> eventHandler = (sender, e) => {
                var page = new AcstSubHistoryPage(function);
                var page = new AcstSubHistoryPage(function, colorString);
                MainPage.BasePageView.AddChidren(page);
                page.LoadPage();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -183,9 +203,9 @@
            btnSetTempValues = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
                X = Application.GetRealWidth((375 - 77 -30)/2),
                Y = Application.GetRealHeight(260),
                Width = Application.GetRealWidth(71),
                Width = Application.GetRealWidth(77),
                Height = Application.GetRealHeight(90),
                TextAlignment = TextAlignment.TopRight,
                TextColor = CSS.CSS_Color.FirstLevelTitleColor,
@@ -194,6 +214,15 @@
                Text = function.GetAttrState(AcstSub_AttrEnum.set_temp.ToString(), "--")
            };
            contentView.AddChidren(btnSetTempValues);
            int setTempValue = 0;
            double dd = 0;
            double.TryParse(function.GetAttrState(AcstSub_AttrEnum.set_temp.ToString(), "--"), out dd);
            setTempValue = Convert.ToInt32(dd);
            if (setTempValue != 0)
                btnSetTempValues.Text = setTempValue.ToString();
            //bodyView.btnSetTempValues.Width = bodyView.btnSetTempValues.GetTextWidth() + Application.GetRealWidth(10);
            var btnSetTempUnit = new Button()
            {
@@ -223,6 +252,10 @@
            };
            contentView.AddChidren(btnMinValuesText);
            int progress = 0;
            int.TryParse(function.GetAttrState(FunctionAttributeKey.SetTemp),out progress);
            tempBar = new DiyImageSeekBar()
            {
                Gravity = Gravity.CenterHorizontal,
@@ -234,11 +267,13 @@
                ThumbImageHeight = Application.GetRealHeight(51),
                ProgressBarColor = function.trait_on_off.curValue.ToString() == "on" ? curColor : CSS_Color.DividingLineColor,
                MaxValue = 14,
                Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.SetTemp)) + 16,
                Progress = progress + 16,
                SeekBarPadding = Application.GetRealWidth(20),
                IsProgressTextShow = false,
                ProgressChangeDelayTime = 0,
                IsOffline = function.trait_on_off.curValue.ToString() == "off",
                //IsClickable = function.trait_on_off.curValue.ToString() == "off",
                //Enable = function.trait_on_off.curValue.ToString() == "off",
                //IsOffline = true,// function.trait_on_off.curValue.ToString() == "off",
            };
            contentView.AddChidren(tempBar);
            tempBar.OnProgressChangedEvent = (sender, e) => {
@@ -247,7 +282,7 @@
            tempBar.OnStopTrackingTouchEvent = (sender, e) => {
                new System.Threading.Thread(() => {
                    var d = new Dictionary<string, string>();
                    d.Add(FunctionAttributeKey.SetTemp, e.ToString());
                    d.Add(FunctionAttributeKey.SetTemp, (e+16).ToString());
                    Control.Ins.SendWriteCommand(function, d);
                })
                { IsBackground = true }.Start();
@@ -269,8 +304,6 @@
            btnPowerControl = new Button()
            {
                Y = Application.GetRealHeight(496),
@@ -288,12 +321,14 @@
                new System.Threading.Thread(() => {
                    Dictionary<string, string> d = new Dictionary<string, string>();
                    d.Add("onoff", btnPowerControl.IsSelected ? "on" : "off");
                    d.Add(FunctionAttributeKey.OnOff, btnPowerControl.IsSelected ? "on" : "off");
                    Control.Ins.SendWriteCommand(function, d);
                })
                { IsBackground = true }.Start();
            };
            Control.Ins.SendReadCommand(function);
        }
    }
}