| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using HDL_ON.Common; |
| | | using HDL_ON.DriverLayer; |
| | | using HDL_ON.Entity; |
| | | using HDL_ON.UI.CSS; |
| | | using Shared; |
| | |
| | | } |
| | | } |
| | | |
| | | public override void RemoveFromParent() |
| | | { |
| | | base.RemoveFromParent(); |
| | | } |
| | | |
| | | public void LoadPage(Button btnCollectionIcon, Button btnFunctionNameOut, Button btnFromFloorOut) |
| | | { |
| | | bodyView.RemoveAll(); |
| | | |
| | | btnCollection_Out = btnCollectionIcon; |
| | | btnFunctionName_Out = btnFunctionNameOut; |
| | | btnFromFloor_Out = btnFromFloorOut; |
| | |
| | | //}; |
| | | |
| | | |
| | | |
| | | |
| | | //回退刷新信息事件 |
| | | new TopViewDiv(bodyView, Language.StringByID(StringId.CombinedDimming)).LoadTopView_SettingIcon( () => { |
| | | new TopViewDiv(bodyView, Language.StringByID(StringId.GroupControl)).LoadTopView_SettingIcon( () => { |
| | | var page = new AddGroupControlPage(function, |
| | | (newGC) => { |
| | | try |
| | |
| | | { |
| | | if (newGC != null) |
| | | { |
| | | btnFunctionName.Text = btnFunctionName_Out.Text = function.name; |
| | | function.roomIds = newGC.uids; |
| | | btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = newGC.GetUidListName(); |
| | | var localTemp = FunctionList.List.groupControls.Find((obj) => obj.deviceId == newGC.deviceId); |
| | | if(localTemp!= null) |
| | | { |
| | | try |
| | | { |
| | | localTemp.sids = newGC.sids; |
| | | localTemp.name = newGC.name; |
| | | localTemp.roomIds = newGC.roomIds; |
| | | localTemp.uids = newGC.uids; |
| | | } |
| | | catch { } |
| | | function = newGC; |
| | | btnFunctionName_Out.Text = function.name; |
| | | btnFromFloor_Out.Text = function.GetRoomListName(); |
| | | LoadPage(btnCollection, btnFunctionName, btnFunctionName); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | |
| | | try |
| | | { |
| | | this.RemoveFromParent(); |
| | | UI.HomePage.RefreshFunctionView(); |
| | | UI.HomePage.RefreshGroupControlView(); |
| | | UI.RoomPage.bodyView?.ReLoadPage(); |
| | | UI.FunctionPage.bodyView?.ReLoadPage(); |
| | | } |
| | |
| | | } |
| | | } |
| | | hadRGB = true; |
| | | hadDimming = true; |
| | | } |
| | | else if (temp.spk == SPK.LightCCT) |
| | | { |
| | | hadCCT = true; |
| | | hadDimming = true; |
| | | } |
| | | else if (temp.spk == SPK.LightDimming) |
| | | { |
| | |
| | | } |
| | | |
| | | //属性设置区域 |
| | | var attrView = new VerticalScrolViewLayout() |
| | | VerticalScrolViewLayout attrView = new VerticalScrolViewLayout() |
| | | { |
| | | Y = Application.GetRealHeight(52), |
| | | Width = Application.GetRealWidth(343), |
| | | ScrollEnabled = false, |
| | | }; |
| | | //属性设置区域高度 |
| | | int attrViewHight = Application.GetRealHeight(18 + 22); |
| | | |
| | | |
| | | controlView.AddChidren(attrView); |
| | | |
| | | attrView.AddChidren(new Button() { Height = Application.GetRealHeight(18) }); |
| | | |
| | | |
| | | if (hadRGB) |
| | | { |
| | | hadCCT = true; |
| | | LoadRgbAttrView(hadCCT,hadColorful); |
| | | } |
| | | else if (hadCCT) |
| | | { |
| | | LoadCctAttrView(attrView); |
| | | } |
| | | else if (hadDimming) |
| | | { |
| | | LoadDimmingAttrView(attrView); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | var btnSwitch = new Button() |
| | | btnSwitch = new Button() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = Application.GetRealHeight(466), |
| | |
| | | }; |
| | | |
| | | |
| | | if (hadRGB) |
| | | { |
| | | LoadRgbAttrView(hadCCT,hadColorful); |
| | | } |
| | | else if (hadCCT) |
| | | { |
| | | LoadCctAttrView(attrView); |
| | | } |
| | | else if (hadDimming) |
| | | { |
| | | LoadDimmingAttrView(attrView); |
| | | } |
| | | else |
| | | { |
| | | attrView.AddChidren(new Button() { Height = Application.GetRealHeight(30) }); |
| | | var btnSwitchIcon = new Button() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = Application.GetRealHeight(102), |
| | | Width = Application.GetRealWidth(168), |
| | | Height = Application.GetRealWidth(288), |
| | | UnSelectedImagePath = "FunctionIcon/Light/RelayBg.png", |
| | | SelectedImagePath = "FunctionIcon/Light/RelayOnBg.png", |
| | | IsSelected = function.trait_on_off.curValue.ToString() == "on" |
| | | }; |
| | | attrView.AddChidren(btnSwitchIcon); |
| | | |
| | | btnSwitchIcon.MouseUpEventHandler = (sender, e) => { |
| | | if (btnSwitchIcon.IsSelected) |
| | | { |
| | | btnSwitchIcon.IsSelected = btnSwitch.IsSelected = false; |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.OnOff, "off"); |
| | | function.Control(d); |
| | | } |
| | | else |
| | | { |
| | | btnSwitchIcon.IsSelected = btnSwitch.IsSelected = true; |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.OnOff, "on"); |
| | | function.Control(d); |
| | | } |
| | | }; |
| | | btnSwitch.MouseUpEventHandler += (sender, e) => { |
| | | btnSwitchIcon.IsSelected = btnSwitch.IsSelected; |
| | | }; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | Button btnSwitch; |
| | | |
| | | /// <summary> |
| | | /// 加载调光属性设置控件 |
| | |
| | | /// <param name="attrView"></param> |
| | | void LoadDimmingAttrView(VerticalScrolViewLayout attrView) |
| | | { |
| | | var dimmingView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(54 + 11) |
| | | }; |
| | | attrView.AddChidren(dimmingView); |
| | | |
| | | #region 亮度调节 |
| | | |
| | | |
| | | attrView.AddChidren(new Button |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | }); |
| | | |
| | | var dimmerView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(280) |
| | | }; |
| | | attrView.AddChidren(dimmerView); |
| | | |
| | | var dimmerBar = new WaveSeekBarOn() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Width = Application.GetRealWidth(168 - 40), |
| | | Height = Application.GetRealHeight(288 - 16 - 16), |
| | | BorderColor = 0x00000000, |
| | | CornerRadius = Application.GetRealWidth(30), |
| | | BorderWidth = 0, |
| | | Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness)), |
| | | IsProgressTextShow = false, |
| | | }; |
| | | dimmerView.AddChidren(dimmerBar); |
| | | |
| | | var btnBrightnessText = new Button() |
| | | { |
| | | X = Application.GetRealWidth(35), |
| | | Y = Application.GetRealHeight(1), |
| | | Width = Application.GetRealWidth(224), |
| | | Height = Application.GetRealHeight(25), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = ((100 - Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness))) * Application.GetRealHeight(222 - 16) / 100), |
| | | Width = Application.GetRealWidth(56), |
| | | Height = Application.GetRealWidth(46), |
| | | UnSelectedImagePath = "FunctionIcon/Light/BrightnessBg.png", |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextID = StringId.Brightness, |
| | | TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, |
| | | Text = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness)) + "%", |
| | | }; |
| | | btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + function.GetAttrState(FunctionAttributeKey.Brightness) + "%"; |
| | | dimmingView.AddChidren(btnBrightnessText); |
| | | dimmerView.AddChidren(btnBrightnessText); |
| | | |
| | | |
| | | var btnMinValuesText = new Button() |
| | | { |
| | | X = Application.GetRealWidth(35), |
| | | Y = btnBrightnessText.Bottom, |
| | | Width = Application.GetRealWidth(40), |
| | | Height = Application.GetRealHeight(21), |
| | | Text = "0%", |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.PromptingColor1, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | }; |
| | | dimmingView.AddChidren(btnMinValuesText); |
| | | |
| | | var dimmerBar = new DiyImageSeekBar() |
| | | { |
| | | X = Application.GetRealWidth(45 + 10), |
| | | Y = Application.GetRealHeight(11), |
| | | Width = Application.GetRealWidth(220), |
| | | Height = Application.GetRealHeight(54), |
| | | SeekBarViewHeight = Application.GetRealHeight(8), |
| | | ThumbImagePath = "Public/ThumbImage.png", |
| | | ThumbImageHeight = Application.GetRealHeight(54), |
| | | ProgressTextColor = CSS_Color.FirstLevelTitleColor, |
| | | ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | ProgressBarColor = CSS_Color.AuxiliaryColor1, |
| | | MaxValue = 100, |
| | | SeekBarPadding = Application.GetRealWidth(20), |
| | | IsProgressTextShow = false, |
| | | ProgressChangeDelayTime = 0, |
| | | }; |
| | | dimmingView.AddChidren(dimmerBar); |
| | | dimmerBar.OnProgressChangedEvent = (sender, e) => |
| | | { |
| | | btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + e + "%"; |
| | | }; |
| | | dimmerBar.OnStopTrackingTouchEvent = (sender, e) => |
| | | { |
| | | btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + e + "%"; |
| | | |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | }; |
| | | if (e == 0 && lastBrightness != 0) |
| | | { |
| | | btnSwitch.IsSelected = false; |
| | | lastBrightness = 0; |
| | | } |
| | | else |
| | | { |
| | | if (lastBrightness == 0) |
| | | lastBrightness = e; |
| | | btnSwitch.IsSelected = true; |
| | | } |
| | | if (e == 0 || e == 100) |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | } |
| | | else |
| | | { |
| | | if (350 < (DateTime.Now - function.refreshTime).TotalMilliseconds) |
| | | { |
| | | function.refreshTime = DateTime.Now; |
| | | new System.Threading.Thread(() => |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | } |
| | | |
| | | |
| | | var btnMaxValuesText = new Button() |
| | | { |
| | | X = dimmerBar.Right, |
| | | Y = btnBrightnessText.Bottom, |
| | | Width = Application.GetRealWidth(55), |
| | | Height = Application.GetRealHeight(21), |
| | | Text = "100%", |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.PromptingColor1, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | btnBrightnessText.Y = ((100 - dimmerBar.Progress) * Application.GetRealHeight(222 - 16) / 100); |
| | | btnBrightnessText.Text = dimmerBar.Progress + "%"; |
| | | }; |
| | | dimmingView.AddChidren(btnMaxValuesText); |
| | | #endregion |
| | | |
| | | btnSwitch.MouseUpEventHandler += (sender, e) => { |
| | | if (btnSwitch.IsSelected) |
| | | { |
| | | dimmerBar.Progress = 100; |
| | | } |
| | | else |
| | | { |
| | | dimmerBar.Progress = 0; |
| | | } |
| | | btnBrightnessText.Y = ((100 - dimmerBar.Progress) * Application.GetRealHeight(222 - 16) / 100); |
| | | btnBrightnessText.Text = dimmerBar.Progress + "%"; |
| | | }; |
| | | |
| | | } |
| | | int lastBrightness = 0; |
| | | |
| | | /// <summary> |
| | | /// 加载cct属性设置控件 |
| | |
| | | /// <param name="attrView"></param> |
| | | void LoadCctAttrView(VerticalScrolViewLayout attrView) |
| | | { |
| | | attrView.AddChidren(new Button |
| | | { |
| | | Height = Application.GetRealHeight(20), |
| | | }); |
| | | |
| | | var dimmerView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(280) |
| | | }; |
| | | attrView.AddChidren(dimmerView); |
| | | |
| | | var dimmerBar = new WaveSeekBarOn() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Width = Application.GetRealWidth(168 - 40), |
| | | Height = Application.GetRealHeight(288 - 16 - 16), |
| | | BorderColor = 0x00000000, |
| | | CornerRadius = Application.GetRealWidth(30), |
| | | BorderWidth = 0, |
| | | Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness)), |
| | | IsProgressTextShow = false, |
| | | }; |
| | | dimmerView.AddChidren(dimmerBar); |
| | | |
| | | var btnBrightnessText = new Button() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = ((100 - Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness))) * Application.GetRealHeight(222 - 16) / 100), |
| | | Width = Application.GetRealWidth(56), |
| | | Height = Application.GetRealWidth(46), |
| | | UnSelectedImagePath = "FunctionIcon/Light/BrightnessBg.png", |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, |
| | | Text = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness)) + "%", |
| | | }; |
| | | dimmerView.AddChidren(btnBrightnessText); |
| | | |
| | | dimmerBar.OnProgressChangedEvent = (sender, e) => |
| | | { |
| | | if (e == 0 && lastBrightness != 0) |
| | | { |
| | | btnSwitch.IsSelected = false; |
| | | lastBrightness = 0; |
| | | } |
| | | else |
| | | { |
| | | if (lastBrightness == 0) |
| | | lastBrightness = e; |
| | | btnSwitch.IsSelected = true; |
| | | } |
| | | |
| | | if (e == 0 || e == 100) |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | } |
| | | else |
| | | { |
| | | if (350 < (DateTime.Now - function.refreshTime).TotalMilliseconds) |
| | | { |
| | | function.refreshTime = DateTime.Now; |
| | | new System.Threading.Thread(() => |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | } |
| | | |
| | | |
| | | btnBrightnessText.Y = ((100 - dimmerBar.Progress) * Application.GetRealHeight(222 - 16) / 100); |
| | | btnBrightnessText.Text = dimmerBar.Progress + "%"; |
| | | }; |
| | | |
| | | btnSwitch.MouseUpEventHandler += (sender, e) => { |
| | | if (btnSwitch.IsSelected) |
| | | { |
| | | dimmerBar.Progress = 100; |
| | | } |
| | | else |
| | | { |
| | | dimmerBar.Progress = 0; |
| | | } |
| | | btnBrightnessText.Y = ((100 - dimmerBar.Progress) * Application.GetRealHeight(222 - 16) / 100); |
| | | btnBrightnessText.Text = dimmerBar.Progress + "%"; |
| | | }; |
| | | |
| | | //attrView.AddChidren(new Button() { Height = Application.GetRealHeight(10) }); |
| | | |
| | | #region 色温 |
| | | var cctView = new FrameLayout() |
| | | { |
| | |
| | | Y = Application.GetRealHeight(11), |
| | | Width = Application.GetRealWidth(220), |
| | | Height = Application.GetRealHeight(54), |
| | | Progress = 38, |
| | | }; |
| | | barColorTemplatrue.MinValue = 27; |
| | | barColorTemplatrue.MaxValue = 65; |
| | |
| | | btnWhiteRound.Visible = false; |
| | | framePickerBack.AddChidren(btnWhiteRound); |
| | | |
| | | |
| | | //当前点击的【点】是否正确 |
| | | bool pointIsRight = false; |
| | | //圆的半径(考虑边界,需要设置它的半径比较小一点) |
| | | int circleR = colorPicker.Width / 2 - Application.GetRealWidth(12); |
| | | string rgbString = "255,255,255"; |
| | | var rgbTemp = new Light(); |
| | | colorPicker.MouseUpEventHandler = (sender2, e2) => |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.RGB, rgbString); |
| | | function.Control(d); |
| | | }; |
| | | colorPicker.ColorChaged += (sender2, e2) => |
| | | { |
| | | rgbString = (e2[0] + "," + e2[1] + "," + e2[2]).ToString(); |
| | | btnCurColor.BackgroundColor = (uint)(0xFF000000 + rgbTemp.GetRGBcolor(rgbString)); |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.RGB, rgbString); |
| | | function.Control(d); |
| | | }; |
| | | colorPicker.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | pointIsRight = this.CheckPoint(circleR, colorPicker.Width / 2, colorPicker.Height / 2, (int)e.X, (int)e.Y); |
| | | if (pointIsRight == false) |
| | | { |
| | | //点的区域不是圆盘内 |
| | | return; |
| | | } |
| | | //显示白点 |
| | | btnWhiteRound.X = (int)e.X - btnWhiteRound.Width / 2; |
| | | btnWhiteRound.Y = (int)e.Y - btnWhiteRound.Height / 2; |
| | | if (btnWhiteRound.Visible == false) |
| | | { |
| | | btnWhiteRound.Visible = true; |
| | | } |
| | | }; |
| | | |
| | | colorPicker.MouseMoveEventHandler += (sender, e) => |
| | | { |
| | | //当鼠标点下事件处理 |
| | | colorPicker.MouseDownEventHandler(sender, e); |
| | | }; |
| | | |
| | | |
| | | |
| | | #region 亮度调节 |
| | | var btnBrightnessText = new Button() |
| | | { |
| | |
| | | }; |
| | | controlView.AddChidren(dimmerBar); |
| | | |
| | | |
| | | dimmerBar.OnProgressChangedEvent = (sender, e) => |
| | | { |
| | | if (e == 0 && lastBrightness != 0) |
| | | { |
| | | btnSwitch.IsSelected = false; |
| | | lastBrightness = 0; |
| | | } |
| | | else |
| | | { |
| | | if (lastBrightness == 0) |
| | | lastBrightness = e; |
| | | btnSwitch.IsSelected = true; |
| | | } |
| | | if (e == 0 || e == 100) |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | } |
| | | else |
| | | { |
| | | if (350 < (DateTime.Now - function.refreshTime).TotalMilliseconds) |
| | | { |
| | | function.refreshTime = DateTime.Now; |
| | | new System.Threading.Thread(() => |
| | | { |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Brightness, e.ToString()); |
| | | function.Control(d); |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | } |
| | | }; |
| | | |
| | | |
| | | var btnMaxValuesText = new Button() |
| | | { |
| | | X = dimmerBar.Right, |
| | |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | }; |
| | | controlView.AddChidren(btnMaxValuesText); |
| | | |
| | | btnSwitch.MouseUpEventHandler += (sender, e) => { |
| | | if (btnSwitch.IsSelected) |
| | | { |
| | | dimmerBar.Progress = 100; |
| | | } |
| | | else |
| | | { |
| | | dimmerBar.Progress = 0; |
| | | } |
| | | }; |
| | | #endregion |
| | | |
| | | int heightMore = 375 - magriHeight-20; |
| | |
| | | }; |
| | | barColorTemplatrue.MinValue = 27; |
| | | barColorTemplatrue.MaxValue = 65; |
| | | barColorTemplatrue.Progress = 38; |
| | | barColorTemplatrue.ProgressBarColor = 0x00000000;//全部透明 |
| | | barColorTemplatrue.ProgressBarUnEnableColor = 0x00000000; |
| | | barColorTemplatrue.SeekBarBackgroundColor = 0x00000000; |
| | |
| | | //6500K |
| | | var btnTempClolorMax = new Button(); |
| | | btnTempClolorMax.Y = btnTempClolorMin.Y; |
| | | btnTempClolorMax.X = barColorTemplatrue.Right - Application.GetRealWidth(30); |
| | | btnTempClolorMax.X = barColorTemplatrue.Right - Application.GetRealWidth(15); |
| | | btnTempClolorMax.Width = Application.GetRealWidth(54); |
| | | btnTempClolorMax.Height = Application.GetRealHeight(21); |
| | | btnTempClolorMax.Text = "6500K"; |
| | |
| | | var btnGradualChangeText = new Button() |
| | | { |
| | | X = Application.GetRealWidth(35), |
| | | Y = Application.GetRealHeight(375 + heightMore - magriHeight), |
| | | Y = hadCCT ? Application.GetRealHeight(375 + heightMore - magriHeight) : Application.GetRealHeight(heightMore+10), |
| | | Width = Application.GetRealWidth(224), |
| | | Height = Application.GetRealHeight(21), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | |
| | | }; |
| | | controlView.AddChidren(btnGradualChangeText); |
| | | |
| | | var btnGradualChangeMinValuesText = new Button() |
| | | var btnColorfulEdit = new Button() |
| | | { |
| | | X = Application.GetRealWidth(35), |
| | | Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10), |
| | | Width = Application.GetRealWidth(22), |
| | | Height = Application.GetRealHeight(21), |
| | | UnSelectedImagePath = "Public/Edit.png", |
| | | Visible = false, |
| | | }; |
| | | controlView.AddChidren(btnGradualChangeMinValuesText); |
| | | btnGradualChangeMinValuesText.MouseUpEventHandler = (sender, e) => { |
| | | controlView.AddChidren(btnColorfulEdit); |
| | | btnColorfulEdit.MouseUpEventHandler = (sender, e) => { |
| | | var rgbView = new ColorfulInfoPage(function); |
| | | MainPage.BasePageView.AddChidren(rgbView); |
| | | rgbView.LoadPage(); |
| | |
| | | |
| | | var barColorful = new FrameLayout() |
| | | { |
| | | X = btnGradualChangeMinValuesText.Right + Application.GetRealWidth(15+5), |
| | | Y = Application.GetRealHeight(412 + heightMore - magriHeight), |
| | | X = btnColorfulEdit.Right + Application.GetRealWidth(15 + 5), |
| | | Width = Application.GetRealWidth(170), |
| | | //X = Application.GetRealWidth(35), |
| | | //Width = Application.GetRealWidth(170 + 41), |
| | | Y = hadCCT ? Application.GetRealHeight(412 + heightMore - magriHeight) : Application.GetRealHeight(heightMore + 50), |
| | | Height = Application.GetRealHeight(8), |
| | | BackgroundImagePath = "FunctionIcon/Light/ColorfulBar.png", |
| | | }; |
| | | controlView.AddChidren(barColorful); |
| | | |
| | | var btnGradualChangeMaxValuesText = new Button() |
| | | var 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" |
| | | 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); |
| | | var d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Colorful, controlColorfulState); |
| | | function.Control(d); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MainPage.Log($"控制炫彩开关异常:{ex.Message}"); |
| | | } |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | }; |
| | | |
| | | #endregion |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | |
| | | return false; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | } |