From f432344ed815e5b6b88ab42bcee50b45e664472e Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 05 六月 2020 15:49:22 +0800
Subject: [PATCH] 2020-06-05-01

---
 HDL-ON_Android/.DS_Store                       |    0 
 HDL_ON/UI/.DS_Store                            |    0 
 HDL_ON/UI/Music/A31PlayMusicPage.cs            |   10 +
 HDL_ON/UI/Music/SendMethod.cs                  |   15 +--
 .vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm |    0 
 HDL_ON/UI/Music/MusicMain.cs                   |    6 
 HDL_ON/UI/Music/View/MusicView.cs              |    2 
 HDL-ON_Android/Assets/.DS_Store                |    0 
 HDL_ON/.DS_Store                               |    0 
 .DS_Store                                      |    0 
 .vs/HDL_APP_Project/xs/sqlite3/storage.ide     |    0 
 .vs/HDL_APP_Project/xs/UserPrefs.xml           |   24 ++--
 .vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal |    0 
 HDL_ON/UI/Music/View/DialogView.cs             |  200 +++++++++++++++++++++++++++++++++++++++
 14 files changed, 230 insertions(+), 27 deletions(-)

diff --git a/.DS_Store b/.DS_Store
index a2788f2..7c8d1bc 100644
--- a/.DS_Store
+++ b/.DS_Store
Binary files differ
diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml
index ef106dc..c5510af 100644
--- a/.vs/HDL_APP_Project/xs/UserPrefs.xml
+++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,13 +1,12 @@
 锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default">
-  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/Music/A31LoveMusicList.cs">
+  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/Music/View/MusicView.cs">
     <Files>
-      <File FileName="HDL_ON/UI/Music/SendMethod.cs" Line="185" Column="1" />
-      <File FileName="../鏃х増鏈琈usic/MyMusic.cs" Line="1412" Column="1" />
-      <File FileName="HDL_ON/UI/Music/A31MusicModel.cs" Line="154" Column="1" />
-      <File FileName="HDL_ON/UI/Music/MusicMain.cs" Line="294" Column="84" />
-      <File FileName="HDL_ON/UI/Music/View/DialogView.cs" Line="561" Column="42" />
-      <File FileName="HDL_ON/UI/Music/A31PlayStatus.cs" Line="1" Column="1" />
-      <File FileName="HDL_ON/UI/Music/A31LoveMusicList.cs" Line="23" Column="1" />
+      <File FileName="HDL_ON/UI/Music/View/DialogView.cs" Line="1290" Column="66" />
+      <File FileName="HDL_ON/UI/Music/MusicMain.cs" Line="219" Column="28" />
+      <File FileName="HDL_ON/UI/Music/SendMethod.cs" Line="150" Column="49" />
+      <File FileName="HDL_ON/UI/Music/A31MusicModel.cs" Line="217" Column="29" />
+      <File FileName="HDL_ON/UI/Music/A31PlayMusicPage.cs" Line="384" Column="19" />
+      <File FileName="HDL_ON/UI/Music/View/MusicView.cs" Line="24" Column="60" />
     </Files>
     <Pads>
       <Pad Id="ProjectPad">
@@ -18,8 +17,9 @@
               <Node name="Entity" expanded="True" />
               <Node name="UI" expanded="True">
                 <Node name="Music" expanded="True">
-                  <Node name="View" expanded="True" />
-                  <Node name="A31LoveMusicList.cs" selected="True" />
+                  <Node name="View" expanded="True">
+                    <Node name="MusicView.cs" selected="True" />
+                  </Node>
                 </Node>
                 <Node name="UI0-Public" expanded="True" />
                 <Node name="UI2" expanded="True">
@@ -29,7 +29,9 @@
             </Node>
             <Node name="HDL-ON_Android" expanded="True">
               <Node name="Assets" expanded="True">
