public async void Next(Album myAlbum, bool loop = false) { this.StopInner(); await Task.Delay(300); // waiting for workers... TheAlbum = myAlbum; if (IsLoopMode != loop) { LoopModeChanged?.Invoke(this, null); } IsLoopMode = loop; this.ResetAlbumIndex(); this.Relive(); SoundLocation = TheAlbum[IndexOfAlbum].Path; if (IsLoopMode) { TheMode = LoopMode.AlbumLoop; this.PlayLooping(true); } else { TheMode = LoopMode.AlbumNoLoop; this.Play(); } }
private void _loopModeChanged_SignalRaised(ISignal sender, IList <object> args) { LoopModeChanged?.Invoke(this, StringToLoopMode(args.First() as string)); }