private void PlayStopButton_Click(object sender, RoutedEventArgs e) { if (player.CurrentFilePath == string.Empty) { return; } if (player.IsPlaying) { PlayStopButton.Content = "Play"; player.Pause(); } else { PlayStopButton.Content = "Pause"; player.Start(); } }
static void Run() { using (PlayerBase <AudioItem> player = new Player()) { player.LockStateChanged += (sender, e) => { PlayerView.UpdateScreen(player); Console.WriteLine($"Lock state changed event : {e.IsLocked}"); }; player.VolumeChanged += (sender, e) => { PlayerView.UpdateScreen(player); Console.WriteLine($"Volume changed event : {e.Volume}"); }; player.CollectionChanged += (sender, e) => { PlayerView.UpdateScreen(player); Console.WriteLine($"Colection changed event"); }; player.PlayerPlayingStateChanged += (sender, e) => { PlayerView.UpdateScreen(player); Console.WriteLine($"Started/Stopped event : {e.IsPlaying}"); }; player.PlaingItemStarted += (sender, e) => { PlayerView.UpdateScreen(player); Console.WriteLine($"Started song event : {e.ItemTitle} {e.ItemDuration} {e.ItemDurationMinSec}"); }; player.Load(Environment.CurrentDirectory); Console.WriteLine("set song"); player.SetPlayingItem(); //Console.WriteLine("play"); //player.Play(); //Console.ReadLine(); //Console.WriteLine("set volume"); //player.Volume = 50; //Console.ReadLine(); //Console.WriteLine("play"); //player.Play(); //Console.ReadLine(); //Console.WriteLine("lock"); //player.LockUnLock = true; //Console.ReadLine(); //Console.WriteLine("play"); //player.Play(); //Console.ReadLine(); //Console.WriteLine("unlock"); //player.LockUnLock = false; //Console.ReadLine(); while (true) { player.LabelOutput("Next action:"); //Console.WriteLine("Next action :"); string cmd = Console.ReadLine(); switch (cmd) { case "set volume": player.Volume = player.Volume; break; case "play": player.Play(); //player.Playing = true; //error. Property or indexer 'Player.Plaing' cannot be assigned to -- it is read only break; case "stop": player.Stop(); break; case "lock": player.LockUnLock = true; break; case "unlock": player.LockUnLock = false; break; case "set song": player.SetPlayingItem(); break; case "pause": player.Pause(); break; case "show": //player.ShowPlaylist(); break; case "sort": player.SortPlayList_ByTitle(); break; case "genre filter": //Console.WriteLine("Input Genre you want.."); //player.SongListGenreSort(Console.ReadLine().Trim().ToUpper()); (player as Player).Filter_ByGenre(); break; case "shuffle": player.ShufflePlayList(); break; case "quit": //player.ClosePlayer(); //player.Dispose(); //Environment.Exit(0); return; //break; case "set like": player.SetLike(); break; case "set skin": player.SetSkin(); break; case "load": Console.WriteLine("Enter path:"); player.Load(Console.ReadLine()); break; case "clear": player.Clear(); break; case "save playlist": Console.WriteLine("Enter playlist name:"); player.SavePlaylist(Console.ReadLine()); break; case "load playlist": Console.WriteLine("Enter path:"); player.LoadPlaylist(Console.ReadLine()); break; default: player.LabelOutput("Unknown command..."); break; } } } }
private void PauseClicked(object sender, RoutedEventArgs e) { _player.Pause(); }
private static void ManagePlayer(Player player) { while (true) { DisplayInfo(); var cmd = GetCommand(); switch (cmd) { case "l": case "load": Console.WriteLine("Enter path to the playlist:"); var path = Console.ReadLine(); if (string.IsNullOrWhiteSpace(path)) { Console.WriteLine("Invalid playlist path."); continue; } try { var pl = DataContractFormatter<Playlist>.Load(path); //todo: обработать исключения player.LoadPlayList(pl); Console.WriteLine("Playlist was loaded."); } catch (Exception) { Console.WriteLine("Playlist loading error!"); } break; case "pl": case "play": player.Play(); break; case "pa": case "pause": player.Pause(); break; case "s": case "stop": player.Stop(); break; case "i": case "info": DisplayInfo(); break; case "se": case "select": return; case "e": case "exit": Environment.Exit(0); return; default: Console.WriteLine("Incorrect command."); continue; } } }