-                <Node name="Phone" expanded="True" />
+                <Node name="Phone" expanded="True">
+                  <Node name="MusicIcon" expanded="True" />
+                </Node>
               </Node>
             </Node>
           </Node>
diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide
index 89f9ab6..ffec704 100644
--- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide
+++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide
Binary files differ
diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm
index dd912aa..4076a34 100644
--- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm
+++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm
Binary files differ
diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal
index 0df1b98..d9bd4d9 100644
--- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal
+++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal
Binary files differ
diff --git a/HDL-ON_Android/.DS_Store b/HDL-ON_Android/.DS_Store
index cece0c5..e0a823f 100644
--- a/HDL-ON_Android/.DS_Store
+++ b/HDL-ON_Android/.DS_Store
Binary files differ
diff --git a/HDL-ON_Android/Assets/.DS_Store b/HDL-ON_Android/Assets/.DS_Store
index da00722..735ad8d 100644
--- a/HDL-ON_Android/Assets/.DS_Store
+++ b/HDL-ON_Android/Assets/.DS_Store
Binary files differ
diff --git a/HDL_ON/.DS_Store b/HDL_ON/.DS_Store
index 89f7afd..e73ff38 100644
--- a/HDL_ON/.DS_Store
+++ b/HDL_ON/.DS_Store
Binary files differ
diff --git a/HDL_ON/UI/.DS_Store b/HDL_ON/UI/.DS_Store
index c018345..6388979 100644
--- a/HDL_ON/UI/.DS_Store
+++ b/HDL_ON/UI/.DS_Store
Binary files differ
diff --git a/HDL_ON/UI/Music/A31PlayMusicPage.cs b/HDL_ON/UI/Music/A31PlayMusicPage.cs
index b6ef8f9..d97492b 100644
--- a/HDL_ON/UI/Music/A31PlayMusicPage.cs
+++ b/HDL_ON/UI/Music/A31PlayMusicPage.cs
@@ -313,6 +313,14 @@
                 });
 
             };
+            ///闊抽噺鍥炬爣鐐瑰嚮浜嬩欢
+            playView.volIconBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                if (A31MusicModel.Current.ServerClientType == 1 && A31MusicModel.Current.Slave.slave_list.Count != 0)
+                { ///涓绘挱鏀惧櫒
+                    new View.DialogView { }.PlayerVolumeView(A31MusicModel.Current);
+                }
+            };
             ///闊抽噺杩涘害鏉$偣鍑讳簨浠�
             EventHandler<int> progressClick = (sender, e) =>
             {
@@ -331,7 +339,7 @@
             playView.prevBtn.MouseUpEventHandler += (sender, e) =>
             {
                 playView.prevBtn.IsSelected = false;
-            };
+            }; 
             ///鏆傚仠/鎾斁鐐瑰嚮浜嬩欢
             playView.playBtn.MouseDownEventHandler += (sender, e) =>
             {
diff --git a/HDL_ON/UI/Music/MusicMain.cs b/HDL_ON/UI/Music/MusicMain.cs
index 997df56..f014ced 100644
--- a/HDL_ON/UI/Music/MusicMain.cs
+++ b/HDL_ON/UI/Music/MusicMain.cs
@@ -106,7 +106,7 @@
                         if (obj == null)
                         {
                             ///杩欓噷瑕佽鍙栦富浠庡叧绯�
-                            //readServerOrClientMode();
+                            readServerOrClientMode();
                             A31MusicModel.Save();
                             return;
                         }
@@ -360,7 +360,7 @@
                                         UniqueDeviceName = slave.uuid.Replace("uuid:", ""),
                                         Name = slave.name,
                                         IsCanShow = false,
-                                        IsOnLine = false,
+                                        IsOnLine = false,//true浣滅敤涓轰簡璇诲彇浠庢挱鏀惧櫒鐨勯煶閲�
                                     });
                                 }
                                 //濡傛灉鎵惧埌灏辨洿鏂颁负浠庣殑
