From b94f318b1cb5c3618dd53b5240c1d999c8427b71 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 29 十一月 2019 13:09:25 +0800
Subject: [PATCH] 2019.11.29

---
 ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs |   69 ++++++++++++++++------------------
 1 files changed, 33 insertions(+), 36 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs b/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs
index 9763cd1..e4b3ceb 100644
--- a/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs
@@ -78,6 +78,14 @@
         /// </summary>
         public Common.Room modifyRoom;
 
+        /// <summary>
+        /// OldBackgroundImagePath
+        /// </summary>
+        private string OldBackgroundImagePath;
+        /// <summary>
+        /// OldIconPathType
+        /// </summary>
+        public int OldIconPathType;
 
         #endregion
 
@@ -178,7 +186,6 @@
                     //璁惧璇︾粏璁剧疆鐣岄潰
                     void detailMouseUpEventHandler(object sender, MouseEventArgs e)
                     {
-                        //璁惧
                         if (targetDevice.Type == 0)
                         {
                             if (targetDevice.DeviceUI == null || targetDevice.DeviceUI.CommonDevice == null)
@@ -204,7 +211,6 @@
                             };
 
                         }
-                        //鏃堕棿闂撮殧
                         else if (targetDevice.Type == 2)
                         {
                             var delayTimeView = new SelectDelayTime();
@@ -223,7 +229,6 @@
                                 RefreshTargetListView();
                             };
                         }
-                        //鍦烘櫙
                         else if (targetDevice.Type == 1)
                         {
                             var sceneView = new SelectScene();
@@ -270,16 +275,7 @@
         /// </summary>
         private void Init()
         {
-            //foreach (var floor in Config.Instance.Home.FloorDics)
-            //{
-            //    floorIds.Add(floor.Key);
-            //    floorNames.Add(floor.Value);
-            //    if(Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key).Count>0)
-            //    {
-            //        roomNames.Add(Common.Room.CurrentRoom.GetRoomNamesByFloorId(floor.Key));
-            //        rooms.Add(Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key));
-            //    }
-            //}
+           
         }
 
         /// <summary>
@@ -330,7 +326,6 @@
                 Height = Application.GetMinRealAverage(464),
                 Gravity = Gravity.Center,
                 Radius = (uint)Application.GetMinRealAverage(CommonFormResouce.BigFormRadius),
-                //UnSelectedImagePath = ImagePath
                 UnSelectedImagePath = "SceneIcon/3.jpg"
             };
             imgFL.AddChidren(backGround);
@@ -421,12 +416,10 @@
             };
             addTargetFL.AddChidren(targetLine);
 
-            //娣诲姞鐩爣鍚庣殑灞曠ず鍒楄〃
             TargetListScrolView = new VerticalScrolViewLayout()
             {
                 Y = Application.GetRealHeight(49+127),
                 Height = Application.GetRealHeight(730-127-49),
-                //BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
             };
             targetFL.AddChidren(TargetListScrolView);
 
@@ -435,10 +428,22 @@
 
             if(isModify)
             {
-                backGround.UnSelectedImagePath = modifySceneUI.IconPath;
+                IconPathType = modifySceneUI.IconPathType;
+                OldIconPathType = modifySceneUI.IconPathType;
+                if (IconPathType != 0)
+                {
+                    OldBackgroundImagePath = modifySceneUI.IconPath;
+                }
+                if (modifySceneUI.IconPathType==0)
+                {
+                    backGround.UnSelectedImagePath = modifySceneUI.IconPath;
+                }
+                else
+                {
+                    backGround.UnSelectedImagePath = System.IO.Path.Combine(Config.Instance.FullPath, modifySceneUI.IconPath);
+                }
                 nameRow.SetTitle(modifySceneUI.Name);
                 zoneRow.SetTitle($"{Config.Instance.Home.GetFloorNameById(modifyRoom.FloorId)},{modifyRoom.Name}");
-                IconPathType = modifySceneUI.IconPathType;
                 curRoom = modifyRoom;
                 sceneTargetDevicesList.AddRange(modifySceneTargetDevicesList);
             }
