From cb6e11c5067ecaba4d8f9907989154167c1e8943 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期三, 09 六月 2021 17:15:05 +0800
Subject: [PATCH] Merge branch 'wxr4' into dev-tzy
---
HDL_ON/UI/UI2/FuntionControlView/Electrical/StbPage.cs | 637 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 637 insertions(+), 0 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Electrical/StbPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Electrical/StbPage.cs
new file mode 100644
index 0000000..b96c396
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/Electrical/StbPage.cs
@@ -0,0 +1,637 @@
+锘縰sing 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 class StbPage : FrameLayout
+ {
+ #region 鎺т欢闆嗗悎
+ StbPage bodyView;
+ /// <summary>
+ /// 鍔熻兘鍚嶇О鎸夐挳
+ /// </summary>
+ Button btnFunctionName;
+ /// <summary>
+ /// 鎴块棿妤煎眰淇℃伅鎸夐挳
+ /// </summary>
+ Button btnFromFoorAndRoom;
+ /// <summary>
+ /// 鏀惰棌鎸夐挳
+ /// </summary>
+ Button btnCollection;
+
+ Button btnMenu;
+ 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 btnMore;
+ Button btn123;
+ Button btnMute;
+ Button btnPower;
+
+ #endregion
+
+ #region 鍖哄煙鍙橀噺
+ Function function;
+ Button btnCollection_Out;
+ Button btnFunctionName_Out;
+ Button btnFromFloor_Out;
+ /// <summary>
+ /// 鍒锋柊鏄剧ず淇℃伅
+ /// </summary>
+ Action actionRefresh;
+ #endregion
+
+ public StbPage(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);
+
+ btnMenu = new Button()
+ {
+ X = Application.GetRealWidth(116),
+ Y = Application.GetRealHeight(402),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "FunctionIcon/Electrical/TV/TVMenuIcon.png",
+ };
+ controlView.AddChidren(btnMenu);
+
+ 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);
+
+ btnMore = new Button()
+ {
+ X = Application.GetRealWidth(116),
+ Y = Application.GetRealHeight(466),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "FunctionIcon/AC/More.png",
+ };
+ controlView.AddChidren(btnMore);
+
+ 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.STB)).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);
+ }
+ };
+ btn.MouseDownEventHandler = (sender, e) => {
+ btn.IsSelected = true;
+ };
+ }
+
+
+
+ dialog.Show();
+ }
+
+ /// <summary>
+ /// 鍔犺浇浜嬩欢鍒楄〃
+ /// </summary>
+ void LoadEventList()
+ {
+ LoadControlEvent();
+ LoadCollectionEvent();
+
+ //鍥為��鍒锋柊淇℃伅浜嬩欢
+ actionRefresh = () => {
+ btnFunctionName.Text = btnFunctionName_Out.Text = function.name;
+ btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = function.GetRoomListName();
+ function.UpdataFuncitonInfo();
+ };
+ }
+
+ /// <summary>
+ /// 鏀惰棌鍔熻兘鎸夐挳浜嬩欢
+ /// </summary>
+ void LoadCollectionEvent()
+ {
+ btnCollection.MouseUpEventHandler += (sender, e) => {
+ btnCollection.IsSelected = function.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected;
+ function.CollectFunction();
+ };
+ }
+
+ /// <summary>
+ /// 鍔犺浇鎺у埗浜嬩欢
+ /// </summary>
+ void LoadControlEvent()
+ {
+ btnMenu.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("av_tv", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnChlPlus.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("ch+", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnChlReduce.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("ch-", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnVolPlus.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("volume+", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnVolReduce.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("volume-", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnBack.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("return", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+
+ btnMenu.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("menu", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btn123.MouseUpEventHandler = (sender, e) =>
+ {
+ ShowNumberView();
+ };
+ btnMute.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("mute", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnPower.MouseUpEventHandler = (sender, e) =>
+ {
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("on_off", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+
+
+ btnTopMenuUp.MouseDownEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIconUp.png";
+ };
+ btnTopMenuDown.MouseDownEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIconDown.png";
+ };
+ btnTopMenuLeft.MouseDownEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIconLeft.png";
+ };
+ btnTopMenuRight.MouseDownEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIconRight.png";
+ };
+ btnOk.MouseDownEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIconOk.png";
+ };
+ btnMenu.MouseUpEventHandler = (sender, e) =>
+ {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png";
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("menu", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnTopMenuUp.MouseUpEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png";
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("up", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnTopMenuLeft.MouseUpEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png";
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("left", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnTopMenuRight.MouseUpEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png";
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("right", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnTopMenuDown.MouseUpEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png";
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("down", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+ btnOk.MouseUpEventHandler = (sender, e) => {
+ topMenuView.BackgroundImagePath = "FunctionIcon/Electrical/TV/TVOkIcon.png";
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ Dictionary<string, string> d = new Dictionary<string, string>();
+ d.Add("ok", "");
+ Control.Ins.SendWriteCommand(function, d);
+ }
+ };
+
+
+ }
+
+ }
+}
--
Gitblit v1.8.0