From 7167334c0e89dd84827d59e726123d14776e3a09 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 16 六月 2020 11:14:13 +0800
Subject: [PATCH] 2020-06-16-1

---
 HDL_ON/UI/Music/A31PlayMusicPage.cs |  145 ++++++++++++++++++++++++++++++++----------------
 1 files changed, 97 insertions(+), 48 deletions(-)

diff --git a/HDL_ON/UI/Music/A31PlayMusicPage.cs b/HDL_ON/UI/Music/A31PlayMusicPage.cs
index b6ef8f9..b5c0cbe 100644
--- a/HDL_ON/UI/Music/A31PlayMusicPage.cs
+++ b/HDL_ON/UI/Music/A31PlayMusicPage.cs
@@ -14,10 +14,22 @@
         public override void RemoveFromParent()
         {
             base.RemoveFromParent();
-            timerThread?.Abort();
             Volume.VolumeChange = null;
+            if (timerThread != null)
+            {
+                try
+                {
+                    if (timerThread.IsAlive)
+                    {
+                        timerThread.Abort();
+                    }
+                }
+                catch { }
+            }
+
         }
         View.PlayView playView = new View.PlayView();
+      
         public void Show()
         {
             ///1绉掑畾鏃舵洿鏂扮姸鎬�
@@ -51,6 +63,35 @@
             playView.viewFrameLayout(middLayout);
             #endregion
 
+
+            ///鍒囨崲鎾斁妯″紡鐐瑰嚮浜嬩欢;
+            playView.playOrderBtn.MouseUpEventHandler += (sender, e) =>
+             {
+                 string msg = Language.StringByID(StringId.switchTo);
+                 switch (A31MusicModel.Current.A31PlayStatus.loop)
+                 {
+                     //0鍒楄〃寰幆锛�1鍗曟洸寰幆锛�2闅忔満鎾斁;
+                     case "0":
+                         A31MusicModel.Current.A31PlayStatus.loop = "1";
+                         playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single.png";
+                         msg += Language.StringByID(StringId.singleMode);
+                         break;
+
+                     case "1":
+                         A31MusicModel.Current.A31PlayStatus.loop = "2";
+                         playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/random.png";
+                         msg += Language.StringByID(StringId.randomMode);
+                         break;
+                     case "2":
+                         A31MusicModel.Current.A31PlayStatus.loop = "0";
+                         playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/list.png";
+                         msg += Language.StringByID(StringId.listMode);
+                         break;
+                 }
+                 new PublicAssmebly().TipMsgAutoClose(msg, false,1000);
+                 string url = "http://" + A31MusicModel.Current.IPAddress + "/httpapi.asp?command=setPlayerCmd:" + "loopmode:" + A31MusicModel.Current.A31PlayStatus.loop;
+                 SendMethod.SendCommand(url);
+             };
             ///娣诲姞鍠滅埍鐐瑰嚮浜嬩欢;
             playView.loveBtn.MouseUpEventHandler += (sender, e) =>
             {
@@ -104,40 +145,7 @@
 
                 }
                 A31MusicModel.Save();
-
-                ////淇濆瓨
-                //string saveRoomUIName = "A31_" + A31MusicModel.Current.IPAddress;
-                //Shared.IO.FileUtils.WriteFileByBytes(saveRoomUIName,
-                //Shared.SimpleControl.CommonPage.MyEncodingUTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(A31MusicModel.Current)));
             };
-            ///鍒囨崲鎾斁妯″紡鐐瑰嚮浜嬩欢;
-            playView.playOrderBtn.MouseUpEventHandler += (sender, e) =>
-             {
-                 string msg = Language.StringByID(StringId.switchTo);
-                 switch (A31MusicModel.Current.A31PlayStatus.loop)
-                 {
-                     //0鍒楄〃寰幆锛�1鍗曟洸寰幆锛�2闅忔満鎾斁;
-                     case "0":
-                         A31MusicModel.Current.A31PlayStatus.loop = "1";
-                         playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/single.png";
-                         msg += Language.StringByID(StringId.singleMode);
-                         break;
-
-                     case "1":
-                         A31MusicModel.Current.A31PlayStatus.loop = "2";
-                         playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/random.png";
-                         msg += Language.StringByID(StringId.randomMode);
-                         break;
-                     case "2":
-                         A31MusicModel.Current.A31PlayStatus.loop = "0";
-                         playView.playOrderBtn.UnSelectedImagePath = "MusicIcon/list.png";
-                         msg += Language.StringByID(StringId.listMode);
-                         break;
-                 }
-                 new PublicAssmebly().TipMsgAutoClose(msg, false);
-                 string url = "http://" + A31MusicModel.Current.IPAddress + "/httpapi.asp?command=setPlayerCmd:" + "loopmode:" + A31MusicModel.Current.A31PlayStatus.loop;
-                 SendMethod.SendCommand(url);
-             };
             ///鎴戠殑鍒楄〃鐐瑰嚮浜嬩欢
             playView.playlistBtn.MouseUpEventHandler += (sender, e) =>
             {
@@ -234,11 +242,20 @@
                 ///绉婚櫎鐣岄潰
                 EventHandler<MouseEventArgs> removeFromParentView = (sen, e1) =>
                  {
-                     if (updateSelectedMusicThread != null && updateSelectedMusicThread.IsAlive)
+                   
+                     if (updateSelectedMusicThread != null)
                      {
-                         updateSelectedMusicThread.Abort();
-                         ///鍏抽棴绾跨▼
+                         try
+                         {
+                             if (updateSelectedMusicThread.IsAlive)
+                             {
+                                 updateSelectedMusicThread.Abort();
+                                 ///鍏抽棴绾跨▼
+                             }
+                         }
+                         catch { }
                      }
+
                      popFra.RemoveFromParent();
                  };
                 backIextBtn.MouseUpEventHandler += removeFromParentView;
@@ -313,12 +330,31 @@
                 });
 
             };
