private void DoExport(object status) { ImportExportParameters parameters = status as ImportExportParameters; try { // Wait for dialog while (parameters.Progress.Visible == false) { System.Threading.Thread.Sleep(100); } using (FileStream fs = new FileStream(parameters.Filename, FileMode.Create, FileAccess.ReadWrite)) { switch (parameters.Type) { case 2: Agilix.Ink.Converters.Isf.ExportPage(fScribble.Document, fScribble.PageIndex, fs); break; case 3: Agilix.Ink.Converters.Mhtml.ExportScribble(fScribble.Document, fs); break; case 4: Agilix.Ink.Converters.Image.ExportPage(fScribble.Document, fScribble.PageIndex, fs); break; case 5: Agilix.Ink.Converters.RichText.ExportScribble(fScribble.Document, fs); break; case 6: Agilix.Ink.Converters.PlainText.ExportScribble(fScribble.Document, fs); break; } fs.Close(); } } catch (Exception e) { MessageBox.Show(this, "Unable to save file: " + parameters.Filename + "\n" + e.Message, "Error saving file", MessageBoxButtons.OK, MessageBoxIcon.Error); } parameters.Progress.Close(); }
private void DoImport(object status) { ImportExportParameters parameters = status as ImportExportParameters; try { Document document = null; // Wait for dialog while (parameters.Progress.Visible == false) { System.Threading.Thread.Sleep(100); } using (FileStream fs = new FileStream(parameters.Filename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { switch (parameters.Type) { case 1: document = Agilix.Ink.Converters.Journal.ImportScribble(fs, parameters.Progress.GetProgressCallback()); break; case 2: document = new Document(); document.Pages.Add(new Page(document)); Agilix.Ink.Converters.Isf.ImportPage(document.Pages[0], fs, parameters.Progress.GetProgressCallback()); break; case 3: document = new Document(); document.Pages.Add(new Page(document)); Agilix.Ink.Converters.Image.ImportPage(document.Pages[0], fs, parameters.Progress.GetProgressCallback()); break; case 4: document = Agilix.Ink.Converters.RichText.ImportScribble(fs, new Size(18850, 25000), parameters.Progress.GetProgressCallback()); break; case 5: document = Agilix.Ink.Converters.PlainText.ImportScribble(fs, new Size(18850, 25000), parameters.Progress.GetProgressCallback()); break; case 6: document = Agilix.Ink.Converters.PrintJob.ImportScribble(fs, parameters.Progress.GetProgressCallback()); break; // case 7: // document = new Document(); // document.Pages.Add(Agilix.Ink.Converters.Html.ImportPage(document, fs)); // break; // case 8: // document = new Document(); // document.Pages.Add(Agilix.Ink.Converters.Mhtml.ImportPage(document, fs)); // break; } fs.Close(); if (!parameters.Progress.Cancel) { fScribble.Document = document; fFilePath = null; fFileName = System.IO.Path.GetFileNameWithoutExtension(parameters.Filename); Text = fFileName + " - " + TITLE; fScribble.Modified = true; } } } catch (Exception e) { MessageBox.Show(this, "Unable to import file: " + parameters.Filename + "\n" + e.Message, "Error importing file", MessageBoxButtons.OK, MessageBoxIcon.Error); } parameters.Progress.Close(); }