using System;
|
using HDL_ON.Entity;
|
using HDL_ON.UI.CSS;
|
using Shared;
|
|
namespace HDL_ON.UI
|
{
|
public partial class RoomControlZone : FrameLayout
|
{
|
#region 区域控件
|
FrameLayout bodyDiv;
|
/// <summary>
|
/// 功能/场景icon
|
/// </summary>
|
Button btnIcon;
|
/// <summary>
|
/// 功能名称/场景名称
|
/// </summary>
|
Button btnName;
|
/// <summary>
|
/// 楼层信息显示按钮
|
/// </summary>
|
Button btnFromFloor;
|
/// <summary>
|
/// 收藏按钮
|
/// </summary>
|
Button btnCollectionIcon;
|
#endregion
|
|
#region 区域变量
|
Function function;
|
#endregion
|
public RoomControlZone(Function func)
|
{
|
bodyDiv = this;
|
function = func;
|
}
|
|
/// <summary>
|
/// 加载功能类型控制卡片
|
/// </summary>
|
public void LoadFunctionDiv()
|
{
|
if (function == null)
|
{
|
this.RemoveFromParent();
|
return;
|
}
|
LoadDiv();
|
|
|
#region 加载开关按钮
|
if (function.functionCategory != FunctionType.Curtain)//窗帘没有开关按钮
|
{
|
/// <summary>
|
/// 开关按钮
|
/// </summary>
|
Button btnSwitch;
|
if (function.functionType == "RGB" || function.functionType == "Dimmer")
|
{
|
btnSwitch = new Button()
|
{
|
X = Application.GetRealWidth(303),
|
Y = Application.GetRealHeight(78),
|
Width = Application.GetMinRealAverage(32),
|
Height = Application.GetMinRealAverage(32),
|
UnSelectedImagePath = "Public/PowerClose.png",
|
SelectedImagePath = "Public/PowerOpen.png",
|
};
|
bodyDiv.AddChidren(btnSwitch);
|
}
|
else
|
{
|
btnSwitch = new Button()
|
{
|
X = Application.GetRealWidth(303),
|
Y = Application.GetRealHeight(58),
|
Width = Application.GetMinRealAverage(32),
|
Height = Application.GetMinRealAverage(32),
|
UnSelectedImagePath = "Public/PowerClose.png",
|
SelectedImagePath = "Public/PowerOpen.png",
|
};
|
bodyDiv.AddChidren(btnSwitch);
|
}
|
//加载开关按钮事件
|
LoadEvent_LightSwitch(btnSwitch);
|
}
|
#endregion
|
|
switch (function.functionCategory)
|
{
|
case FunctionType.AC:
|
btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcThinIcon.png";
|
AcDiv(bodyDiv);
|
break;
|
case FunctionType.Curtain:
|
btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainThinIcon.png";
|
CurtainFragment(bodyDiv);
|
break;
|
case FunctionType.Light:
|
btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightThinIcon.png";
|
LoadLightcontrol(bodyDiv);
|
break;
|
case FunctionType.FloorHeating:
|
btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingThinIcon.png";
|
FloorHeatingDiv(bodyDiv);
|
break;
|
case FunctionType.Scene:
|
btnIcon.UnSelectedImagePath = "FunctionIcon/Scene/SceneIcon.png";
|
if ((function as Scene).sceneType == SceneType.MovieScene)
|
{
|
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;
|
}
|
break;
|
}
|
|
LoadEvent_DivSkipEvent();
|
LoadCollectionEvent();
|
}
|
|
/// <summary>
|
/// 加载控制卡片区域
|
/// </summary>
|
void LoadDiv()
|
{
|
btnIcon = new Button()
|
{
|
X = Application.GetRealWidth(10),
|
Y = Application.GetRealHeight(15),
|
Width = Application.GetMinRealAverage(32),
|
Height = Application.GetMinRealAverage(32),
|
};
|
bodyDiv.AddChidren(btnIcon);
|
|
btnName = new Button()
|
{
|
X = btnIcon.Right + Application.GetRealWidth(8),
|
Y = Application.GetRealHeight(10),
|
Width = Application.GetRealWidth(200),
|
Height = Application.GetRealHeight(24),
|
Text = function.name,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
};
|
bodyDiv.AddChidren(btnName);
|
|
btnFromFloor = new Button()
|
{
|
X = btnIcon.Right + Application.GetRealWidth(8),
|
Y = btnName.Bottom,
|
Width = Application.GetRealWidth(200),
|
Height = Application.GetRealHeight(18),
|
Text = function.GetRoomListName(),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
};
|
bodyDiv.AddChidren(btnFromFloor);
|
|
btnCollectionIcon = new Button()
|
{
|
X = Application.GetRealWidth(299),
|
Y = Application.GetRealHeight(10),
|
Width = Application.GetMinRealAverage(40),
|
Height = Application.GetMinRealAverage(40),
|
SelectedImagePath = "Collection/CollectionIcon.png",
|
UnSelectedImagePath = "Collection/CollectionGrayIcon.png",
|
IsSelected = function.collection
|
};
|
bodyDiv.AddChidren(btnCollectionIcon);
|
|
}
|
|
/// <summary>
|
/// 加载灯光功能控制卡片
|
/// </summary>
|
void LoadLightcontrol(FrameLayout view)
|
{
|
switch (function.functionType)
|
{
|
case "Dimmer":
|
case "RGB":
|
#region Dimmer
|
var btnDimmerMinValues = new Button()
|
{
|
X = Application.GetRealWidth(14),
|
Y = Application.GetRealHeight(85),
|
Width = Application.GetRealWidth(22),
|
Height = Application.GetRealHeight(21),
|
Text = "0%",
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
};
|
view.AddChidren(btnDimmerMinValues);
|
|
var dimmerControlBar = new DiyImageSeekBar()
|
{
|
X = btnDimmerMinValues.Right,
|
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,
|
ProgressTextColor = CSS_Color.FirstLevelTitleColor,
|
ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
MaxValue = 100,
|
Progress = 30,
|
};
|
view.AddChidren(dimmerControlBar);
|
|
var btnDimmerMaxValues = new Button()
|
{
|
X = dimmerControlBar.Right,
|
Y = Application.GetRealHeight(85),
|
Width = Application.GetRealWidth(35),
|
Height = Application.GetRealHeight(21),
|
Text = "100%",
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
};
|
view.AddChidren(btnDimmerMaxValues);
|
//加载调光事件
|
LoadEvent_LightDimming(dimmerControlBar);
|
#endregion
|
break;
|
}
|
}
|
|
/// <summary>
|
/// 加载窗帘功能控制卡片
|
/// </summary>
|
void CurtainFragment(FrameLayout view)
|
{
|
#region Curtain
|
var btnCurtainClose = new Button()
|
{
|
X = Application.GetRealWidth(163),
|
Y = Application.GetRealHeight(58),
|
Width = Application.GetMinRealAverage(32),
|
Height = Application.GetMinRealAverage(32),
|
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png",
|
SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png",
|
};
|
view.AddChidren(btnCurtainClose);
|
|
var btnCurtainStop = new Button()
|
{
|
X = Application.GetRealWidth(233),
|
Y = Application.GetRealHeight(58),
|
Width = Application.GetMinRealAverage(32),
|
Height = Application.GetMinRealAverage(32),
|
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainStopIcon.png",
|
SelectedImagePath = "FunctionIcon/Curtain/CurtainStopOnIcon.png",
|
};
|
view.AddChidren(btnCurtainStop);
|
|
var btnCurtainOpen = new Button()
|
{
|
X = Application.GetRealWidth(303),
|
Y = Application.GetRealHeight(58),
|
Width = Application.GetMinRealAverage(32),
|
Height = Application.GetMinRealAverage(32),
|
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png",
|
SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png",
|
};
|
view.AddChidren(btnCurtainOpen);
|
|
|
|
#endregion
|
}
|
|
/// <summary>
|
/// 加载空调功能控制卡片
|
/// </summary>
|
void AcDiv(FrameLayout view)
|
{
|
#region AC
|
#endregion
|
}
|
|
/// <summary>
|
/// 加载地热功能控制卡片
|
/// </summary>
|
void FloorHeatingDiv(FrameLayout view)
|
{
|
#region 地热
|
#endregion
|
}
|
}
|
}
|