@@ -372,7 +372,7 @@
                                     tempA31Player.Name = slave.name;
                                     tempA31Player.UniqueDeviceName = slave.uuid.Replace("uuid:", "");
                                     tempA31Player.IsCanShow = false;
-                                    tempA31Player.IsOnLine = false;
+                                    tempA31Player.IsOnLine = false;//true浣滅敤涓轰簡璇诲彇浠庢挱鏀惧櫒鐨勯煶閲�
 
                                 }
                             }
diff --git a/HDL_ON/UI/Music/SendMethod.cs b/HDL_ON/UI/Music/SendMethod.cs
index b9b530d..a6ae4bb 100644
--- a/HDL_ON/UI/Music/SendMethod.cs
+++ b/HDL_ON/UI/Music/SendMethod.cs
@@ -153,22 +153,17 @@
             try
             {
 
-                if (a31MusicModel.ServerClientType == -1)
+                if (a31MusicModel.ServerClientType == 1)
                 {
-                    var result = OpenWeb("http://" + a31MusicModel.MainPlayIP + "/httpapi.asp?command=multiroom:getSlaveList");
-                    if (result != null)
+                    var result = OpenWeb("http://" + a31MusicModel.IPAddress + "/httpapi.asp?command=multiroom:getSlaveList");
+                    if (result != null && result != "Failed")
                     {
                         var slaves = Newtonsoft.Json.JsonConvert.DeserializeObject<Slaves>(result);
-                        if (slaves != null && slaves.slave_list != null)
+                        if (slaves != null && slaves.slave_list != null && slaves.slave_list.Count != 0)
                         {
-                            var slave = slaves.slave_list.Find((obj) => obj.uuid.Replace("uuid:", "") == a31MusicModel.UniqueDeviceName);
-                            if (slave != null)
-                            {
-                                a31MusicModel.A31PlayStatus.vol = slave.volume;
-                            }
+                            a31MusicModel.Slave = slaves;
                         }
                     }
-                    return;
                 }
 
                 WebClient webClient = new WebClient();
diff --git a/HDL_ON/UI/Music/View/DialogView.cs b/HDL_ON/UI/Music/View/DialogView.cs
index 44b0034..b9aff05 100644
--- a/HDL_ON/UI/Music/View/DialogView.cs
+++ b/HDL_ON/UI/Music/View/DialogView.cs
@@ -1136,7 +1136,205 @@
                 return a31player.Name;
             }
         }
