From bee7814dba8e033d0f36060926275b90c85c779c Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 06 九月 2023 14:39:57 +0800
Subject: [PATCH] 2023年09月06日14:39:55

---
 HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs |  116 ++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 81 insertions(+), 35 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs
index 2aee513..a1e3c04 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/MusicPage.cs
@@ -2,6 +2,8 @@
 using System.Collections.Generic;
 using HDL_ON.UI.Music;
 using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView;
+using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity;
+using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock;
 using Shared;
 using static HDL_ON.UI.UI2.FuntionControlView.Aks.AksPage;
 namespace HDL_ON.UI.UI2.FuntionControlView.Aks
@@ -11,12 +13,24 @@
     /// </summary>
     public class MusicPage : BaseFramLayout
     {
-        public MusicPage()
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="remoteControlEntity">閬ユ帶鍣ㄥ璞�</param>
+        /// <param name="sequencerList">鏃跺簭鍣ㄥ垪琛�</param>
+        public MusicPage(RemoteControlEntity remoteControlEntity, List<SequencerEntity> sequencerList)
         {
+            this.remoteControl = remoteControlEntity;
+            this.sequencerList = sequencerList;
         }
-
-
-
+        /// <summary>
+        /// 鏃跺簭鍣ㄥ垪琛�
+        /// </summary>
+        private List<SequencerEntity> sequencerList;
+        /// <summary>
+        /// 褰撳墠鐨勯仴鎺у櫒瀵硅薄
+        /// </summary>
+        private RemoteControlEntity remoteControl;
         public Action<IntType> action;
         CornerFramLayout cornerFram;
         TypeSingleFramLayout typeSingleFramLayout;
@@ -41,53 +55,56 @@
 
         private void EventListener()
         {
-            cornerFram.selectAction += (value) =>
+
+            cornerFram.selectKeyAction += (keypadEntity) =>
             {
-                Console.WriteLine("1");
+
+                if (keypadEntity == null)
+                {
+                    return;
+                }
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name);
             };
 
             typeSingleFramLayout.SetClickListener((f) =>
             {
-                YkPage ykPage = new YkPage();
+                YkPage ykPage = new YkPage(this.remoteControl);
                 MainPage.BasePageView.AddChidren(ykPage);
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                 ykPage.Show();
             });
 
-            menuFram.SetTopClickListener((b) =>
+            menuFram.SetTopClickListener((keypadEntity) =>
             {
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name);
+            });
+            menuFram.SetBottomClickListener((keypadEntity) =>
+            {
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name);
+            });
+            menuFram.SetLeftClickListener((keypadEntity) =>
+            {
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name);
+            });
+            menuFram.SetRightClickListener((keypadEntity) =>
+            {
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name);
 
-                Console.WriteLine("5");
             });
-            menuFram.SetBottomClickListener((b) =>
+            menuFram.SetOkClickListener((keypadEntity) =>
             {
-                Console.WriteLine("6");
+                this.KeyControl(keypadEntity.keypad, keypadEntity.name);
             });
-            menuFram.SetLeftClickListener((b) =>
-            {
-                Console.WriteLine("7");
-            });
-            menuFram.SetRightClickListener((b) =>
-            {
-                Console.WriteLine("8");
-            });
-            menuFram.SetOkClickListener((b) =>
-            {
-                Console.WriteLine("9");
-            });
-
             typeMultiFramLayout.SetLeftFlClickListener((f) =>
             {
-                SxqPage sxqPage = new SxqPage();
+                SxqPage sxqPage = new SxqPage(this.sequencerList, this.remoteControl.deviceId);
                 MainPage.BasePageView.AddChidren(sxqPage);
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                 sxqPage.Show();
 
             });
-
             typeMultiFramLayout.SetRightFlClickListener((f) =>
             {
-                Console.WriteLine("4");
                 action?.Invoke(IntType.Player);
             });
 
@@ -105,42 +122,71 @@
                 TextAlignment = TextAlignment.CenterLeft,
                 TextColor = MusicColor.TextColor,
                 TextSize = TextSize.Text16,
-                TextID = StringId.bofangqi,
+                //TextID = StringId.bofangqi,
+                Text = this.remoteControl.name,
             };
             this.AddChidren(btnTitle);
 
             cornerFram = new CornerFramLayout(343, 452, 17);
+            this.AddChidren(cornerFram);
             cornerFram.X = Application.GetRealWidth(16);
             cornerFram.Y = btnTitle.Bottom + Application.GetRealHeight(16);
-            this.AddChidren(cornerFram);
             cornerFram.SetMargin(16, 0, 16, 0);
-            cornerFram.LoadButtonPage(AksCommonMethod.Current.GetMusicKeypadList(),4);
+            cornerFram.LoadButtonPage(AksCommonMethod.Current.GetMusicKeypadList(), 4);
 
 
             CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 364, 17);
+            this.AddChidren(cornerBottomFram);
             cornerBottomFram.X = Application.GetRealWidth(16);
             cornerBottomFram.Y = cornerFram.Bottom + Application.GetRealHeight(16);
             cornerBottomFram.BackgroundColor = MusicColor.WhiteColor;
             cornerBottomFram.Radius = (uint)Application.GetRealHeight(17);
-            this.AddChidren(cornerBottomFram);
+
 
             typeSingleFramLayout = new TypeSingleFramLayout();
-            typeSingleFramLayout.singleFramLayout.Y = Application.GetRealHeight(24);
             typeSingleFramLayout.AddView(cornerBottomFram);
+            typeSingleFramLayout.singleFramLayout.Y = Application.GetRealHeight(24);
+
 
             menuFram = new MenuFramLayout();
-            menuFram.Y = typeSingleFramLayout.singleFramLayout.Bottom + Application.GetRealHeight(32);
             menuFram.AddView(cornerBottomFram);
+            menuFram.Y = typeSingleFramLayout.singleFramLayout.Bottom + Application.GetRealHeight(32);
+
 
             typeMultiFramLayout = new TypeMultiFramLayout();
-            typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32);
             typeMultiFramLayout.AddView(cornerBottomFram);
-            typeMultiFramLayout.btnBottonRightName.TextID = StringId.bofangqi;
+            typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32);
+            //typeMultiFramLayout.btnBottonRightName.TextID = StringId.bofangqi;
+            typeMultiFramLayout.btnBottonRightName.Text = this.remoteControl.name;
 
             this.AdjustRealHeight(16);
         }
 
+        /// <summary>
+        /// 鎸夐敭鎺у埗
+        /// </summary>
+        /// <param name="keypad"><鎸夐敭鏍囪瘑/param>
+        /// <param name="keyName"><鎸夐敭鍚嶇О(鎵撳嵃鐢ㄧ殑)/param>
+        private void KeyControl(string keypad, string keyName)
+        {
+            //CommonMethod.Current.Loading.Start();
+            CommonMethod.Current.SunThread(() =>
+            {
+                try
+                {
+                    SendMethod.Current.KeypadExecute(remoteControl.deviceId, remoteControl.rcId, keypad, keyName);
+                }
+                catch { }
+                finally
+                {
+                    CommonMethod.Current.MainThread(() =>
+                    {
+                        //CommonMethod.Current.Loading.Hide();
+                    });
+                }
+            });
 
+        }
 
     }
 }

--
Gitblit v1.8.0