From 4fef29b9ab9f2632f15a0d45005f92d91de5d4e5 Mon Sep 17 00:00:00 2001 From: Davin <591807572@qq.com> Date: 星期四, 27 七月 2023 14:26:59 +0800 Subject: [PATCH] feature 萤石sdk更新 --- HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs | 147 ++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 127 insertions(+), 20 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs index 84f44bd..bb83402 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Shared; @@ -49,15 +50,20 @@ /// 鑹茬洏閲岄潰閭d釜浼氭粦鍔ㄧ殑鐞� /// </summary> Button btnWhiteRound; + /// <summary> + /// 鐐僵寮�鍏虫寜閽� + /// </summary> + Button btnColorfulSwitch; + #endregion #region 鍖哄煙鍙橀噺 Light lightTemp; + Function function; Button btnCollection_Out; Button btnFunctionName_Out; Button btnFromFloor_Out; bool onDimmerBar = false; - Function function; /// <summary> /// 鏈�鍚庢墦寮�鐨勯鑹� @@ -84,6 +90,12 @@ bodyView.BackgroundColor = CSS_Color.BackgroundColor; //new TopViewDiv(bodyView, Language.StringByID(StringId.Lights)).LoadTopView(function,null); //new PublicAssmebly().LoadTopView(bodyView, Language.StringByID(StringId.Lights), function); + + int magriHeight = 0; + if (function.GetAttribute(FunctionAttributeKey.FadeTime) != null && function.GetAttribute(FunctionAttributeKey.Colorful) != null) + { + magriHeight = 80; + } FrameLayout controlView = new FrameLayout() { @@ -155,12 +167,14 @@ var framePickerBack = new FrameLayout(); framePickerBack.Gravity = Gravity.CenterHorizontal; framePickerBack.Y = btnFromFoorAndRoom.Bottom + Application.GetRealHeight(1); - framePickerBack.Width = Application.GetMinRealAverage(216); - framePickerBack.Height = Application.GetMinRealAverage(216); + framePickerBack.Width = Application.GetMinRealAverage(216-magriHeight); + framePickerBack.Height = Application.GetMinRealAverage(216 - magriHeight); + //framePickerBack.BackgroundColor = 0xFFFF0000; controlView.AddChidren(framePickerBack); colorPicker = new ColorPicker() { + Gravity = Gravity.Center, ColorImagePath = "FunctionIcon/Light/ColorWheel.png", }; framePickerBack.AddChidren(colorPicker); @@ -176,10 +190,17 @@ //}; //鐧界偣鎺т欢 - this.btnWhiteRound = new Button(); - btnWhiteRound.Width = Application.GetRealWidth(24); - btnWhiteRound.Height = Application.GetRealWidth(24); - btnWhiteRound.UnSelectedImagePath = "FunctionIcon/Light/ColorWheelTip.png"; + var diameter = Application.GetRealWidth(12); + this.btnWhiteRound = new Button() + { + Width = diameter, + Height = diameter, + Radius = (uint)Application.GetRealWidth(6), + BorderWidth = (uint)Application.GetRealWidth(1), + BorderColor = CSS_Color.MainBackgroundColor, + Enable = false, + }; + //btnWhiteRound.UnSelectedImagePath = "FunctionIcon/Light/ColorWheelTip.png"; btnWhiteRound.Visible = false; framePickerBack.AddChidren(btnWhiteRound); @@ -187,7 +208,7 @@ var btnBrightnessText = new Button() { X = Application.GetRealWidth(35), - Y = Application.GetRealHeight(308), + Y = Application.GetRealHeight(308 - magriHeight), Width = Application.GetRealWidth(224), Height = Application.GetRealHeight(21), TextAlignment = TextAlignment.CenterLeft, @@ -213,7 +234,7 @@ dimmerBar = new DiyImageSeekBar() { X = Application.GetRealWidth(35 + 22), - Y = Application.GetRealHeight(312), + Y = Application.GetRealHeight(316 - magriHeight), Width = Application.GetRealWidth(210), Height = Application.GetRealHeight(54), SeekBarViewHeight = Application.GetRealHeight(8), @@ -242,21 +263,22 @@ controlView.AddChidren(btnMaxValuesText); #endregion + int heightMore = 375 - magriHeight; + if (function.GetAttribute(FunctionAttributeKey.FadeTime) != null) { #region 娓愬彉鏃堕棿璋冭妭 + var btnGradualChangeText = new Button() { X = Application.GetRealWidth(35), - Y = Application.GetRealHeight(375), + Y = Application.GetRealHeight(heightMore), Width = Application.GetRealWidth(224), Height = Application.GetRealHeight(21), TextAlignment = TextAlignment.CenterLeft, TextColor = CSS_Color.FirstLevelTitleColor, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, TextID = StringId.SpeedOfChange, - Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null, - Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null, }; controlView.AddChidren(btnGradualChangeText); @@ -270,15 +292,13 @@ TextAlignment = TextAlignment.CenterLeft, TextColor = CSS_Color.PromptingColor1, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null, - Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null, }; controlView.AddChidren(btnGradualChangeMinValuesText); barFadeTime = new DiyImageSeekBar() { - X = btnGradualChangeMinValuesText.Right, - Y = Application.GetRealHeight(412 - 21), + X = Application.GetRealWidth(35 + 22), + Y = Application.GetRealHeight(412 - 21-magriHeight), Width = Application.GetRealWidth(210), Height = Application.GetRealHeight(54), SeekBarViewHeight = Application.GetRealHeight(8), @@ -292,8 +312,6 @@ MaxValue = 10, Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.FadeTime)), SeekBarPadding = Application.GetRealWidth(20), - Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null, - Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null, }; controlView.AddChidren(barFadeTime); barFadeTime.OnStopTrackingTouchEvent = (sender, e) => @@ -317,8 +335,99 @@ }; controlView.AddChidren(btnGradualChangeMaxValuesText); #endregion + //heightMore += 70; } + + if (function.GetAttribute(FunctionAttributeKey.Colorful)!= null) + { + #region 鐐僵鍔熻兘 + + + var btnGradualChangeText = new Button() + { + X = Application.GetRealWidth(35), + Y = Application.GetRealHeight(heightMore + magriHeight), + Width = Application.GetRealWidth(224), + Height = Application.GetRealHeight(21), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + TextID = StringId.ColorfulFunction, + }; + controlView.AddChidren(btnGradualChangeText); + + var btnEditColorful = new Button() + { + X = Application.GetRealWidth(35), + Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10), + Width = Application.GetRealWidth(22), + Height = Application.GetRealHeight(21), + UnSelectedImagePath = "Public/Edit.png", + }; + controlView.AddChidren(btnEditColorful); + btnEditColorful.MouseUpEventHandler = (sender, e) => { + var rgbView = new ColorfulInfoPage(function); + MainPage.BasePageView.AddChidren(rgbView); + rgbView.LoadPage(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + var barColorful = new FrameLayout() + { + X = btnEditColorful.Right + Application.GetRealWidth(15), + Y = Application.GetRealHeight(37 + heightMore + magriHeight), + Width = Application.GetRealWidth(180), + Height = Application.GetRealHeight(8), + BackgroundImagePath = "FunctionIcon/Light/ColorfulBar.png", + }; + controlView.AddChidren(barColorful); + + btnColorfulSwitch = new Button() + { + X = barColorful.Right + Application.GetRealWidth(8), + Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10), + Width = Application.GetRealWidth(38), + Height = Application.GetRealHeight(24), + UnSelectedImagePath = "Public/Switch.png", + SelectedImagePath = "Public/SwitchOn.png", + }; + 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); + if (controlColorfulState == "on") + { + var color = function.GetAttrState(FunctionAttributeKey.ColorfulBegin).Split(","); + var sendColorString = color[0] + "," + color[1] + "," + color[2]; + d.Add(FunctionAttributeKey.ColorfulBegin, sendColorString); + color = function.GetAttrState(FunctionAttributeKey.ColorfulEnd).Split(","); + sendColorString = color[0] + "," + color[1] + "," + color[2]; + d.Add(FunctionAttributeKey.ColorfulEnd, sendColorString); + d.Add(FunctionAttributeKey.ColorfulTime, function.GetAttrState(FunctionAttributeKey.ColorfulTime)); + } + Control.Ins.SendWriteCommand(function, d); + }catch(Exception ex) + { + MainPage.Log($"鎺у埗鐐僵寮�鍏冲紓甯�:{ex.Message}"); + } + }) + { IsBackground = true }.Start(); + }; + + #endregion + + + } + btnRestoredPoint = new Button() { X = Application.GetRealWidth(116), @@ -349,8 +458,6 @@ DriverLayer.Control.Ins.SendReadCommand(function); }) { IsBackground = true }.Start(); - - new System.Threading.Thread(() => { while (true) -- Gitblit v1.8.0