using System;
|
using Shared;
|
using HDL_ON.UI.CSS;
|
using HDL_ON.Entity;
|
using System.Collections.Generic;
|
using HDL_ON.DriverLayer;
|
|
namespace HDL_ON.UI
|
{
|
public partial class TVPage : FrameLayout
|
{
|
#region 控件集合
|
TVPage bodyView;
|
/// <summary>
|
/// 功能名称按钮
|
/// </summary>
|
Button btnFunctionName;
|
/// <summary>
|
/// 房间楼层信息按钮
|
/// </summary>
|
Button btnFromFoorAndRoom;
|
/// <summary>
|
/// 收藏按钮
|
/// </summary>
|
Button btnCollection;
|
|
Button btnChangeTVAV;
|
FrameLayout topMenuView;
|
Button btnTopMenuUp;
|
Button btnTopMenuLeft;
|
Button btnTopMenuRight;
|
Button btnTopMenuDown;
|
Button btnOk;
|
FrameLayout channleView;
|
Button btnChlReduce;
|
Button btnChlPlus;
|
FrameLayout volView;
|
Button btnVolReduce;
|
Button btnVolPlus;
|
Button btnBack;
|
Button btnMenu;
|
Button btn123;
|
Button btnMute;
|
Button btnPower;
|
|
#endregion
|
|
#region 区域变量
|
TV tvTemp = new TV();
|
Function function;
|
Button btnCollection_Out;
|
Button btnFunctionName_Out;
|
Button btnFromFloor_Out;
|
/// <summary>
|
/// 刷新显示信息
|
/// </summary>
|
Action actionRefresh;
|
#endregion
|
|
public TVPage(Function func)
|
{
|
bodyView = this;
|
function = func;
|
}
|
|
|
public void LoadPage(Button btnCollectionIcon, Button btnFunctionNameOut, Button btnFromFloorOut)
|
{
|
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
|
btnCollection_Out = btnCollectionIcon;
|
btnFunctionName_Out = btnFunctionNameOut;
|
btnFromFloor_Out = btnFromFloorOut;
|
|
FrameLayout controlView = new FrameLayout()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealHeight(88),
|
Width = Application.GetRealWidth(327),
|
Height = Application.GetRealHeight(526),
|
BackgroundImagePath = "Public/Fragmentbg.png",
|
};
|
bodyView.AddChidren(controlView);
|
|
btnFunctionName = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Y = Application.GetRealHeight(14),
|
Width = Application.GetRealWidth(270),
|
Height = Application.GetRealHeight(37),
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel,
|
Text = function.name,
|
};
|
controlView.AddChidren(btnFunctionName);
|
|
btnFromFoorAndRoom = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Y = btnFunctionName.Bottom,
|
Width = Application.GetRealWidth(270),
|
Height = Application.GetRealHeight(21),
|
TextColor = CSS_Color.PromptingColor1,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
Text = function.GetRoomListName()
|
};
|
controlView.AddChidren(btnFromFoorAndRoom);
|
|
btnCollection = new Button()
|
{
|
X = Application.GetRealWidth(273),
|
Y = Application.GetRealHeight(14),
|
Width = Application.GetMinRealAverage(40),
|
Height = Application.GetMinRealAverage(40),
|
SelectedImagePath = "Collection/CollectionIcon.png",
|
UnSelectedImagePath = "Collection/CollectionGrayIcon.png",
|
IsSelected = function.collect
|
};
|
//controlView.AddChidren(btnCollection);
|
//2020-12-16 如果是成员隐藏收藏功能
|
//if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare)
|
//{
|
// controlView.AddChidren(btnCollection);
|
//}
|
|
|
|
#region 轮盘控制区域
|
topMenuView = new FrameLayout()
|
{
|
Y = Application.GetRealHeight(88),
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(199),
|
Height = Application.GetRealWidth(199),
|
BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png",
|
};
|
controlView.AddChidren(topMenuView);
|
|
btnTopMenuUp = new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(80),
|
Height = Application.GetRealWidth(50),
|
};
|
topMenuView.AddChidren(btnTopMenuUp);
|
|
btnTopMenuLeft = new Button()
|
{
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetRealWidth(50),
|
Height = Application.GetRealWidth(80),
|
};
|
topMenuView.AddChidren(btnTopMenuLeft);
|
|
btnTopMenuRight = new Button()
|
{
|
X = Application.GetRealWidth(150),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetRealWidth(50),
|
Height = Application.GetRealWidth(80),
|
};
|
topMenuView.AddChidren(btnTopMenuRight);
|
|
btnTopMenuDown = new Button()
|
{
|
Y = Application.GetRealWidth(150),
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(80),
|
Height = Application.GetRealWidth(50),
|
};
|
topMenuView.AddChidren(btnTopMenuDown);
|
|
btnOk = new Button()
|
{
|
Gravity = Gravity.Center,
|
Width = Application.GetRealWidth(100),
|
Height = Application.GetRealWidth(100),
|
};
|
topMenuView.AddChidren(btnOk);
|
|
|
|
#endregion
|
|
|
#region 频道音量调节
|
channleView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(26),
|
Y = Application.GetRealHeight(246),
|
Width = Application.GetRealWidth(44),
|
Height = Application.GetRealWidth(102),
|
BackgroundImagePath = "FunctionIcon/Electrical/TV/MenuBgIcon.png",
|
};
|
controlView.AddChidren(channleView);
|
|
btnChlPlus = new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealHeight(10),
|
Width = Application.GetRealWidth(24),
|
Height = Application.GetRealWidth(24),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/PlusIcon.png"
|
};
|
channleView.AddChidren(btnChlPlus);
|
|
Button btnChlText;
|
btnChlText = new Button()
|
{
|
Gravity = Gravity.CenterVertical,
|
Height = Application.GetRealWidth(23),
|
TextAlignment = TextAlignment.Center,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextID = StringId.Chl,
|
};
|
channleView.AddChidren(btnChlText);
|
|
btnChlReduce = new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealWidth(66),
|
Width = Application.GetRealWidth(24),
|
Height = Application.GetRealWidth(24),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/ReduceIcon.png"
|
};
|
channleView.AddChidren(btnChlReduce);
|
|
volView = new FrameLayout()
|
{
|
X = Application.GetRealWidth(257),
|
Y = Application.GetRealHeight(246),
|
Width = Application.GetRealWidth(44),
|
Height = Application.GetRealWidth(102),
|
BackgroundImagePath = "FunctionIcon/Electrical/TV/MenuBgIcon.png",
|
};
|
controlView.AddChidren(volView);
|
|
btnVolPlus = new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealHeight(10),
|
Width = Application.GetRealWidth(24),
|
Height = Application.GetRealWidth(24),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/PlusIcon.png"
|
};
|
volView.AddChidren(btnVolPlus);
|
|
Button btnVolText;
|
btnVolText = new Button()
|
{
|
Gravity = Gravity.CenterVertical,
|
Height = Application.GetRealWidth(23),
|
TextAlignment = TextAlignment.Center,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextID = StringId.Vol,
|
};
|
volView.AddChidren(btnVolText);
|
|
btnVolReduce = new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealWidth(66),
|
Width = Application.GetRealWidth(24),
|
Height = Application.GetRealWidth(24),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/ReduceIcon.png"
|
};
|
volView.AddChidren(btnVolReduce);
|
|
|
|
#endregion
|
|
#region 底部控制区域
|
btnBack = new Button()
|
{
|
X = Application.GetRealWidth(52),
|
Y = Application.GetRealHeight(402),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/TVBackIcon.png",
|
};
|
controlView.AddChidren(btnBack);
|
|
btnChangeTVAV = new Button()
|
{
|
X = Application.GetRealWidth(116),
|
Y = Application.GetRealHeight(402),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/TVAV.png",
|
};
|
controlView.AddChidren(btnChangeTVAV);
|
|
btn123 = new Button()
|
{
|
X = Application.GetRealWidth(180),
|
Y = Application.GetRealHeight(402),
|
Width = Application.GetRealWidth(40),
|
Height = Application.GetRealWidth(40),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/TV123Icon.png",
|
};
|
controlView.AddChidren(btn123);
|
|
btnMute = new Button()
|
{
|
X = Application.GetRealWidth(244),
|
Y = Application.GetRealHeight(402),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/TVMuteIcon.png",
|
};
|
controlView.AddChidren(btnMute);
|
|
btnMenu = new Button()
|
{
|
X = Application.GetRealWidth(116),
|
Y = Application.GetRealHeight(466),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/TVMenuIcon.png",
|
};
|
controlView.AddChidren(btnMenu);
|
|
btnPower = new Button()
|
{
|
X = Application.GetRealWidth(180),
|
Y = Application.GetRealHeight(466),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/Electrical/TV/TVPowerIcon.png",
|
};
|
controlView.AddChidren(btnPower);
|
|
#endregion
|
|
LoadEventList();
|
|
new TopViewDiv(bodyView, Language.StringByID(StringId.TV)).LoadTopView_FunctionTop(function, actionRefresh);
|
DriverLayer.Control.Ins.SendReadCommand(function);
|
|
}
|
|
|
void ShowNumberView()
|
{
|
Dialog dialog = new Dialog();
|
|
FrameLayout dialogView = new FrameLayout()
|
{
|
AnimateSpeed = 0.3f,
|
Animate = Animate.DownToUp,
|
};
|
dialog.AddChidren(dialogView);
|
|
dialogView.MouseUpEventHandler = (sender, e) =>
|
{
|
dialog.Close();
|
};
|
|
FrameLayout numberView = new FrameLayout()
|
{
|
Y = Application.GetRealHeight(403),
|
Height = Application.GetRealHeight(264),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
dialogView.AddChidren(numberView);
|
|
for (int i = 0; i < 10; i++)
|
{
|
Button btn = new Button()
|
{
|
Width = Application.GetRealWidth(98),
|
Height = Application.GetRealHeight(44),
|
Radius = (uint)Application.GetRealWidth(8),
|
BorderWidth = (uint)Application.GetRealWidth(1),
|
BorderColor = CSS_Color.PromptingColor1,
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
SelectedBackgroundColor = CSS_Color.MainColor,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
SelectedTextColor = CSS_Color.MainBackgroundColor,
|
IsBold = true,
|
Text = i.ToString(),
|
TextAlignment = TextAlignment.Center,
|
};
|
if (i == 1 || i == 4 || i == 7)
|
{
|
btn.X = Application.GetRealWidth(24);
|
|
}
|
else if (i == 2 || i == 5 || i == 8)
|
{
|
btn.X = Application.GetRealWidth(138);
|
}
|
else if (i == 3 || i == 6 || i == 9)
|
{
|
btn.X = Application.GetRealWidth(252);
|
}
|
else
|
{
|
btn.X = Application.GetRealWidth(138);
|
}
|
if (i == 0)
|
{
|
btn.Y = Application.GetRealHeight(204);
|
}
|
else if (i < 4)
|
{
|
btn.Y = Application.GetRealHeight(24);
|
|
}
|
else if (i<7)
|
{
|
btn.Y = Application.GetRealHeight(84);
|
}
|
else
|
{
|
btn.Y = Application.GetRealHeight(144);
|
}
|
numberView.AddChidren(btn);
|
btn.MouseUpEventHandler = (sender, e) => {
|
string index = (sender as Button ).Text;
|
btn.IsSelected = false;
|
if (DB_ResidenceData.Instance.GatewayType == 1)
|
{
|
Dictionary<string, string> d = new Dictionary<string, string>();
|
d.Add($"number_{index}", "");
|
Control.Ins.SendWriteCommand(function, d);
|
}
|
else
|
{
|
tvTemp.ControlTV(i, function);
|
}
|
};
|
btn.MouseDownEventHandler = (sender, e) => {
|
btn.IsSelected = true;
|
};
|
}
|
|
|
|
dialog.Show();
|
}
|
|
}
|
}
|