-       
+        /// <summary>
+        /// 鎾斁鍣ㄩ煶閲忕殑鐣岄潰
+        /// </summary>
+        /// <param name="a31player">涓绘挱鏀惧櫒</param>
+       public  void PlayerVolumeView(A31MusicModel a31player)
+        {
+            #region
+            //涓绘帶浠�
+            Dialog dialog = new Dialog()
+            {
+                //BackgroundColor = Color.PopupBackgroundColor,
+            };
+            dialog.Show();
+            //鐖舵帶浠�
+            FrameLayout frame = new FrameLayout { };
+            dialog.AddChidren(frame);
+            frame.MouseUpEventHandler += (sen, e) =>
+            {
+                dialog.Close();
+            };
+            //鐧借壊蹇埗鎺т欢
+            FrameLayout dialogFra = new FrameLayout()
+            {
+                X = Application.GetRealWidth(16),
+                Y = Application.GetRealHeight(397),
+                Width = Application.GetRealWidth(344),
+                Height = Application.GetRealHeight(250),
+                BackgroundColor = Color.WhiteColor,
+                Radius = (uint)Application.GetRealHeight(12),
+            };
+            frame.AddChidren(dialogFra);
+            //鏄剧ず澶撮儴淇℃伅鐖舵帶浠�
+            FrameLayout topFra = new FrameLayout()
+            {
+                Width = Application.GetRealWidth(344),
+                Height = Application.GetRealHeight(58),
+            };
+            dialogFra.AddChidren(topFra);
+            //鍙栨秷鎺т欢
+            Button cancelnBtn = new Button
+            {
+                X = Application.GetRealWidth(20),
+                Y = Application.GetRealHeight(15),
+                Width = Application.GetRealWidth(60),
+                Height = Application.GetRealHeight(20),
+                TextID = StringId.cancelMusic,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = Color.MusicNoTxetColor,
+                TextSize = TextSize.Text14,
+            };
+            topFra.AddChidren(cancelnBtn);
+            cancelnBtn.MouseUpEventHandler += (sen, e) =>
+            {
+                dialog.Close();
+            };
+            //鏍囬鎺т欢
+            Button txetBtn = new Button
+            {
+                X = cancelnBtn.Right + Application.GetRealWidth(20),
+                Y = Application.GetRealHeight(14),
+                Width = Application.GetRealWidth(152),
+                Height = Application.GetRealHeight(22),
+                TextColor = Color.TextColor,
+                TextSize = TextSize.Text16,
+                TextAlignment = TextAlignment.Center,
+                //TextID = StringId.readyPlay,
+                Text="璋冭妭闊抽噺",
+                IsBold = true,
+            };
+            topFra.AddChidren(txetBtn);
+            //纭鎺т欢
+            Button confirmBtn = new Button
+            {
+                X = Application.GetRealWidth(344 - 60 - 20),
+                Y = Application.GetRealHeight(15),
+                Width = Application.GetRealWidth(60),
+                Height = Application.GetRealHeight(20),
+                TextID = StringId.confirmMusic,
+                TextAlignment = TextAlignment.CenterRight,
+                TextColor = Color.SelectedColor,
+                TextSize = TextSize.Text14,
+            };
+            topFra.AddChidren(confirmBtn);
+            confirmBtn.MouseUpEventHandler += (sen, e) =>
+            {
+                dialog.Close();
+            };
+
+            VerticalScrolViewLayout verticalScrolViewLayout = new VerticalScrolViewLayout
+            {
+                Y = Application.GetRealHeight(58),
+                Height = dialogFra.Height - Application.GetRealHeight(58),
+                Width = Application.GetRealWidth(343),
+            };
+            dialogFra.AddChidren(verticalScrolViewLayout);
+
+            var playList = new List<A31MusicModel>();
+            for (int i = 0; i < a31player.Slave.slave_list.Count; i++)
+            {
+                var slave = a31player.Slave.slave_list[i];
+                var music_If = A31MusicModel.A31MusicModelList.Find((c) => c.UniqueDeviceName == slave.uuid.Replace("uuid:", ""));
+                if (music_If != null)
+                {
+                    music_If.ServerClientType = -1;
+                    music_If.A31PlayStatus.vol = slave.volume;
+                    playList.Add(music_If);
+                }
+            }
+            playList.Add(a31player);
+
+            for (int i = 0; i < playList.Count; i++)
+            {
+                var player = playList[i];
+                FrameLayout volumeFra = new FrameLayout
+                {
+                    Height = Application.GetRealHeight(64),
+                };
+                verticalScrolViewLayout.AddChidren(volumeFra);
+                Button volumeTextBtn = new Button
+                {
+                    X = Application.GetRealWidth(28),
+                    Y = Application.GetRealHeight(8),
+                    Width = Application.GetRealWidth(200),
+                    Height = Application.GetRealHeight(14),
+                    TextColor = Color.MusicNoTxetColor,
+                    TextSize = TextSize.Text10,
+                    TextAlignment = TextAlignment.CenterLeft,
+                   
+                };
+                volumeFra.AddChidren(volumeTextBtn);
+                if (player.ServerClientType == -1)
+                {
+                    volumeTextBtn.Text = player.Name + "闊抽噺";
+                }
+                else if (player.ServerClientType == 1)
+                {
+                    volumeTextBtn.Text = "鎬婚煶閲�";
+                }
+
+                DiyImageSeekBar volSeekBar = new DiyImageSeekBar
+                {
+                    Y = Application.GetRealHeight(12),
+                    X = Application.GetRealWidth(28),
+                    Width = Application.GetRealWidth(240),
+                    Height = Application.GetRealHeight(54),//杩涘害鏉$埗鎺т欢鑳屾櫙楂樺害
+                    IsProgressTextShow = false,//鏄剧ず鐧惧垎姣�
+                    IsClickable = true,//杩涘害鏉℃槸鍚︽粦鍔�
+                    ProgressBarColor = Color.SelectedColor,//閫変腑杩涘害鏉¢鑹�
+                    ThumbImagePath = "MusicIcon/progressIcon.png",//杩涘害鏉℃寜閽浘鏍�
+                    ThumbImageHeight = Application.GetMinRealAverage(54),//杩涘害鏉℃寜閽浘鏍囩殑楂樺害锛堥粯璁ゆ鏂瑰舰锛氬鍜岄珮涓�鏍凤級
+                    SeekBarViewHeight = Application.GetMinRealAverage(8),//杩涘害鏉$殑楂樺害
+                    Progress=int.Parse(player.A31PlayStatus.vol),
+                    //ProgressChangeDelayTime=
+                };
+                volumeFra.AddChidren(volSeekBar);
+               
+                Button valueBtn = new Button
+                {
+                    X = Application.GetRealWidth(289),
+                    Y = Application.GetRealHeight(31),
+                    Width = Application.GetRealWidth(26),
+                    Height = Application.GetRealHeight(17),
+                    TextColor = Color.MusicNoTxetColor,
+                    TextSize = TextSize.Text12,
+                    TextAlignment = TextAlignment.CenterLeft,
+                    Text = player.A31PlayStatus.vol + "%",
+                };
+                volumeFra.AddChidren(valueBtn);
+
+                ///闊抽噺杩涘害鏉$偣鍑讳簨浠�
+                EventHandler<int> progressClick = (sender, e) =>
+                {
+                    if (player.ServerClientType == -1)
+                    {
+                        valueBtn.Text = volSeekBar.Progress + "%";
+                        SendMethod.ControlVolume(volSeekBar.Progress, player);
+                    }
+                    else if (player.ServerClientType == 1)
+                    {
+                        for (int j = 0; j < playList.Count; j++)
+                        {
+                            var music = playList[j];
+                            var frameLayout = (FrameLayout)verticalScrolViewLayout.GetChildren(j);
+                            var diyImageSeekBar = (DiyImageSeekBar)frameLayout.GetChildren(1);
+                            var button = (Button)frameLayout.GetChildren(2);
+                            diyImageSeekBar.Progress = volSeekBar.Progress;
+                            button.Text = volSeekBar.Progress + "%";
+                            SendMethod.ControlVolume(volSeekBar.Progress, music);
+                        }
+                    }
+                };
+                volSeekBar.OnProgressChangedEvent += progressClick;
+                volSeekBar.OnStopTrackingTouchEvent += progressClick;
+            }
+            #endregion
+
+        }
+
+
     }
     [System.Serializable]
     public class A31Wifi鈥�    {
diff --git a/HDL_ON/UI/Music/View/MusicView.cs b/HDL_ON/UI/Music/View/MusicView.cs
index db385d8..2f98906 100644
--- a/HDL_ON/UI/Music/View/MusicView.cs
+++ b/HDL_ON/UI/Music/View/MusicView.cs
@@ -65,7 +65,7 @@
             TextID=StringId.merge,
             X = Application.GetRealWidth(214 + 33),
             Y = Application.GetRealHeight(18 + 4),
-            Width = Application.GetRealWidth(24),
+            Width = Application.GetRealWidth(24+3),
             Height = Application.GetRealHeight(17),
             TextColor = Color.TextColor,
             TextSize=TextSize.Text12,

--
Gitblit v1.8.0