From 592974441a4df95fffd9167c90192da1a390b1c2 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 06 六月 2023 11:51:12 +0800
Subject: [PATCH] Merge branch 'Dev-Branch'

---
 HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs |  122 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 113 insertions(+), 9 deletions(-)

diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
index db7cfe9..6c9a2e3 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -38,12 +38,18 @@
         /// 鏄惁鍦ㄨ皟鍏�
         /// </summary>
         bool onDimmerBar;
+        /// <summary>
+        /// 鍒犻櫎璁惧鍚庡洖璋冪粰鐣岄潰鍒锋柊
+        /// </summary>
+        Action action;
+
         #endregion
-        public FunctionControlZone(Function func)
+        public FunctionControlZone(Function func,Action action)
         {
             bodyDiv = this;
             bodyDiv.Tag = func.sid;
             function = func;
+            this.action = action;
         }
 
         public override void RemoveFromParent()
@@ -57,17 +63,25 @@
         /// </summary>
         public void LoadFunctionDiv()
         {
-            //todo 澧炲姞璁惧锛屽鍔犲姛鑳藉垪琛ㄥ崱鐗�
             if (function == null)
             {
                 this.RemoveFromParent();
                 return;
             }
-            LoadDiv();
-
+            //if (function.spk == SPK.IpCam_Imou)
+            //{
+            //    InitIpCamDiv();
+            //}
+            //else
+            {
+                LoadDiv();
+            }
 
             btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/{function.IconName}.png";
-            
+            if(function.spk == SPK.GroupControl)
+            {
+                btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/lightswitch.png";
+            }
             if (SPK.CurtainSpkList().Contains(function.spk))
             {//绐楀笜娌℃湁寮�鍏虫寜閽�
                 CurtainFragment();
@@ -98,7 +112,7 @@
 
 
 
-                else if (function.spk == SPK.SenesorMegahealth)
+                else if (function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose  )
                 {
                     var btnStatus = new Button()
                     {
@@ -181,6 +195,11 @@
             {
                 btnIcon.UnSelectedImagePath = "FunctionIcon/DoorLock/DoorLock.png";
             }
+            else if (function.spk == SPK.VideoDoorLock)
+            {
+                btnIcon.UnSelectedImagePath =UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.GetVideoDoorLockIcon(UI2.FuntionControlView.VideoDoorLock.CommonMethod.Comerom.function);
+            }
+            else if(function.spk == SPK.GroupControl) { }
             else if (function.spk == SPK.HvacCac)
             {
                 var btnHumidityIcon = new Button()
@@ -243,11 +262,17 @@
 
 
             }
+            else if (function.spk == SPK.AcstParent) {
+            }
             else
             {
                 if (function.spk == SPK.ClothesHanger)//鏅捐。鏋�
                 {
                     ClothesHangerFragment();
+                }
+                else if(function.spk == SPK.IpCam_Imou)
+                {
+
                 }
                 else
                 {
@@ -315,6 +340,58 @@
 
    
         }
+        /// <summary>
+        /// 鍔犺浇ip鎽勫儚澶村崱鐗�
+        /// </summary>
+        private void InitIpCamDiv()
+        {
+            btnIcon = new Button()
+            {
+                X = Application.GetRealWidth(10),
+                Y = Application.GetRealHeight(15),
+                Width = Application.GetRealWidth(32),
+                Height = Application.GetRealWidth(32),
+            };
+            bodyDiv.AddChidren(btnIcon);
+
+            btnName = new Button()
+            {
+                X = Application.GetRealWidth(8 + 10 + 32),
+                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 = Application.GetRealWidth(8 + 10 + 32),
+                Y = Application.GetRealHeight(10 + 24),
+                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.collect
+            };
+
+        }
 
         /// <summary>
         /// 鍔犺浇鎺у埗鍗$墖鍖哄煙
@@ -373,7 +450,7 @@
                 bodyDiv.AddChidren(btnCollectionIcon);
             }
 
-            if(function.spk == SPK.SenesorMegahealth)
+            if(function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose)
             {
                 bodyDiv.AddChidren(btnCollectionIcon);
             }
@@ -393,6 +470,19 @@
                 };
                 bodyDiv.AddChidren(btnOffline);
             }
+            //鎺掑簭
+            //btnIcon.MouseLongEventHandler = (sender, e) => {
+            //    OrderEvent();
+            //};
+            //btnName.MouseLongEventHandler = (sender, e) => {
+            //    OrderEvent();
+            //};
+            //btnFromFloor.MouseLongEventHandler = (sender, e) => {
+            //    OrderEvent();
+            //};
+            //bodyDiv.MouseLongEventHandler = (sender, e) => {
+            //    OrderEvent();
+            //};
         }
 
         /// <summary>
@@ -403,6 +493,7 @@
             switch (function.spk)
             {
                 case SPK.LightDimming:
+                case SPK.LightRGBW:
                 case SPK.LightRGB:
                     #region Dimmer
                     var btnDimmerMinValues = new Button()
@@ -461,6 +552,14 @@
         /// </summary>
         void CurtainFragment()
         {
+            var onoffString = function.GetAttrState(FunctionAttributeKey.OnOff);
+            var percent = onoffString == "off" ? 0 : 100;
+            if (function.GetAttributes().Contains(FunctionAttributeKey.Percent))
+            {
+                string percentString = function.GetAttrState(FunctionAttributeKey.Percent);
+                int.TryParse(percentString, out percent);
+            }
+
             #region Curtain
             var btnCurtainClose = new Button()
             {
@@ -470,7 +569,7 @@
                 Height = Application.GetMinRealAverage(32),
                 UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png",
                 SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png",
-                IsSelected = function.GetAttrState(FunctionAttributeKey.OnOff) == "off",
+                IsSelected = percent == 0,
                 Tag = function.sid + "_off"
             };
             bodyDiv.AddChidren(btnCurtainClose);
@@ -501,7 +600,7 @@
                 UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png",
                 SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png",
                 Tag = function.sid + "_on",
-                IsSelected = function.GetAttrState(FunctionAttributeKey.OnOff) == "on",
+                IsSelected = percent != 0,
             };
             bodyDiv.AddChidren(btnCurtainOpen);
             if (function.spk == SPK.CurtainRoller)
@@ -546,6 +645,11 @@
         }
 
         /// <summary>
+        /// 鎺掑簭浜嬩欢 
+        /// </summary>
+        public Action OrderEvent;
+
+        /// <summary>
         /// 鍔犺浇闊充箰鍔熻兘鎺у埗鍗$墖
         /// </summary>
         void MusicFragment()

--
Gitblit v1.8.0