From 91893e45e4a03f6f4907548116c7a9fbd7bc6580 Mon Sep 17 00:00:00 2001 From: Yorick Rommers Date: Fri, 30 Oct 2015 19:01:48 +0100 Subject: [PATCH 1/2] Genres added --- MusicPlayer/MusicPlayer/APIHandler.cs | 14 ++++++++++++++ MusicPlayer/MusicPlayer/Genre.cs | 11 +++++++++++ MusicPlayer/MusicPlayer/Main.cs | 10 ++++++++++ MusicPlayer/MusicPlayer/MainForm.cs | 3 +++ MusicPlayer/MusicPlayer/MusicPlayer.csproj | 1 + 5 files changed, 39 insertions(+) create mode 100644 MusicPlayer/MusicPlayer/Genre.cs diff --git a/MusicPlayer/MusicPlayer/APIHandler.cs b/MusicPlayer/MusicPlayer/APIHandler.cs index bea2825..a436322 100755 --- a/MusicPlayer/MusicPlayer/APIHandler.cs +++ b/MusicPlayer/MusicPlayer/APIHandler.cs @@ -104,5 +104,19 @@ namespace MusicPlayer } return yearlist; } + + public List GetGenres() + { + List genreslist = new List(); + JObject o = nw.SendString("getgenres?id=hallo"); + if (o["result"].ToString() == "OK") + { + for (int i = 0; i < o["genres"].Count(); i++) + { + genreslist.Add(new Genre(o["genres"][i][0].ToString())); + } + } + return genreslist; + } } } diff --git a/MusicPlayer/MusicPlayer/Genre.cs b/MusicPlayer/MusicPlayer/Genre.cs new file mode 100644 index 0000000..7d1f8b1 --- /dev/null +++ b/MusicPlayer/MusicPlayer/Genre.cs @@ -0,0 +1,11 @@ +namespace MusicPlayer +{ + public class Genre + { + public string name { get; set; } + public Genre(string name) + { + this.name = name; + } + } +} \ No newline at end of file diff --git a/MusicPlayer/MusicPlayer/Main.cs b/MusicPlayer/MusicPlayer/Main.cs index 1285c20..ab3365e 100755 --- a/MusicPlayer/MusicPlayer/Main.cs +++ b/MusicPlayer/MusicPlayer/Main.cs @@ -43,6 +43,7 @@ namespace MusicPlayer form.ArtistListBox.Items.Add(a.naam); } + this.api.GetGenres().ForEach(g => form.GenreListBox.Items.Add(g.name)); } public void ArtistFilter(string artist) @@ -54,6 +55,15 @@ namespace MusicPlayer }); } + public void GenreFilter(string genre) + { + table.Clear(); + api.GetSongsByGenre(genre).ForEach(s => + { + table.Add(s); + }); + } + public void AlbumFilter(string album) { table.Clear(); diff --git a/MusicPlayer/MusicPlayer/MainForm.cs b/MusicPlayer/MusicPlayer/MainForm.cs index a24a128..e8e38ec 100644 --- a/MusicPlayer/MusicPlayer/MainForm.cs +++ b/MusicPlayer/MusicPlayer/MainForm.cs @@ -89,6 +89,9 @@ namespace MusicPlayer private void GenreListBox_SelectedIndexChanged(object sender, EventArgs e) { + if (GenreListBox.SelectedItems.Count != 0) { + main.GenreFilter(GenreListBox.SelectedItems[0].ToString()); + } } private void ArtistListBox_SelectedIndexChanged(object sender, EventArgs e) diff --git a/MusicPlayer/MusicPlayer/MusicPlayer.csproj b/MusicPlayer/MusicPlayer/MusicPlayer.csproj index 1629d5c..ff158a3 100755 --- a/MusicPlayer/MusicPlayer/MusicPlayer.csproj +++ b/MusicPlayer/MusicPlayer/MusicPlayer.csproj @@ -55,6 +55,7 @@ + Form From 7b763bac46bfc040407214ac22dc6fab7f4ef1ce Mon Sep 17 00:00:00 2001 From: Yorick Rommers Date: Fri, 30 Oct 2015 19:21:58 +0100 Subject: [PATCH 2/2] Lambdas to make things smaller --- MusicPlayer/MusicPlayer/Main.cs | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/MusicPlayer/MusicPlayer/Main.cs b/MusicPlayer/MusicPlayer/Main.cs index ab3365e..c791b33 100755 --- a/MusicPlayer/MusicPlayer/Main.cs +++ b/MusicPlayer/MusicPlayer/Main.cs @@ -31,18 +31,8 @@ namespace MusicPlayer private void Populate() { - form.AlbumListView.Items.Add("Alle albums"); - foreach (Album a in this.api.GetAlbums()) - { - form.AlbumListView.Items.Add(a.albumnaam); - - } - form.ArtistListBox.Items.Add("Alle artiesten"); - foreach (Artist a in this.api.GetArtists()) - { - form.ArtistListBox.Items.Add(a.naam); - - } + this.api.GetAlbums().ForEach(a => form.AlbumListView.Items.Add(a.albumnaam)); + this.api.GetArtists().ForEach(a => form.ArtistListBox.Items.Add(a.naam)); this.api.GetGenres().ForEach(g => form.GenreListBox.Items.Add(g.name)); }