Revision 9a212770
Added by Patrick Plitzner over 5 years ago
eu.etaxonomy.taxeditor.store/fragment.e4xmi | ||
---|---|---|
11 | 11 |
<tags>nonRestore</tags> |
12 | 12 |
<handlers xmi:id="_DYhGACHXEeiP8eNo0PEm1g" elementId="eu.etaxonomy.taxeditor.featuretree.e4.handler.CreateFeatureTreeHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.featuretree.e4.handler.CreateFeatureTreeHandler" command="_AJtnsCHXEeiP8eNo0PEm1g"/> |
13 | 13 |
<handlers xmi:id="_Bb0TwCFeEeiVXriJfxPIuA" elementId="eu.etaxonomy.taxeditor.featuretree.e4.handler.RemoveFeatureTreeHandlers" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.featuretree.e4.handler.RemoveFeatureTreeHandler" command="_3mqzkCFdEeiVXriJfxPIuA"/> |
14 |
<handlers xmi:id="_VSc2UGcqEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.featuretree.e4.handler.FeatureTreeExportHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.featuretree.e4.handler.FeatureTreeExportHandler" command="_I_yx4GcqEee0qLTtA2ZpVQ"/>
|
|
14 |
<handlers xmi:id="_VSc2UGcqEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.featuretree.e4.handler.FeatureTreeExportWordHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.featuretree.e4.handler.FeatureTreeExportWordHandler" command="_I_yx4GcqEee0qLTtA2ZpVQ"/>
|
|
15 | 15 |
<handlers xmi:id="_3wq0cGceEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.featuretree.e4.handler.AddFeatureHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.featuretree.e4.handler.AddFeatureHandler" command="_oftL0GceEee0qLTtA2ZpVQ"/> |
16 | 16 |
<handlers xmi:id="_DcmpgPhnEei8uPv-H2wqnw" elementId="eu.etaxonomy.taxeditor.featuretree.e4.handler.FeatureTreeExportOntologyHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.featuretree.e4.handler.FeatureTreeExportOntologyHandler" command="_xyZ4oPhmEei8uPv-H2wqnw"/> |
17 | 17 |
<menus xsi:type="menu:PopupMenu" xmi:id="__Jwh4GceEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.store.popupmenu.featureTreeEditor"> |
... | ... | |
98 | 98 |
<fragments xsi:type="fragment:StringModelFragment" xmi:id="_mPdAcGceEee0qLTtA2ZpVQ" featurename="commands" parentElementId="xpath:/"> |
99 | 99 |
<elements xsi:type="commands:Command" xmi:id="_oftL0GceEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.store.command.featureTree.addFeature" commandName="%command.commandname.1" description="%command.description.1"/> |
100 | 100 |
<elements xsi:type="commands:Command" xmi:id="_fNBtQGcjEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.store.command.featureTree.removeFeature" commandName="%command.commandname.2" description="%command.description.2"/> |
101 |
<elements xsi:type="commands:Command" xmi:id="_I_yx4GcqEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.store.command.featureTree.exportTree" commandName="%command.commandname.3"/> |
|
101 |
<elements xsi:type="commands:Command" xmi:id="_I_yx4GcqEee0qLTtA2ZpVQ" elementId="eu.etaxonomy.taxeditor.store.command.featureTree.exportTreeWord" commandName="%command.commandname.3"/>
|
|
102 | 102 |
<elements xsi:type="commands:Command" xmi:id="_efb88IcsEee-HITNnU9cVw" elementId="eu.etaxonomy.taxeditor.store.datasource.change" commandName="%command.name"/> |
103 | 103 |
<elements xsi:type="commands:Command" xmi:id="_cs5L0IctEee-HITNnU9cVw" elementId="eu.etaxonomy.taxeditor.store.datasource.edit" commandName="%command.name.0"/> |
104 | 104 |
<elements xsi:type="commands:Command" xmi:id="_o0HcUIctEee-HITNnU9cVw" elementId="eu.etaxonomy.taxeditor.store.datasource.clone" commandName="%command.name.8"/> |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/handler/FeatureTreeExportHandler.java | ||
---|---|---|
1 |
/** |
|
2 |
* Copyright (C) 2017 EDIT |
|
3 |
* European Distributed Institute of Taxonomy |
|
4 |
* http://www.e-taxonomy.eu |
|
5 |
* |
|
6 |
* The contents of this file are subject to the Mozilla Public License Version 1.1 |
|
7 |
* See LICENSE.TXT at the top of this package for the full license terms. |
|
8 |
*/ |
|
9 |
package eu.etaxonomy.taxeditor.featuretree.e4.handler; |
|
10 |
|
|
11 |
import java.io.File; |
|
12 |
|
|
13 |
import javax.inject.Named; |
|
14 |
|
|
15 |
import org.eclipse.core.runtime.jobs.Job; |
|
16 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
17 |
import org.eclipse.e4.core.di.annotations.Execute; |
|
18 |
import org.eclipse.e4.core.di.annotations.Optional; |
|
19 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
|
20 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
|
21 |
import org.eclipse.e4.ui.services.IServiceConstants; |
|
22 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
23 |
import org.eclipse.swt.widgets.DirectoryDialog; |
|
24 |
import org.eclipse.swt.widgets.Shell; |
|
25 |
import org.eclipse.ui.progress.IProgressConstants; |
|
26 |
|
|
27 |
import eu.etaxonomy.cdm.io.descriptive.word.out.WordExportConfigurator; |
|
28 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
|
29 |
import eu.etaxonomy.taxeditor.featuretree.e4.IFeatureTreeEditor; |
|
30 |
import eu.etaxonomy.taxeditor.preference.IPreferenceKeys; |
|
31 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
32 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
|
33 |
import eu.etaxonomy.taxeditor.store.StoreUtil; |
|
34 |
|
|
35 |
/** |
|
36 |
* @author pplitzner |
|
37 |
* @since Jul 12, 2017 |
|
38 |
* |
|
39 |
*/ |
|
40 |
public class FeatureTreeExportHandler { |
|
41 |
|
|
42 |
@Execute |
|
43 |
public void execute(@Named(IServiceConstants.ACTIVE_SHELL) Shell shell, |
|
44 |
@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection, |
|
45 |
@Named(IServiceConstants.ACTIVE_PART)MPart thisPart){ |
|
46 |
IFeatureTreeEditor editor = (IFeatureTreeEditor) thisPart.getObject(); |
|
47 |
|
|
48 |
if(StoreUtil.checkDirty(editor)){ |
|
49 |
return; |
|
50 |
} |
|
51 |
|
|
52 |
FeatureTree selectedFeatureTree = (FeatureTree) selection.getFirstElement(); |
|
53 |
DirectoryDialog dialog = new DirectoryDialog(shell); |
|
54 |
String directoryString = dialog.open(); |
|
55 |
if(directoryString!=null){ |
|
56 |
// create job |
|
57 |
Job job = CdmStore.getExportManager().createIOServiceJob(WordExportConfigurator.NewInstance(null, null, selectedFeatureTree), new File(directoryString+"/"+selectedFeatureTree.getTitleCache()+".docx")); |
|
58 |
// configure the job |
|
59 |
job.setProperty(IProgressConstants.KEEP_PROPERTY, true); |
|
60 |
job.setUser(true); |
|
61 |
// schedule job |
|
62 |
job.schedule(); |
|
63 |
} |
|
64 |
} |
|
65 |
|
|
66 |
@CanExecute |
|
67 |
public boolean canExecute( |
|
68 |
@Optional@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection, |
|
69 |
MHandledMenuItem menuItem) { |
|
70 |
boolean canExecute = false; |
|
71 |
canExecute = PreferencesUtil.getBooleanValue(IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES) |
|
72 |
&& selection!=null |
|
73 |
&& selection.size()==1 |
|
74 |
&& selection.getFirstElement() instanceof FeatureTree; |
|
75 |
menuItem.setVisible(canExecute); |
|
76 |
return canExecute; |
|
77 |
} |
|
78 |
|
|
79 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/handler/FeatureTreeExportWordHandler.java | ||
---|---|---|
1 |
/** |
|
2 |
* Copyright (C) 2017 EDIT |
|
3 |
* European Distributed Institute of Taxonomy |
|
4 |
* http://www.e-taxonomy.eu |
|
5 |
* |
|
6 |
* The contents of this file are subject to the Mozilla Public License Version 1.1 |
|
7 |
* See LICENSE.TXT at the top of this package for the full license terms. |
|
8 |
*/ |
|
9 |
package eu.etaxonomy.taxeditor.featuretree.e4.handler; |
|
10 |
|
|
11 |
import java.io.File; |
|
12 |
|
|
13 |
import javax.inject.Named; |
|
14 |
|
|
15 |
import org.eclipse.core.runtime.jobs.Job; |
|
16 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
17 |
import org.eclipse.e4.core.di.annotations.Execute; |
|
18 |
import org.eclipse.e4.core.di.annotations.Optional; |
|
19 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
|
20 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
|
21 |
import org.eclipse.e4.ui.services.IServiceConstants; |
|
22 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
23 |
import org.eclipse.swt.widgets.DirectoryDialog; |
|
24 |
import org.eclipse.swt.widgets.Shell; |
|
25 |
import org.eclipse.ui.progress.IProgressConstants; |
|
26 |
|
|
27 |
import eu.etaxonomy.cdm.io.descriptive.word.out.WordExportConfigurator; |
|
28 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
|
29 |
import eu.etaxonomy.taxeditor.featuretree.e4.IFeatureTreeEditor; |
|
30 |
import eu.etaxonomy.taxeditor.preference.IPreferenceKeys; |
|
31 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
32 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
|
33 |
import eu.etaxonomy.taxeditor.store.StoreUtil; |
|
34 |
|
|
35 |
/** |
|
36 |
* @author pplitzner |
|
37 |
* @since Jul 12, 2017 |
|
38 |
* |
|
39 |
*/ |
|
40 |
public class FeatureTreeExportWordHandler { |
|
41 |
|
|
42 |
@Execute |
|
43 |
public void execute(@Named(IServiceConstants.ACTIVE_SHELL) Shell shell, |
|
44 |
@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection, |
|
45 |
@Named(IServiceConstants.ACTIVE_PART)MPart thisPart){ |
|
46 |
IFeatureTreeEditor editor = (IFeatureTreeEditor) thisPart.getObject(); |
|
47 |
|
|
48 |
if(StoreUtil.checkDirty(editor)){ |
|
49 |
return; |
|
50 |
} |
|
51 |
|
|
52 |
FeatureTree selectedFeatureTree = (FeatureTree) selection.getFirstElement(); |
|
53 |
DirectoryDialog dialog = new DirectoryDialog(shell); |
|
54 |
String directoryString = dialog.open(); |
|
55 |
if(directoryString!=null){ |
|
56 |
// create job |
|
57 |
Job job = CdmStore.getExportManager().createIOServiceJob(WordExportConfigurator.NewInstance(null, null, selectedFeatureTree), new File(directoryString+"/"+selectedFeatureTree.getTitleCache()+".docx")); |
|
58 |
// configure the job |
|
59 |
job.setProperty(IProgressConstants.KEEP_PROPERTY, true); |
|
60 |
job.setUser(true); |
|
61 |
// schedule job |
|
62 |
job.schedule(); |
|
63 |
} |
|
64 |
} |
|
65 |
|
|
66 |
@CanExecute |
|
67 |
public boolean canExecute( |
|
68 |
@Optional@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection, |
|
69 |
MHandledMenuItem menuItem) { |
|
70 |
boolean canExecute = false; |
|
71 |
canExecute = PreferencesUtil.getBooleanValue(IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES) |
|
72 |
&& selection!=null |
|
73 |
&& selection.size()==1 |
|
74 |
&& selection.getFirstElement() instanceof FeatureTree; |
|
75 |
menuItem.setVisible(canExecute); |
|
76 |
return canExecute; |
|
77 |
} |
|
78 |
|
|
79 |
} |
Also available in: Unified diff
ref #6774 Rename export handler