private void SelectAudiobookFromBlockText(List <string> blockText) { bool statusAudiobooksOK = true; Txt blockAudiobook = new Txt(); foreach (var text in blockText) { blockAudiobook.text = text; string pathToAudiobook = Path.Combine(coreDirectoryLibrary.FullName, blockAudiobook.Select("<pathToAudiobook>", "</pathToAudiobook>")); DirectoryInfo pathToDirectoryAudiobook = new DirectoryInfo(pathToAudiobook); Audiobook audiobook = new Audiobook(pathToDirectoryAudiobook); audiobook.completionStatus = Convert.ToInt32(blockAudiobook.Select("<completionStatus>", "</completionStatus>")); if (audiobook.StatusAudiobookOK()) { audiobooks.Add(audiobook); } else { statusAudiobooksOK &= false; } } if (statusAudiobooksOK == false) { MessageBox.Show("Одна или несколько аудиокниг не найдены. Выполните 'Настройки -> Обновить библиотеку'", "Внимание"); } }
//считывает текущую аудиокнигу из файла настроек private void ReadCurrentAudiobook() { string path = Directory.GetCurrentDirectory(); path = Path.Combine(path, "setting.ini"); Txt txtFile = new Txt(); bool status = txtFile.SetPathToFile(path); if (status) { string pathToDirectoryLibrary = txtFile.Select("<pathToLibrary>", "</pathToLibrary>"); string relativePathToCurrentAudiobook = txtFile.Select("<currentAudiobook>", "</currentAudiobook>"); string valueSpeed = txtFile.Select("<playbackSpeed>", "</playbackSpeed>"); string pathToCurrentAudiobook = Path.Combine(pathToDirectoryLibrary, relativePathToCurrentAudiobook); DirectoryInfo pathToAudiobook = new DirectoryInfo(pathToCurrentAudiobook); currentAudiobook = new Audiobook(pathToAudiobook); currentAudiobook.audiobookPlaying = false; if (currentAudiobook.StatusAudiobookOK()) { InitilizeMediaPlayer(); InitilizeAudiofile(); InitializeCmbBxSelectorSpeedPlayback(valueSpeed.Replace(',', '.')); } else { MessageBox.Show("Текущая аудиокнига не может быть воспроизведена. Возможно она была переименована или перемещена. Выполните обновление библиотеки", "Внимание"); } } }