From: Katja Luther Date: Wed, 22 Apr 2015 11:40:40 +0000 (+0000) Subject: export of csv files with name informations and for Print output(for caryophyllales) X-Git-Tag: 3.6.0~103 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/commitdiff_plain/f2c1e4b7c8f71de0a30bf229cbd65146296883e2 export of csv files with name informations and for Print output(for caryophyllales) --- diff --git a/.gitattributes b/.gitattributes index e8b0c30f5..65b31c7cf 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1274,6 +1274,8 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/Abst eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbstractImportWizard.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ClassificationChooserWizardPage.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvExportWizard.java -text +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java -text +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/DarwinCoreArchiveExportWizard.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/EndnoteImportWizard.java -text eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExcelNormalExplicitTaxaImportWizard.java -text diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java index b0bf2f002..164ed0037 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java @@ -421,9 +421,8 @@ public class MultiPageTaxonEditor extends FormEditor implements /** {@inheritDoc} */ @Override public boolean postOperation(CdmBase objectAffectedByOperation) { - if (objectAffectedByOperation != null){ - setDirty(true); - } + setDirty(true); + for (IEditorPart editor : this.getPages()) { if (editor instanceof IPostOperationEnabled) { ((IPostOperationEnabled) editor).postOperation(objectAffectedByOperation); diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java index 5b0d4fc6f..2504f4a17 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java @@ -30,7 +30,7 @@ public abstract class AbstractIOManager { protected ICdmApplicationConfiguration applicationConfiguration; public static enum TYPE { - Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel + Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel, Excel_Name } /** diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java new file mode 100644 index 000000000..a03d8b6fc --- /dev/null +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java @@ -0,0 +1,95 @@ +// $Id$ +/** + * Copyright (C) 2007 EDIT + * European Distributed Institute of Taxonomy + * http://www.e-taxonomy.eu + * + * The contents of this file are subject to the Mozilla Public License Version 1.1 + * See LICENSE.TXT at the top of this package for the full license terms. + */ + +package eu.etaxonomy.taxeditor.io.wizard; + +import java.io.File; +import java.util.HashSet; +import java.util.List; +import java.util.UUID; + +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.swt.widgets.Combo; +import org.eclipse.ui.IWorkbench; + +import eu.etaxonomy.cdm.io.csv.caryophyllales.out.CsvNameExportConfigurator; +import eu.etaxonomy.cdm.model.taxon.Classification; +import eu.etaxonomy.taxeditor.store.CdmStore; + +/** + * @author k.luther + * @created Apr. 12, 2015 + * @version 1.0 + */ +public class CsvNameExportWizard extends AbstractExportWizard { + + protected CsvNameExportConfigurator configurator; + protected ExportToFileDestinationWizardPage page; + + private final String description = "Export the names of the currently selected database into Semicolon Separated Value format."; + /* + * (non-Javadoc) + * + * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench, + * org.eclipse.jface.viewers.IStructuredSelection) + */ + @Override + public void init(IWorkbench workbench, IStructuredSelection selection) { + configurator = CsvNameExportConfigurator.NewInstance(null,null); + } + + /* + * (non-Javadoc) + * + * @see + * eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#getConfigurator() + */ + @Override + public CsvNameExportConfigurator getConfigurator() { + return configurator; + } + + /* + * (non-Javadoc) + * + * @see org.eclipse.jface.wizard.Wizard#performFinish() + */ + @Override + public boolean performFinish() { + String urlString = page.getFolderText() + File.separator + + page.getExportFileName(); + + final Combo combo = page.getCombo(); + + configurator.setDestination(new File(urlString)); + + CdmStore.getExportManager().run(configurator); + + return true; + } + + /* + * (non-Javadoc) + * + * @see eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#addPages() + */ + @Override + public void addPages() { + //TODO create page with drop down menu for export for single classification. +// super.addPages(); + + + //standard page + page = ExportToFileDestinationWizardPage.CsvNames(); + + addPage(page); + } +} + diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java new file mode 100644 index 000000000..81e810582 --- /dev/null +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java @@ -0,0 +1,89 @@ +package eu.etaxonomy.taxeditor.io.wizard; + +import java.io.File; +import java.util.HashSet; +import java.util.List; +import java.util.UUID; + +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.swt.widgets.Combo; +import org.eclipse.ui.IWorkbench; + +import eu.etaxonomy.cdm.io.csv.caryophyllales.out.CsvNameExportConfigurator; +import eu.etaxonomy.cdm.model.taxon.Classification; +import eu.etaxonomy.taxeditor.store.CdmStore; + +public class CsvPrintExportWizard extends CsvNameExportWizard{ + + + private final String description = "Export the contents of the currently selected database into Semicolon Separated Value format."; + @Override + public void init(IWorkbench workbench, IStructuredSelection selection) { + configurator = CsvNameExportConfigurator.NewInstance(null,null); + configurator.setNamesOnly(false); + } + + @Override + public CsvNameExportConfigurator getConfigurator() { + + return configurator; + } + + + + /* + * (non-Javadoc) + * + * @see eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#addPages() + */ + @Override + public void addPages() { + //TODO create page with drop down menu for export for single classification. +// super.addPages(); + + + //standard page + page = ExportToFileDestinationWizardPage.CsvPrint(); + + addPage(page); + } + /* + * (non-Javadoc) + * + * @see org.eclipse.jface.wizard.Wizard#performFinish() + */ + @Override + public boolean performFinish() { + String urlString = page.getFolderText() + File.separator + + page.getExportFileName(); + + final Combo combo = page.getCombo(); + final List listClassifications = CdmStore.getCurrentApplicationConfiguration().getClassificationService().listClassifications(null, null, null, null); + if(combo != null){ + int selectionIndex = combo.getSelectionIndex(); + HashSet set = new HashSet(); + if(selectionIndex == -1){ + for(Classification c:listClassifications){ + set.add(c.getUuid()); + } + }else{ + for(Classification c:listClassifications){ + if(c.getTitleCache().equalsIgnoreCase(combo.getItem(selectionIndex))){ + set.add(c.getUuid()); + } + } + + configurator.setHasHeaderLines(true); + + } + } else{ + configurator.setClassificationUUID(listClassifications.get(0).getUuid()); + } + configurator.setDestination(new File(urlString)); + + CdmStore.getExportManager().run(configurator); + + return true; + } + +} diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java index 8277684da..6d63fbd67 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java @@ -72,6 +72,10 @@ public class ExportToFileDestinationWizardPage extends WizardPage { private static boolean csvNameExport = false; + private static String CSV_PRINT_EXPORT ="CSV_PRINT_EXPORT"; + + private static boolean csvPrintExport = false; + private DirectoryDialog folderDialog; private Text text_exportFileName; @@ -190,6 +194,19 @@ public class ExportToFileDestinationWizardPage extends WizardPage { "Export the names of the currently selected database into Semicolon Separated Value format.", CSV); } + + /** + * @return + */ + public static ExportToFileDestinationWizardPage CsvPrint() { + csvPrintExport = true; + return new ExportToFileDestinationWizardPage( + CSV_PRINT_EXPORT, + "csvPrint", + "CSV Print Export", + "Export the content of the currently selected database into Semicolon Separated Value format.", + CSV); + } /* * (non-Javadoc)