+            ///闊抽噺鍥炬爣鐐瑰嚮浜嬩欢
+            playView.volIconBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                if (A31MusicModel.Current.ServerClientType == 1 && A31MusicModel.Current.Slave.slave_list.Count != 0)
+                { ///涓绘挱鏀惧櫒
+                   //new View.DialogView { }.PlayerVolumeView(A31MusicModel.Current);
+
+                    var volumeView = new View.DialogView { };
+                    volumeView.PlayerVolumeView(A31MusicModel.Current);
+                    volumeView.UpdateVolume();
+
+                }
+            };
             ///闊抽噺杩涘害鏉$偣鍑讳簨浠�
+            int startVolume =0;//涔嬪墠鐨勯煶閲�
+            //int endVolume = 0;//鐜板湪鐨勯煶閲�
             EventHandler<int> progressClick = (sender, e) =>
             {
                 playView.volValueBtn.Text = playView.volSeekBar.Progress + "%";
-                SendMethod.ControlVolume(playView.volSeekBar.Progress, A31MusicModel.Current);
-                A31MusicModel.Current.A31PlayStatus.vol = playView.volSeekBar.Progress.ToString();
+                if (startVolume != e)
+                {
+                    startVolume = e;
+                    SendMethod.ControlVolume(e, A31MusicModel.Current);
+                    A31MusicModel.Current.A31PlayStatus.vol = e.ToString();
+                }
             };
             playView.volSeekBar.OnProgressChangedEvent += progressClick;
             playView.volSeekBar.OnStopTrackingTouchEvent += progressClick;
@@ -331,7 +367,7 @@
             playView.prevBtn.MouseUpEventHandler += (sender, e) =>
             {
                 playView.prevBtn.IsSelected = false;
-            };
+            }; 
             ///鏆傚仠/鎾斁鐐瑰嚮浜嬩欢
             playView.playBtn.MouseDownEventHandler += (sender, e) =>
             {
@@ -366,11 +402,18 @@
                     return;
                 }
                 playView.volSeekBar.Progress = volume;
-                SendMethod.ControlVolume(playView.volSeekBar.Progress, A31MusicModel.Current);
-                A31MusicModel.Current.A31PlayStatus.vol = playView.volSeekBar.Progress.ToString();
+
+                if (startVolume != volume)
+                {
+                    startVolume = volume;
+                    SendMethod.ControlVolume(volume, A31MusicModel.Current);
+                    A31MusicModel.Current.A31PlayStatus.vol = volume.ToString();
+                }
+
             };
 
         }
+      
         System.Threading.Thread timerThread;
         /// <summary>
         /// 瀹氭椂鏇存柊鐘舵��
@@ -472,9 +515,8 @@
                             //鏇存柊鎾斁鍣ㄩ煶閲忕粰绯荤粺闊抽噺
                             Volume.MusicVolume = playView.volSeekBar.Progress;
                             //褰撳墠鎾斁闊充箰鏃堕棿        
-                            int playSecond = int.Parse(A31MusicModel.Current.A31PlayStatus.curpos) / 1000;// + (int)(DateTime.Now - A31MusicModel.Current.LastDateTime).TotalSeconds;
-                                                                                                          //currentMusiceA31.musicPalyTime = (playSecond*10).ToString();
-                                                                                                          //鍒嗛挓
+                            int playSecond = int.Parse(A31MusicModel.Current.A31PlayStatus.curpos) / 1000 + (int)(DateTime.Now - A31MusicModel.Current.LastDateTime).TotalSeconds;
+
                             int playMusicMinute = playSecond / 60;
                             //绉掗挓
                             int playMusicSecond = playSecond % 60;
@@ -764,10 +806,17 @@
                 ///鐐瑰嚮鎾斁浜嬩欢
                 clickBtn.MouseUpEventHandler += (sender, e) =>
                 {
-                    if (updateSelectedMusicThread != null && updateSelectedMusicThread.IsAlive)
+                    if (updateSelectedMusicThread != null)
                     {
-                        updateSelectedMusicThread.Abort();
-                        ///鍏抽棴绾跨▼
+                        try
+                        {
+                            if (updateSelectedMusicThread.IsAlive)
+                            {
+                                updateSelectedMusicThread.Abort();
+                                ///鍏抽棴绾跨▼
+                            }
+                        }
+                        catch { }
                     }
                     System.Threading.Tasks.Task.Run(() =>
                     {

--
Gitblit v1.8.0