private void bw_DoWork(object sender, DoWorkEventArgs e) { Cursor.Current = Cursors.WaitCursor; FB2DescriptionCorrector fB2Corrector = null; foreach (FB2ItemInfo Info in m_KeywordsFB2InfoList) { FictionBook fb2 = Info.FictionBook; if (fb2 != null) { fB2Corrector = new FB2DescriptionCorrector(fb2); fB2Corrector.recoveryDescriptionNode(); XmlNode xmlTI = fb2.getTitleInfoNode(TitleInfoEnum.TitleInfo); if (xmlTI != null) { string kw = string.Empty; string kwOld = fb2.getKeywordsNode(TitleInfoEnum.TitleInfo).InnerText; if (AddRadioButton.Checked) { // добавить новые ключевые слова к существующим kw = !string.IsNullOrWhiteSpace(kwOld) ? (kwOld + "," + KeywordsTextBox.Text.Trim()) : KeywordsTextBox.Text.Trim(); } else { // заменить существующие ключевые слова на новые kw = KeywordsTextBox.Text.Trim(); } xmlTI.ReplaceChild( fB2Corrector.makeKeywordsNode(kw), fb2.getKeywordsNode(TitleInfoEnum.TitleInfo) ); // сохранение fb2 файла if (!Directory.Exists(m_TempDir)) { Directory.CreateDirectory(m_TempDir); } string NewPath = Info.IsFromZip ? Info.FilePathIfFromZip : Info.FilePathSource; fb2.saveToFB2File(NewPath, false); if (Info.IsFromZip) { WorksWithBooks.zipMoveTempFB2FileTo(m_sharpZipLib, NewPath, Info.FilePathSource); } if (Info.IsFromZip && File.Exists(NewPath)) { File.Delete(NewPath); } } } m_bw.ReportProgress(1); ProgressBar.Update(); } Cursor.Current = Cursors.Default; }
private void bw_DoWork(object sender, DoWorkEventArgs e) { Cursor.Current = Cursors.WaitCursor; FB2DescriptionCorrector fB2Corrector = null; foreach (FB2ItemInfo Info in m_SequencesFB2InfoList) { FictionBook fb2 = Info.FictionBook; if (fb2 != null) { fB2Corrector = new FB2DescriptionCorrector(fb2); fB2Corrector.recoveryDescriptionNode(); XmlNode xmlTI = fb2.getTitleInfoNode(TitleInfoEnum.TitleInfo); if (xmlTI != null) { if (RemoveRadioButton.Checked || ReplaceRadioButton.Checked) { // удаление всех Серий foreach (XmlNode node in fb2.getSequencesNode(TitleInfoEnum.TitleInfo)) { xmlTI.RemoveChild(node); } } if (AddRadioButton.Checked || ReplaceRadioButton.Checked) { // добавление новой Серии xmlTI.AppendChild( fB2Corrector.makeSequenceNode(SequencesTextBox.Text.Trim(), NumberTextBox.Text.Trim()) ); } // сохранение fb2 файла if (!Directory.Exists(m_TempDir)) { Directory.CreateDirectory(m_TempDir); } string NewPath = Info.IsFromZip ? Info.FilePathIfFromZip : Info.FilePathSource; fb2.saveToFB2File(NewPath, false); if (Info.IsFromZip) { WorksWithBooks.zipMoveTempFB2FileTo(m_sharpZipLib, NewPath, Info.FilePathSource); } if (Info.IsFromZip && File.Exists(NewPath)) { File.Delete(NewPath); } } } m_bw.ReportProgress(1); ProgressBar.Update(); } Cursor.Current = Cursors.Default; }
private void bw_DoWork(object sender, DoWorkEventArgs e) { Cursor.Current = Cursors.WaitCursor; FB2DescriptionCorrector fB2Corrector = null; foreach (FB2ItemInfo Info in m_LangFB2InfoList) { FictionBook fb2 = Info.FictionBook; if (fb2 != null) { fB2Corrector = new FB2DescriptionCorrector(fb2); fB2Corrector.recoveryDescriptionNode(); XmlNode xmlTI = fb2.getTitleInfoNode(TitleInfoEnum.TitleInfo); if (xmlTI != null) { xmlTI.ReplaceChild( fB2Corrector.makeLangNode(LangComboBox.Text.Substring(LangComboBox.Text.IndexOf('(') + 1, 2)), fb2.getLangNode(TitleInfoEnum.TitleInfo) ); // сохранение fb2 файла if (!Directory.Exists(m_TempDir)) { Directory.CreateDirectory(m_TempDir); } string NewPath = Info.IsFromZip ? Info.FilePathIfFromZip : Info.FilePathSource; fb2.saveToFB2File(NewPath, false); if (Info.IsFromZip) { WorksWithBooks.zipMoveTempFB2FileTo(m_sharpZipLib, NewPath, Info.FilePathSource); } if (Info.IsFromZip && File.Exists(NewPath)) { File.Delete(NewPath); } } } m_bw.ReportProgress(1); ProgressBar.Update(); } Cursor.Current = Cursors.Default; }
private void bw_DoWork(object sender, DoWorkEventArgs e) { Cursor.Current = Cursors.WaitCursor; FB2DescriptionCorrector fB2Corrector = null; foreach (FB2ItemInfo Info in m_AuthorFB2InfoList) { FictionBook fb2 = Info.FictionBook; if (fb2 != null) { // восстанавление раздела description до структуры с необходимыми элементами для валидности fB2Corrector = new FB2DescriptionCorrector(fb2); fB2Corrector.recoveryDescriptionNode(); IList <XmlNode> xmlNewAuthors = makeAuthorNode(Enums.AuthorEnum.AuthorOfBook, ref fb2, AuthorsListView); if (xmlNewAuthors != null) { XmlNodeList xmlAuthorList = fb2.getAuthorNodes(TitleInfoEnum.TitleInfo); if (xmlAuthorList != null) { XmlNode xmlBookTitleNode = fb2.getBookTitleNode(TitleInfoEnum.TitleInfo); if (xmlBookTitleNode != null) { XmlNode xmlTINode = fb2.getTitleInfoNode(TitleInfoEnum.TitleInfo); if (xmlTINode != null) { // удаление старых данных Авторов foreach (XmlNode Author in xmlAuthorList) { xmlTINode.RemoveChild(Author); } // добавление новых данных Авторов foreach (XmlNode Author in xmlNewAuthors) { xmlTINode.InsertBefore(Author, xmlBookTitleNode); } // сохранение fb2 файла if (!Directory.Exists(m_TempDir)) { Directory.CreateDirectory(m_TempDir); } string NewPath = Info.IsFromZip ? Info.FilePathIfFromZip : Info.FilePathSource; fb2.saveToFB2File(NewPath, false); if (Info.IsFromZip) { WorksWithBooks.zipMoveTempFB2FileTo(m_sharpZipLib, NewPath, Info.FilePathSource); } if (Info.IsFromZip && File.Exists(NewPath)) { File.Delete(NewPath); } } } } } } m_bw.ReportProgress(1); ProgressBar.Update(); } Cursor.Current = Cursors.Default; }