From 17c8d94258154ab2e9f6d2cf821202c873b9f118 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期三, 16 十二月 2020 15:39:15 +0800
Subject: [PATCH] 22222
---
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 223 ++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 155 insertions(+), 68 deletions(-)
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
index df3bb2f..0f3a706 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -1,6 +1,7 @@
锘縰sing System;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
+using HDL_ON.UI.Music;
using Shared;
namespace HDL_ON.UI
@@ -8,7 +9,7 @@
public partial class FunctionControlZone : FrameLayout
{
#region 鍖哄煙鎺т欢
- FrameLayout bodyDiv;
+ static FrameLayout bodyDiv;
/// <summary>
/// 鍔熻兘/鍦烘櫙icon
/// </summary>
@@ -29,10 +30,15 @@
#region 鍖哄煙鍙橀噺
Function function;
+ /// <summary>
+ /// 鏄惁鍦ㄨ皟鍏�
+ /// </summary>
+ bool onDimmerBar;
#endregion
public FunctionControlZone(Function func)
{
bodyDiv = this;
+ bodyDiv.Tag = func.sid;
function = func;
}
@@ -54,15 +60,40 @@
}
LoadDiv();
+ if (function.functionCategory == FunctionCategory.Curtain || function.functionCategory == FunctionCategory.Music || function.functionCategory == FunctionCategory.Scene)//绐楀笜娌℃湁寮�鍏虫寜閽�
+ {
+ switch (function.functionCategory)
+ {
+ case FunctionCategory.Curtain:
+ switch(function.functionType)
+ {
+ case FunctionType.Curtain:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainThinIcon.png";
+ break;
+ case FunctionType.MotorCurtain:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/MotorCurtainIcon.png";
+ break;
+ case FunctionType.RollingShutter:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/RollingShutterIcon.png";
+ break;
+ }
+ CurtainFragment();
+ break;
+ case FunctionCategory.Music:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicThinIcon.png";
+ MusicFragment();
+ break;
- if (function.functionCategory != FunctionType.Curtain)//绐楀笜娌℃湁寮�鍏虫寜閽�
+ }
+ }
+ else
{
#region 鍔犺浇寮�鍏虫寜閽�
/// <summary>
/// 寮�鍏虫寜閽�
/// </summary>
Button btnSwitch;
- if (function.functionType == "RGB" || function.functionType == "Dimmer")
+ if (function.functionType == FunctionType.RGB || function.functionType == FunctionType.Dimmer)
{
btnSwitch = new Button()
{
@@ -72,7 +103,8 @@
Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "Public/PowerClose.png",
SelectedImagePath = "Public/PowerOpen.png",
- Tag = function.functionType + "_Switch_" + function.sid
+ IsSelected = function.trait_on_off.curValue.ToString() == "on",
+ Tag = function.sid + "_Switch",
};
bodyDiv.AddChidren(btnSwitch);
}
@@ -86,58 +118,64 @@
Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "Public/PowerClose.png",
SelectedImagePath = "Public/PowerOpen.png",
- Tag = function.functionType + "_Switch_" + function.sid
+ IsSelected = function.trait_on_off.curValue.ToString() == "on",
+ Tag = function.sid + "_Switch",
};
bodyDiv.AddChidren(btnSwitch);
}
//鍔犺浇寮�鍏虫寜閽簨浠�
- LoadEvent_LightSwitch(btnSwitch);
+ LoadEvent_SwitchFunction(btnSwitch);
switch (function.functionCategory)
{
- case FunctionType.AC:
- btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcThinIcon.png";
- AcDiv();
- break;
- case FunctionType.Light:
- btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightThinIcon.png";
- btnSwitch.IsSelected = (function as Light).on_off == 1;
- LoadLightControl();
- break;
- case FunctionType.FloorHeating:
- btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingThinIcon.png";
- FloorHeatingDiv();
- break;
- case FunctionType.Scene:
- btnIcon.UnSelectedImagePath = "FunctionIcon/Scene/SceneIcon.png";
- if ((function as Scene).sceneType == SceneType.MovieScene)
+ case FunctionCategory.Thermostat:
+ switch (function.functionType)
{
- var movieIcon = new Button()
- {
- X = Application.GetRealWidth(52),
- Y = Application.GetRealHeight(14),
- Width = Application.GetRealWidth(16),
- Height = Application.GetRealWidth(16),
- UnSelectedImagePath = "FunctionIcon/Scene/MovieMark.png",
- };
- bodyDiv.AddChidren(movieIcon);
-
- btnName.X = movieIcon.Right;
+ case FunctionType.AC:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcThinIcon1.png";
+ LoadLastStatesButton();
+ break;
+ case FunctionType.FloorHeating:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingThinIcon.png";
+ LoadLastStatesButton();
+ break;
}
break;
+ case FunctionCategory.Light:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightThinIcon.png";
+ btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on";
+ LoadLightControl();
+ break;
+ case FunctionCategory.SwitchDevice:
+ switch (function.functionType)
+ {
+ case FunctionType.Socket:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketThinIcon.png";
+ break;
+ }
+ btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on";
+ break;
+ case FunctionCategory.Electrical:
+ switch (function.functionType)
+ {
+ case FunctionType.Fan:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanThinIcon.png";
+ break;
+ case FunctionType.TV:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVThinIcon.png";
+ break;
+ }
+ btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on";
+ break;
}
-
#endregion
}
- else
+
+ if (function.functionCategory != FunctionCategory.Scene)
{
- btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainThinIcon.png";
- CurtainFragment();
-
+ LoadEvent_DivSkipEvent();
}
-
- LoadEvent_DivSkipEvent();
- LoadCollectionEvent();
+ LoadEvent_FunctionCollection();
}
/// <summary>
@@ -149,14 +187,14 @@
{
X = Application.GetRealWidth(10),
Y = Application.GetRealHeight(15),
- Width = Application.GetMinRealAverage(32),
- Height = Application.GetMinRealAverage(32),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
};
bodyDiv.AddChidren(btnIcon);
btnName = new Button()
{
- X = btnIcon.Right + Application.GetRealWidth(8),
+ X = Application.GetRealWidth(8 +10 + 32),
Y = Application.GetRealHeight(10),
Width = Application.GetRealWidth(200),
Height = Application.GetRealHeight(24),
@@ -169,8 +207,8 @@
btnFromFloor = new Button()
{
- X = btnIcon.Right + Application.GetRealWidth(8),
- Y = btnName.Bottom,
+ X = Application.GetRealWidth(8 + 10 + 32),
+ Y = Application.GetRealHeight(10 + 24),
Width = Application.GetRealWidth(200),
Height = Application.GetRealHeight(18),
Text = function.GetRoomListName(),
@@ -188,10 +226,9 @@
Height = Application.GetMinRealAverage(40),
SelectedImagePath = "Collection/CollectionIcon.png",
UnSelectedImagePath = "Collection/CollectionGrayIcon.png",
- IsSelected = function.collection
+ IsSelected = function.collect
};
bodyDiv.AddChidren(btnCollectionIcon);
-
}
/// <summary>
@@ -201,14 +238,14 @@
{
switch (function.functionType)
{
- case "Dimmer":
- case "RGB":
+ case FunctionType.Dimmer:
+ case FunctionType.RGB:
#region Dimmer
var btnDimmerMinValues = new Button()
{
X = Application.GetRealWidth(14),
Y = Application.GetRealHeight(85),
- Width = Application.GetRealWidth(22),
+ Width = Application.GetRealWidth(30),
Height = Application.GetRealHeight(21),
Text = "0%",
TextAlignment = TextAlignment.CenterLeft,
@@ -219,27 +256,28 @@
var dimmerControlBar = new DiyImageSeekBar()
{
- X = btnDimmerMinValues.Right,
+ X = Application.GetRealWidth(14 + 22),
Y = Application.GetRealHeight(68),//91,璁捐鏁版嵁
Width = Application.GetRealWidth(180),
Height = Application.GetRealHeight(54),
SeekBarViewHeight = Application.GetRealHeight(8),
ThumbImagePath = "Public/ThumbImage.png",
ThumbImageHeight = Application.GetRealHeight(54),
- ProgressBarColor = CSS_Color.AuxiliaryColor1,
+ ProgressBarColor = function.trait_on_off.curValue.ToString() == "on" ? CSS_Color.AuxiliaryColor1 : CSS_Color.PromptingColor2,
ProgressTextColor = CSS_Color.FirstLevelTitleColor,
- ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ ProgressTextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
MaxValue = 100,
Progress = (function as Light).brightness,
- Tag = function.functionType + "_DimmerBar_" + function.sid
+ Tag = function.sid + "_DimmerBar",
+ SeekBarPadding = Application.GetRealWidth(20),
};
bodyDiv.AddChidren(dimmerControlBar);
var btnDimmerMaxValues = new Button()
{
- X = dimmerControlBar.Right,
+ X = Application.GetRealWidth(14 + 22+180),
Y = Application.GetRealHeight(85),
- Width = Application.GetRealWidth(35),
+ Width = Application.GetRealWidth(45),
Height = Application.GetRealHeight(21),
Text = "100%",
TextAlignment = TextAlignment.CenterLeft,
@@ -268,6 +306,7 @@
Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png",
SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png",
+ Tag = function.functionType + "_off_" + function.sid
};
bodyDiv.AddChidren(btnCurtainClose);
@@ -290,30 +329,78 @@
Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png",
SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png",
+ Tag = function.functionType + "_on_" + function.sid
};
bodyDiv.AddChidren(btnCurtainOpen);
-
-
-
+ LoadEvent_ControlCurtain(btnCurtainStop, btnCurtainOpen, btnCurtainClose, function as Curtain);
#endregion
}
/// <summary>
- /// 鍔犺浇绌鸿皟鍔熻兘鎺у埗鍗$墖
+ /// 鍔犺浇闊充箰鍔熻兘鎺у埗鍗$墖
/// </summary>
- void AcDiv()
+ void MusicFragment()
{
- #region AC
+ #region Music
+ var btnPrev = new Button()
+ {
+ X = Application.GetRealWidth(163),
+ Y = Application.GetRealHeight(58),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
+ UnSelectedImagePath = "MusicIcon/prev.png",
+ SelectedImagePath = "MusicIcon/prevSeletced.png",
+ };
+ bodyDiv.AddChidren(btnPrev);
+
+ var btnPlay = new Button()
+ {
+ X = Application.GetRealWidth(233),
+ Y = Application.GetRealHeight(58),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
+ UnSelectedImagePath = "MusicIcon/pause.png",
+ SelectedImagePath = "MusicIcon/play.png",
+ IsSelected = (function as A31MusicModel).A31PlayStatus.status == "play" ,
+ Tag = function.functionType + "_State_" + function.sid
+ };
+ bodyDiv.AddChidren(btnPlay);
+
+ var btnNext = new Button()
+ {
+ X = Application.GetRealWidth(303),
+ Y = Application.GetRealHeight(58),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
+ UnSelectedImagePath = "MusicIcon/next.png",
+ SelectedImagePath = "MusicIcon/nextSelected.png",
+ };
+ bodyDiv.AddChidren(btnNext);
+ LoadEvent_ControlMusic(btnPlay, btnNext, btnPrev, function as A31MusicModel);
#endregion
}
+
/// <summary>
- /// 鍔犺浇鍦扮儹鍔熻兘鎺у埗鍗$墖
+ /// 鍔犺浇鍔熻兘鐘舵�佷俊鎭寜閽�
/// </summary>
- void FloorHeatingDiv()
+ void LoadLastStatesButton()
{
- #region 鍦扮儹
- #endregion
+ var btnLastStates = new Button()
+ {
+ X = Application.GetRealWidth(10 + 32 + 8),
+ Y = Application.GetRealHeight(10 + 24 + 18),
+ Width = Application.GetRealWidth(200),
+ Height = Application.GetRealHeight(18),
+ Text = function.lastState,
+ TextAlignment = TextAlignment.CenterLeft,
+ SelectedTextColor = CSS_Color.PromptingColor1,
+ TextColor = 0x00000000,
+ TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
+ Tag = function.functionType + "_laststates_" + function.sid,
+ IsSelected = function.trait_on_off.curValue.ToString() == "on"
+ };
+ bodyDiv.AddChidren(btnLastStates);
}
}
-}
+}
\ No newline at end of file
--
Gitblit v1.8.0