Esempio n. 1
0
 private void setGuiFromSongObject(OpenChords.Entities.Song song)
 {
     SongMetaData.fillInSongMeta(song);
     txtSongEditLyrics.Text = song.lyrics;
     txtSongEditNotes.Text  = song.notes;
     pnlSongEdit.Visible    = true;
 }
Esempio n. 2
0
        private OpenChords.Entities.Song getSongObjectFromGui()
        {
            var song = SongMetaData.getSongObject();

            song.lyrics = txtSongEditLyrics.Text;
            song.notes  = txtSongEditNotes.Text;
            return(song);
        }
Esempio n. 3
0
 public bool[] GetPlaylistStatus(SongMetaData songMetaData)
 {
     bool[] playlistStatus = new bool[playlists.Count];
     for (int i = 0; i < playlists.Count; i++)
     {
         playlistStatus[i] = playlists[i].songs.Contains(songMetaData);
     }
     return(playlistStatus);
 }
Esempio n. 4
0
 public void RemoveFromPlaylist(int playlistNumber, SongMetaData song)
 {
     if (playlists.ContainsKey(playlistNumber))
     {
         if (playlists[playlistNumber].songs.Contains(song))
         {
             playlists[playlistNumber].songs.Remove(song);
         }
     }
 }
Esempio n. 5
0
 void UpdateSongVisualizer(SongMetaData s)
 {
     currentSongName.text = s.title;
     foreach (var item in playerObjects)
     {
         if (!item.activeSelf)
         {
             item.SetActive(true);
         }
     }
 }
        public SongMetaData GetSongMetaData(string link)
        {
            var res = new SongMetaData();

            var newUrl = $"https://song.link/{link}";

            using (HttpClient client = new HttpClient())
            {
                try
                {
                    var response = client.GetAsync(newUrl).GetAwaiter().GetResult();
                    response.EnsureSuccessStatusCode();
                    var responseBody = response.Content.ReadAsStringAsync().GetAwaiter().GetResult();

                    var doc = new HtmlDocument();
                    doc.LoadHtml(responseBody);

                    res.ImageUrl = doc.DocumentNode
                                   .SelectSingleNode("//img")?
                                   .Attributes["src"]?.Value;

                    // if (res.ImageUrl == null)
                    //  return null;
                    //
                    if (res.ImageUrl == null)
                    {
                        var style = HttpUtility.HtmlDecode(doc.DocumentNode
                                                           .SelectSingleNode("//div[@class='ytp-cued-thumbnail-overlay-image']")?
                                                           .Attributes["style"]?.Value);
                        var start = "background-image: url(\"";
                        var end   = "\");";
                        style.TrimStart(start.ToCharArray());
                        style.TrimEnd(end.ToCharArray());
                        res.ImageUrl = style;
                    }

                    res.Title = HttpUtility.HtmlDecode(doc.DocumentNode
                                                       .SelectSingleNode("//div[@class='css-dduo7c']").InnerText);
                    res.Artist = HttpUtility.HtmlDecode(doc.DocumentNode
                                                        .SelectSingleNode("//div[@class='css-fd8fdn']").InnerText);

                    res.Link = response.RequestMessage.RequestUri.ToString();
                }
                catch (HttpRequestException e)
                {
                    Console.WriteLine("\nException Caught!");
                    Console.WriteLine("Message :{0} ", e.Message);
                    return(null);
                }
            }

            return(res);
        }
    public List <SongMetaData> GetSongs()
    {
        List <SongMetaData> audioClips = new List <SongMetaData>();

        foreach (var item in soundSourceJsons.GetSongDataPaths().Songs)
        {
            SongMetaData songMetaData = new SongMetaData();
            songMetaData.title = item.Title;
            songMetaData.path  = item.Path;
            songMetaData.clip  = Resources.Load(item.Path.Split('.')[0]) as AudioClip;
            audioClips.Add(songMetaData);
        }

        return(audioClips);
    }
Esempio n. 8
0
 public void AddToPlaylist(int playlistNumber, SongMetaData song)
 {
     if (playlists.ContainsKey(playlistNumber))
     {
         if (!playlists[playlistNumber].songs.Contains(song))
         {
             playlists[playlistNumber].songs.Add(song);
         }
     }
     else
     {
         playlists.Add(playlistNumber, new Playlist(song));
         playlists[playlistNumber].playlistName = ((PlaylistsName)playlistNumber).ToString();
     }
 }
Esempio n. 9
0
 public Playlist(SongMetaData songMetaData)
 {
     songs.Clear();
     songs.Add(songMetaData);
 }