async void OpenPlaylist(int id) { LoadingScreen(); PlaylistGrid playlist = new PlaylistGrid(state.user); playlist.OpenSingerPage += Playlist_OpenSingerPage; playlist.UserPlaylistChanged += UserPlaylistChanged; playlist.OnDragStarted += Playlist_OnDragStarted; playlist.ScrollCall += Grid_ScrollCall; playlist.OnSongPlaying += Playlist_OnSongPlaying; playlist.OnSongPaused += Playlist_OnSongPaused; Service1Client client = new Service1Client(); Song_Playlist _Playlist = await client.GetPlaylistByIDAsync(id); if (tape_panel.Child.GetType() != typeof(ProgressBar)) { return; } client.Close(); playlist.PlaylistsInfo = state.Playlists; playlist.CurrentPlaylist = _Playlist; playlist.CurrentUser = state.user; playlist.Init(); tape_panel.Child = playlist; state.Current_Tab = playlist; if (playlist.SongList.SelectedIndex < 0) { if (playlist.CurrentPlaylist.ID == state.currentPlaylist.ID) { playlist.SongList.SelectedIndex = playlist.CurrentPlaylist.Songs.ToList().IndexOf(playlist.CurrentPlaylist.Songs.Where(n => n.ID == state.currentSong.ID).First()); } } }
public AddPlaylist() { Playlist = new Song_Playlist(); _IsImageEdited = false; InitializeComponent(); IsEdited = false; }
TimeSpan GetDuration(Song_Playlist playlist) { TimeSpan timeSpan = new TimeSpan(); foreach (var item in playlist.Songs) { timeSpan += item.Duration; } return(timeSpan); }
public Playlist_Item_Control(Song_Playlist playlist) { InitializeComponent(); id = playlist.ID; if (playlist.Image != null) { main_image.Source = ConvertToImage(playlist.Image); } playlist_name_tb.Text = playlist.Title; author_name_tb.Text = playlist.Creator.NickName; }
public AppState(Client_User user) { player = new MediaPlayer(); player.Volume = 0.7; playTimer = new DispatcherTimer(); currentPlaylist = new Song_Playlist(); IsPlaying = false; repeat = RepeatState.NoRepeat; Current_Tab = null; this.user = user; playlists = new ObservableCollection <Song_Playlist>(user.Playlists); }
void AddGenres(Song_Playlist playlist) { PlaylistSearchItem Item = new PlaylistSearchItem(); Item.PlaylistImage = playlist.Image; Item.PlaylistTitle = playlist.Title; Item.Height = 80; Item.PlaylistID = playlist.ID; OpenPlaylist += SearchPanel_OpenPlaylist; Item.VerticalAlignment = VerticalAlignment.Center; GetFreeSlot(GenresGrid, Item); GenresGrid.Children.Add(Item); }
private async void Play_btn_MouseDown(object sender, MouseButtonEventArgs e) { if (state.Current_Tab != null) { if (state.Current_Tab is PlaylistGrid) { if ((state.Current_Tab as PlaylistGrid).SongList.SelectedIndex >= 0) { if (((state.Current_Tab as PlaylistGrid).CurrentPlaylist) == state.currentPlaylist) { Song new_song = ((state.Current_Tab as PlaylistGrid).SongList.SelectedItem as Song); Playlist_OnSongPlaying(state.currentPlaylist, new_song.ID, new_song); } else { Song new_song = ((state.Current_Tab as PlaylistGrid).SongList.SelectedItem as Song); Song_Playlist new_playlist = (state.Current_Tab as PlaylistGrid).CurrentPlaylist; Playlist_OnSongPlaying(new_playlist, new_song.ID, new_song); } } } else if (state.Current_Tab is NoImageList_Control) { Console.WriteLine("No image list"); if ((state.Current_Tab as NoImageList_Control).SongList.SelectedIndex >= 0) { Console.WriteLine(((state.Current_Tab as NoImageList_Control).SongList.SelectedItem as Song) .Title); } } else if (state.Current_Tab is SingerPage_Control) { Console.WriteLine("Singer page"); foreach (var child in (state.Current_Tab as SingerPage_Control).albums_panel.Children) { if (child is AlbumGrid) { if ((child as AlbumGrid).songs_lb.SelectedIndex >= 0) { Console.WriteLine(((child as AlbumGrid).songs_lb.SelectedItem as Song).Title); } } } } } //PlaySongByID(21); }
private async void SaveBtnMouseDown(object sender, MouseButtonEventArgs e) { if (PlaylistNameBox.Text == String.Empty) { AddPlaylistErrorBox.Visibility = Visibility.Visible; AddPlaylistErrorMessage.Text = "Playlist field should be signed. Please sign it and try again"; } else if (!Regex.IsMatch(PlaylistNameBox.Text, @"^[a-zA-Z0-9 ]*$")) { AddPlaylistErrorBox.Visibility = Visibility.Visible; AddPlaylistErrorMessage.Text = "Playlist name contains unaccaptable characters,it may contains only letters,numbers and whitespace"; } else { try { Service1Client client = new Service1Client(); if (!IsEdited) { Playlist.Title = PlaylistNameBox.Text; Song_Playlist tmp = await client.AddPlaylistAsync(Playlist); Playlist = tmp; OnChangesAccepted?.Invoke(); AddPlaylistErrorBox.Visibility = Visibility.Hidden; } else { Playlist.Title = PlaylistNameBox.Text; Song_Playlist tmp = await client.EditPlaylistAsync(Playlist); OnChangesAccepted?.Invoke(); AddPlaylistErrorBox.Visibility = Visibility.Hidden; } } catch (Exception ex) { Console.WriteLine(ex.Message); AddPlaylistErrorBox.Visibility = Visibility.Visible; AddPlaylistErrorMessage.Text = "Network issues. Please check your internet connection and try again."; } } }
private void Playlist_OnSongPlaying(Song_Playlist playlist, int songId, Song song) { state.currentSong = song; state.currentPlaylist = playlist; PlaySongByID(songId); }
private void AlbumGrid_OnSongPlaying(Song_Playlist playlist, int songId, Song song) { Console.WriteLine("asd"); AlbumPlay?.Invoke(playlist, songId, song); }