internal static void ExportToDocument(IModelNodeAdvance imna, TypeOfTheDocument typeOfTheDocument) { if (!CheckIfExportIsPossibleAndPrepareListOfTerms(imna, out List <TermWithDefinitionStructure> listOfAllTerms)) { return; } IASMDExporter exporter = null; switch (typeOfTheDocument) { case TypeOfTheDocument.Maml: exporter = new MamlCreator(); break; case TypeOfTheDocument.Docx: exporter = new DocxCreator(); break; } string FileName = string.Empty; FileName = SelectFileCreateDocumentAndSave(listOfAllTerms, exporter, FileName); }
private static string SelectFileCreateDocumentAndSave(List <TermWithDefinitionStructure> listOfAllTerms, IASMDExporter exporter, string FileName) { using (SaveFileDialog sfd = new SaveFileDialog()) { sfd.DefaultExt = exporter.FileDefaultExt; sfd.AddExtension = true; sfd.Filter = exporter.FileFilter; if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { FileName = sfd.FileName; bool result = exporter.CreateDocument(FileName, listOfAllTerms, out string resultmessage); if (result) { if (MessageBox.Show(resultmessage, "Success!", System.Windows.Forms.MessageBoxButtons.OKCancel, System.Windows.Forms.MessageBoxIcon.Information) == System.Windows.Forms.DialogResult.OK) { try { Process.Start(FileName); } catch (Win32Exception) { MessageBox.Show(Resources.ExportTool_NoDefualtApplication, "Cannot open the file", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); } } } else { MessageBox.Show(resultmessage, "Fail!", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); } } } return(FileName); }