private void Export() { try { if (string.IsNullOrEmpty(SavePath)) { throw new Exception("Save path not defined."); } else if (string.IsNullOrEmpty(SelectedExporter)) { throw new Exception("No exporter selected."); } else if (SelectedBook == null) { throw new Exception("No book selected."); } if (File.Exists(SavePath) && !MessageBoxFactory.ShowConfirmAsBool("Overwrite existing file?", "File Exists")) { return; } BaseExporter exporter = GetExporter(); exporter.Export(SelectedBook, SavePath); MessageBoxFactory.ShowInfo("Book has been exported to: " + SavePath, "Book Exported"); } catch (Exception e) { MessageBoxFactory.ShowError(e); } }