From 4ad6d53e2a8dc59d99405a053ddc46f49ae7a1b3 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 14 十月 2021 11:55:51 +0800
Subject: [PATCH] 干接点新spk 兼容问题
---
HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs | 221 ++++++++++++++++++++++++++++++++++--------------------
1 files changed, 138 insertions(+), 83 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs
index d912967..b78927b 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs
@@ -41,14 +41,28 @@
/// 璋冨厜杩涘害鏉�
/// </summary>
DiyImageSeekBar dimmerBar;
+ /// <summary>
+ /// 娓愬彉鏃堕棿杩涘害鏉�
+ /// </summary>
+ DiyImageSeekBar barFadeTime;
+ /// <summary>
+ /// 鑹茬洏閲岄潰閭d釜浼氭粦鍔ㄧ殑鐞�
+ /// </summary>
+ Button btnWhiteRound;
#endregion
#region 鍖哄煙鍙橀噺
- Light light;
+ Light lightTemp;
Button btnCollection_Out;
Button btnFunctionName_Out;
Button btnFromFloor_Out;
bool onDimmerBar = false;
+ Function function;
+
+ /// <summary>
+ /// 鏈�鍚庢墦寮�鐨勯鑹�
+ /// </summary>
+ byte[] lastColor = new byte[3] { 255, 255, 255 };
/// <summary>
/// 鍒锋柊鏄剧ず淇℃伅
/// </summary>
@@ -58,7 +72,8 @@
public RGBPage(Function func)
{
bodyView = this;
- light = func as Light;
+ function = func;
+ lightTemp = new Light();
}
public void LoadPage(Button btnCollectionIcon, Button btnFunctionNameOut, Button btnFromFloorOut)
@@ -89,7 +104,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextAlignment = TextAlignment.CenterLeft,
TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel,
- Text = light.name,
+ Text = function.name,
};
controlView.AddChidren(btnFunctionName);
@@ -102,7 +117,7 @@
TextColor = CSS_Color.PromptingColor1,
TextAlignment = TextAlignment.CenterLeft,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- Text = light.GetRoomListName()
+ Text = function.GetRoomListName()
};
controlView.AddChidren(btnFromFoorAndRoom);
@@ -115,7 +130,7 @@
Radius = (uint)Application.GetMinRealAverage(8),
BorderColor = CSS_Color.PromptingColor2,
BorderWidth = 1,
- BackgroundColor = (uint)(0xFF000000 + light.redColor * 256 * 256 + light.greenColor * 256 + light.blueColor)
+ BackgroundColor = (uint)(0xFF000000 + lightTemp.GetRGBcolor(function.GetAttrState(FunctionAttributeKey.RGB)))
};
controlView.AddChidren(btnCurColor);
@@ -127,19 +142,46 @@
Height = Application.GetMinRealAverage(40),
SelectedImagePath = "Collection/CollectionIcon.png",
UnSelectedImagePath = "Collection/CollectionGrayIcon.png",
- IsSelected = light.collection
+ IsSelected = function.collect
};
controlView.AddChidren(btnCollection);
+ //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳�
+ //if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare)
+ //{
+ // controlView.AddChidren(btnCollection);
+ //}
+
+ //鑹茬洏鐨勬甯冩帶浠�(闄愬埗閭d釜鐧借壊婊戝姩鐞冧娇鐢�)
+ 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);
+ controlView.AddChidren(framePickerBack);
colorPicker = new ColorPicker()
{
- Gravity = Gravity.CenterHorizontal,
- Y = btnFromFoorAndRoom.Bottom + Application.GetRealHeight(1),
- Width = Application.GetMinRealAverage(216),
- Height = Application.GetMinRealAverage(216),
ColorImagePath = "FunctionIcon/Light/ColorWheel.png",
};
- controlView.AddChidren(colorPicker);
+ framePickerBack.AddChidren(colorPicker);
+ if(function.trait_on_off.curValue.ToString() == "off")
+ {
+ colorPicker.ColorImagePath = "FunctionIcon/Light/ColorWheelGray.png";
+ }
+ //colorPicker.MouseDownEventHandler = (sender, e) => {
+ // MainPage.BasePageView.ScrollEnabled = false;
+ //};
+ //colorPicker.MouseUpEventHandler = (sender, e) => {
+ // MainPage.BasePageView.ScrollEnabled = true;
+ //};
+
+ //鐧界偣鎺т欢
+ this.btnWhiteRound = new Button();
+ btnWhiteRound.Width = Application.GetRealWidth(24);
+ btnWhiteRound.Height = Application.GetRealWidth(24);
+ btnWhiteRound.UnSelectedImagePath = "FunctionIcon/Light/ColorWheelTip.png";
+ btnWhiteRound.Visible = false;
+ framePickerBack.AddChidren(btnWhiteRound);
#region 浜害璋冭妭
var btnBrightnessText = new Button()
@@ -159,7 +201,7 @@
{
X = Application.GetRealWidth(35),
Y = btnBrightnessText.Bottom,
- Width = Application.GetRealWidth(22),
+ Width = Application.GetRealWidth(30),
Height = Application.GetRealHeight(21),
Text = "0%",
TextAlignment = TextAlignment.CenterLeft,
@@ -170,7 +212,7 @@
dimmerBar = new DiyImageSeekBar()
{
- X = btnMinValuesText.Right,
+ X = Application.GetRealWidth(35 + 22),
Y = Application.GetRealHeight(312),
Width = Application.GetRealWidth(210),
Height = Application.GetRealHeight(54),
@@ -179,9 +221,9 @@
ThumbImageHeight = Application.GetRealHeight(54),
ProgressTextColor = CSS_Color.FirstLevelTitleColor,
ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- ProgressBarColor = light.trait_on_off.value.ToString() == "on" ? CSS_Color.AuxiliaryColor1 : CSS_Color.DividingLineColor,
+ ProgressBarColor = function.trait_on_off.curValue.ToString() == "on" ? CSS_Color.AuxiliaryColor1 : CSS_Color.DividingLineColor,
MaxValue = 100,
- Progress = light.brightness,
+ Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.Brightness)),
SeekBarPadding = Application.GetRealWidth(20),
};
controlView.AddChidren(dimmerBar);
@@ -190,7 +232,7 @@
{
X = dimmerBar.Right,
Y = btnBrightnessText.Bottom,
- Width = Application.GetRealWidth(35),
+ Width = Application.GetRealWidth(45),
Height = Application.GetRealHeight(21),
Text = "100%",
TextAlignment = TextAlignment.CenterLeft,
@@ -200,73 +242,81 @@
controlView.AddChidren(btnMaxValuesText);
#endregion
- #region 娓愬彉鏃堕棿璋冭妭
- var btnGradualChangeText = new Button()
- {
- X = Application.GetRealWidth(35),
- Y = Application.GetRealHeight(375),
- Width = Application.GetRealWidth(224),
- Height = Application.GetRealHeight(21),
- TextAlignment = TextAlignment.CenterLeft,
- TextColor = CSS_Color.FirstLevelTitleColor,
- TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- TextID = StringId.SpeedOfChange,
- };
- controlView.AddChidren(btnGradualChangeText);
+ #region 娓愬彉鏃堕棿璋冭妭
+ var btnGradualChangeText = new Button()
+ {
+ X = Application.GetRealWidth(35),
+ Y = Application.GetRealHeight(375),
+ 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);
- var btnGradualChangeMinValuesText = new Button()
- {
- X = Application.GetRealWidth(35),
- Y = btnGradualChangeText.Bottom+ Application.GetRealHeight(10),
- Width = Application.GetRealWidth(22),
- Height = Application.GetRealHeight(21),
- Text = "0s",
- TextAlignment = TextAlignment.CenterLeft,
- TextColor = CSS_Color.PromptingColor1,
- TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- };
- controlView.AddChidren(btnGradualChangeMinValuesText);
+ var btnGradualChangeMinValuesText = new Button()
+ {
+ X = Application.GetRealWidth(35),
+ Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10),
+ Width = Application.GetRealWidth(22),
+ Height = Application.GetRealHeight(21),
+ Text = "0s",
+ 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);
- var barGradualChange = new DiyImageSeekBar()
- {
- X = btnGradualChangeMinValuesText.Right,
- Y = Application.GetRealHeight(412 - 21),
- Width = Application.GetRealWidth(210),
- Height = Application.GetRealHeight(54),
- SeekBarViewHeight = Application.GetRealHeight(8),
- ThumbImagePath = "Public/ThumbImage.png",
- ThumbImageHeight = Application.GetRealHeight(54),
- ProgressBarColor = CSS_Color.MainColor,
- //SeekBarBackgroundColor = CSS_Color.MainColor,
- ProgressTextColor = CSS_Color.FirstLevelTitleColor,
- ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- ProgressBarUnitSring = "s",
- MaxValue = 10,
- Progress = 0,
- SeekBarPadding = Application.GetRealWidth(20),
- };
- controlView.AddChidren(barGradualChange);
+ barFadeTime = new DiyImageSeekBar()
+ {
+ X = btnGradualChangeMinValuesText.Right,
+ Y = Application.GetRealHeight(412 - 21),
+ Width = Application.GetRealWidth(210),
+ Height = Application.GetRealHeight(54),
+ SeekBarViewHeight = Application.GetRealHeight(8),
+ ThumbImagePath = "Public/ThumbImage.png",
+ ThumbImageHeight = Application.GetRealHeight(54),
+ ProgressBarColor = CSS_Color.MainColor,
+ //SeekBarBackgroundColor = CSS_Color.MainColor,
+ ProgressTextColor = CSS_Color.FirstLevelTitleColor,
+ ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ ProgressBarUnitSring = "s",
+ 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);
- var btnGradualChangeMaxValuesText = new Button()
- {
- X = barGradualChange.Right,
- Y = btnGradualChangeText.Bottom+ Application.GetRealHeight(10),
- Width = Application.GetRealWidth(35),
- Height = Application.GetRealHeight(21),
- Text = "10s",
- TextAlignment = TextAlignment.CenterLeft,
- TextColor = CSS_Color.PromptingColor1,
- TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- };
- controlView.AddChidren(btnGradualChangeMaxValuesText);
- #endregion
+ var btnGradualChangeMaxValuesText = new Button()
+ {
+ X = barFadeTime.Right,
+ Y = btnGradualChangeText.Bottom + Application.GetRealHeight(10),
+ Width = Application.GetRealWidth(35),
+ Height = Application.GetRealHeight(21),
+ Text = "10s",
+ 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(btnGradualChangeMaxValuesText);
+ #endregion
btnRestoredPoint = new Button()
{
- X = Application.GetRealWidth(104),
- Y = Application.GetRealHeight(462),
- Width = Application.GetMinRealAverage(40),
- Height = Application.GetMinRealAverage(40),
+ X = Application.GetRealWidth(116),
+ Y = Application.GetRealHeight(466),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "Public/Restored_Shadow.png",
SelectedImagePath = "Public/Restored_Shadow.png",
};
@@ -274,18 +324,23 @@
btnSwitch = new Button()
{
- X = btnRestoredPoint.Right + Application.GetRealWidth(40),
- Y = Application.GetRealHeight(462),
- Width = Application.GetMinRealAverage(40),
- Height = Application.GetMinRealAverage(40),
+ X = btnRestoredPoint.Right + Application.GetRealWidth(32),
+ Y = Application.GetRealHeight(466),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "Public/PowerClose.png",
SelectedImagePath = "Public/PowerOpen.png",
- IsSelected = light.trait_on_off.value.ToString() == "on"
+ IsSelected = function.trait_on_off.curValue.ToString() == "on"
};
controlView.AddChidren(btnSwitch);
LoadEventList();
- new TopViewDiv(bodyView, Language.StringByID(StringId.Lights)).LoadTopView(light, actionRefresh);
+ new TopViewDiv(bodyView, Language.StringByID(StringId.Lights)).LoadTopView_FunctionTop(function, actionRefresh);
+ new System.Threading.Thread(() =>
+ {
+ DriverLayer.Control.Ins.SendReadCommand(function);
+ })
+ { IsBackground = true }.Start();
}
}
}
--
Gitblit v1.8.0