@@ -447,7 +452,6 @@
 
             #region event
 
-            //閫夋嫨鑳屾櫙鍥�
             EventHandler<MouseEventArgs> backGroundIMGHander = (sender, e) =>
             {
                 if (curRoom != null && curRoom.IsSharedRoom)
@@ -547,7 +551,7 @@
                 {
                     selectFL.RemoveFromParent();
                     var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
-                    var fileName = $"Scene_{tradeTime}";
+                    var fileName = $"SceneIcon_{tradeTime}";
                     //閫氳繃鐩告満鎷嶇収瑁佸壀
                     CropImage.TakePicture((imagePath) =>
                     {
@@ -571,7 +575,7 @@
                 {
                     selectFL.RemoveFromParent();
                     var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
-                    var fileName = $"Scene_{tradeTime}";
+                    var fileName = $"SceneIcon_{tradeTime}";
                     //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀
                     CropImage.SelectPicture((imagePath) =>
                     {
@@ -832,8 +836,7 @@
                         try
                         {
                             var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
-                            var fileName = $"Scene_{tradeTime}";
-                            //鏀瑰悕
+                            var fileName = $"SceneIcon_{tradeTime}";
                             if (modifySceneUI.Name != nameRow.NameText.Text.Trim())
                             {
                                 if (Common.Room.CurrentRoom.GetSameFloorScenes(curRoom.FloorId).Find(s => s.Name == nameRow.NameText.Text.Trim()) != null)
@@ -841,31 +844,30 @@
                                     Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist);
                                     return;
                                 }
-                                //淇敼鍚嶅瓧
                                 var r = await ZigBee.Device.Scene.RenameSceneAsync(modifySceneUI.Id, nameRow.NameText.Text.Trim());
                                 var reName = r.sceneRenameResponseData.Result;
                                 if (reName == 0)
                                 {
-                                    //澶辫触
                                     return;
                                 }
                                 else if (reName == 1)
                                 {
-                                    //鎴愬姛
                                     modifySceneUI.Name = nameRow.NameText.Text.Trim();
 
                                 }
                                 else if (reName == 2)
                                 {
-                                    //娌℃湁璇ュ満鏅�
                                     return;
                                 }
                             }
-                            //鍥剧墖
-                            if(IconPathType==1 || IconPathType ==2)
+                            if (OldIconPathType != 0)
+                            {
+                                Shared.IO.FileUtils.DeleteFile(System.IO.Path.Combine(Config.Instance.FullPath, OldBackgroundImagePath));
+                            }
+                            if (IconPathType == 1 || IconPathType == 2)
                             {
                                 Shared.IO.FileUtils.WriteFileByBytes(System.IO.Path.Combine(Config.Instance.FullPath, fileName), backGround.ImageBytes);
-                                modifySceneUI.IconPath = System.IO.Path.Combine(Config.Instance.FullPath, fileName);
+                                modifySceneUI.IconPath = fileName;
                             }
                             else
                             {
@@ -982,12 +984,10 @@
                             }
                             else if (result == 0)
                             {
-                                //澶辫触
                                 Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain);
                             }
                             else if (result == -1)
                             {
-                                //宸插瓨鍦�
                                 Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist);
                             }
                         }
@@ -1020,11 +1020,10 @@
                             var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo);
                             var fileName = $"SceneIcon_{tradeTime}.png";
                             string imgPath;
-                            //鍥剧墖
                             if (IconPathType == 1 || IconPathType == 2)
                             {
                                 Shared.IO.FileUtils.WriteFileByBytes(System.IO.Path.Combine(Config.Instance.FullPath, fileName), backGround.ImageBytes);
-                                imgPath = System.IO.Path.Combine(Config.Instance.FullPath, fileName);
+                                imgPath = fileName;
                             }
                             else
                             {
@@ -1091,12 +1090,10 @@
                             }
                             else if (result == 0)
                             {
-                                //澶辫触
                                 CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.AddSceneFail);
                             }
                             else if (result == -1)
                             {
-                                //宸插瓨鍦�
                                 CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist);
                             }
                         }

--
Gitblit v1.8.0