Revision 91333bc6
Added by Patrick Plitzner over 6 years ago
eu.etaxonomy.taxeditor.editor/fragment.e4xmi | ||
---|---|---|
199 | 199 |
<elements xsi:type="basic:PartDescriptor" xmi:id="_ghDAsKO6EeeWePK798pdTw" elementId="eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyGraphEditorE4" label="%editor.name.2" closeable="true" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyGraphEditorE4"> |
200 | 200 |
<handlers xmi:id="_dpB_kKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.key.e4.handler.ApplyLayoutHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.e4.handler.ApplyLayoutHandlerE4" command="_zN-H8KO8EeeWePK798pdTw"/> |
201 | 201 |
<menus xsi:type="menu:PopupMenu" xmi:id="_J8Q6AKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.popupmenu.polytomouskeygrapheditor" toBeRendered="false" visible="false"> |
202 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_bnPG8KRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.keygraph.newnode" label="%command.label.20" command="_jJ_4kKO9EeeWePK798pdTw"/> |
|
203 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_wKd6cKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.keygraph.delete" label="%command.label.21" command="_uM4zsKO8EeeWePK798pdTw"/> |
|
204 |
<children xsi:type="menu:MenuSeparator" xmi:id="_whq5gKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.menuseparator.18"/> |
|
205 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_w9X-EKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.keygraph.applylayout" label="%command.label.22" command="_zN-H8KO8EeeWePK798pdTw"/> |
|
202 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_bnPG8KRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.keygraph.newnode" toBeRendered="false" visible="false" label="%command.label.20" command="_jJ_4kKO9EeeWePK798pdTw"/>
|
|
203 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_wKd6cKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.keygraph.delete" toBeRendered="false" visible="false" label="%command.label.21" command="_uM4zsKO8EeeWePK798pdTw"/>
|
|
204 |
<children xsi:type="menu:MenuSeparator" xmi:id="_whq5gKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.menuseparator.18" toBeRendered="false" visible="false"/>
|
|
205 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_w9X-EKRbEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.keygraph.applylayout" toBeRendered="false" visible="false" label="%command.label.22" command="_zN-H8KO8EeeWePK798pdTw"/>
|
|
206 | 206 |
</menus> |
207 | 207 |
</elements> |
208 | 208 |
<elements xsi:type="basic:PartDescriptor" xmi:id="_tJeg0KO6EeeWePK798pdTw" elementId="eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyListEditorE4" label="%editor.name.3" closeable="true" dirtyable="true" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyListEditorE4"> |
... | ... | |
211 | 211 |
<handlers xmi:id="_8DficKRREeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.CreateChildNodeHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.CreateChildNodeHandlerE4" command="_tyHGwKO9EeeWePK798pdTw"/> |
212 | 212 |
<handlers xmi:id="_QHL6QKRSEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.CreateSiblingNodeHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.CreateSiblingNodeHandlerE4" command="_rkKogKO9EeeWePK798pdTw"/> |
213 | 213 |
<handlers xmi:id="_pDoJsKRSEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.RefreshNodeNumberingHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.RefreshNodeNumberingHandlerE4" command="_mH1G8KRSEeePufXF8uhoCw"/> |
214 |
<handlers xmi:id="_gCYp4KTaEeejf7ggYkp-TA" elementId="eu.etaxonomy.taxeditor.editor.handler.1" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler.OpenPolytomousGraphEditorHandler" command="_ZolPMKTaEeejf7ggYkp-TA"/> |
|
214 | 215 |
<menus xsi:type="menu:PopupMenu" xmi:id="_2JO_8KRQEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.popupmenu.polytomouskeylisteditor"> |
215 | 216 |
<children xsi:type="menu:Menu" xmi:id="_2yjpwKRQEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.menu.polytomouskeylist.newkeynumber" label="%menu.label.4"> |
216 | 217 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_DWtt4KRREeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.polytomouskeylist.new.insertNode" label="%command.label.58" command="_jJ_4kKO9EeeWePK798pdTw"/> |
... | ... | |
218 | 219 |
</children> |
219 | 220 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_Iqi_AKRREeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.polytomouskeylist.newAlternative" label="%command.label.24" command="_rkKogKO9EeeWePK798pdTw"/> |
220 | 221 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_LJ-14KRREeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.polytomouskeylist.refreshNodes" label="%command.label.25" command="_mH1G8KRSEeePufXF8uhoCw"/> |
222 |
<children xsi:type="menu:MenuSeparator" xmi:id="_Ww_XAKTaEeejf7ggYkp-TA" elementId="eu.etaxonomy.taxeditor.editor.menuseparator.19"/> |
|
223 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_TvBa0KTaEeejf7ggYkp-TA" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.opengraph" label="Open Graph" command="_ZolPMKTaEeejf7ggYkp-TA"/> |
|
224 |
<children xsi:type="menu:MenuSeparator" xmi:id="_XMhccKTaEeejf7ggYkp-TA" elementId="eu.etaxonomy.taxeditor.editor.menuseparator.20"/> |
|
221 | 225 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_Rf4A8KRREeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.polytomouskeylist.delete" label="%command.label.26" command="_uM4zsKO8EeeWePK798pdTw"/> |
222 | 226 |
</menus> |
223 | 227 |
</elements> |
... | ... | |
282 | 286 |
<elements xsi:type="commands:Command" xmi:id="_rkKogKO9EeeWePK798pdTw" elementId="eu.etaxonomy.taxeditor.key.polytomous.command.new.sibling" commandName="%command.name.29"/> |
283 | 287 |
<elements xsi:type="commands:Command" xmi:id="_tyHGwKO9EeeWePK798pdTw" elementId="eu.etaxonomy.taxeditor.key.polytomous.command.new.child" commandName="%command.name.28"/> |
284 | 288 |
<elements xsi:type="commands:Command" xmi:id="_mH1G8KRSEeePufXF8uhoCw" elementId="eu.etaxonomy.taxeditor.key.polytomous.command.refresh" commandName="%command.name.30"/> |
289 |
<elements xsi:type="commands:Command" xmi:id="_ZolPMKTaEeejf7ggYkp-TA" elementId="eu.etaxonomy.taxeditor.editor.command.polytomouskeylist.openGraph" commandName="Open Graph Editor"/> |
|
285 | 290 |
</fragments> |
286 | 291 |
<fragments xsi:type="fragment:StringModelFragment" xmi:id="_pZmusEalEeeXMc6kSYO7Xg" featurename="children" parentElementId="eu.etaxonomy.taxeditor.menu.showView" positionInList="after:eu.etaxonomy.taxeditor.store.menuseparator.afterSupplemental"> |
287 | 292 |
<elements xsi:type="menu:MenuSeparator" xmi:id="_eAVmMJ7SEee0IagNh8pHpQ" elementId="eu.etaxonomy.taxeditor.editor.menuseparator.14"/> |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/e4/AbstractGraphKeyEditorE4.java | ||
---|---|---|
77 | 77 |
|
78 | 78 |
public void init(PolytomousKeyEditorInput input) { |
79 | 79 |
this.input = input; |
80 |
|
|
81 |
|
|
82 |
viewer.setInput(getKey()); |
|
80 | 83 |
} |
81 | 84 |
|
82 | 85 |
public boolean isDirty() { |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/e4/KeyEditorDataChangeBehaviourE4.java | ||
---|---|---|
1 |
/** |
|
2 |
* Copyright (C) 2007 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 |
|
|
10 |
package eu.etaxonomy.taxeditor.editor.key.e4; |
|
11 |
|
|
12 |
import java.util.Vector; |
|
13 |
|
|
14 |
import eu.etaxonomy.cdm.model.description.PolytomousKey; |
|
15 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeEvent; |
|
16 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeEvent.EventType; |
|
17 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap; |
|
18 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorInput; |
|
19 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyListEditorE4; |
|
20 |
import eu.etaxonomy.taxeditor.model.AbstractDataChangeBehaviour; |
|
21 |
|
|
22 |
/** |
|
23 |
* @author n.hoffmann |
|
24 |
* @created May 5, 2011 |
|
25 |
* @version 1.0 |
|
26 |
*/ |
|
27 |
public class KeyEditorDataChangeBehaviourE4 extends AbstractDataChangeBehaviour { |
|
28 |
|
|
29 |
private final PolytomousKeyListEditorE4 source; |
|
30 |
private PolytomousKeyEditorInput input; |
|
31 |
|
|
32 |
public KeyEditorDataChangeBehaviourE4(PolytomousKeyListEditorE4 keyEditor) { |
|
33 |
source = keyEditor; |
|
34 |
} |
|
35 |
|
|
36 |
@Override |
|
37 |
public void reactOnDataChange(CdmDataChangeMap changeEvents) { |
|
38 |
input = source.getEditorInput(); |
|
39 |
|
|
40 |
if(changeEvents.sizeByEventType(EventType.UPDATE) > 0){ |
|
41 |
reactOnUpdate(changeEvents.getEvents(EventType.UPDATE)); |
|
42 |
} |
|
43 |
} |
|
44 |
|
|
45 |
/** {@inheritDoc} */ |
|
46 |
@Override |
|
47 |
public void reactOnUpdate(Vector<CdmDataChangeEvent> events){ |
|
48 |
|
|
49 |
for(CdmDataChangeEvent event : events){ |
|
50 |
|
|
51 |
// update editor title |
|
52 |
if(event.getEntity() instanceof PolytomousKey){ |
|
53 |
if(input.getKey().equals(event.getEntity())){ |
|
54 |
// set the name of the editor window |
|
55 |
source.setPartName(); |
|
56 |
} |
|
57 |
} |
|
58 |
} |
|
59 |
} |
|
60 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/PolytomousKeyGraphEditorE4.java | ||
---|---|---|
26 | 26 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.IPolytomousKeyEditorPage; |
27 | 27 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyGraphContentProvider; |
28 | 28 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyLabelProvider; |
29 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
|
29 | 30 |
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory; |
30 | 31 |
|
31 | 32 |
/** |
... | ... | |
45 | 46 |
@PostConstruct |
46 | 47 |
public void createPartControl(Composite parent, EMenuService menuService, |
47 | 48 |
@Named(IServiceConstants.ACTIVE_SHELL)Shell shell) { |
49 |
if(!CdmStore.isActive()){ |
|
50 |
return; |
|
51 |
} |
|
52 |
|
|
53 |
formFactory = new CdmFormFactory(shell.getDisplay()); |
|
48 | 54 |
container = formFactory.createComposite(parent); |
49 | 55 |
|
50 | 56 |
container.setLayout(new FillLayout()); |
... | ... | |
67 | 73 |
//FIXME E4 migrate |
68 | 74 |
// createToolbar(); |
69 | 75 |
|
70 |
viewer.setInput(getKey()); |
|
71 |
|
|
72 | 76 |
container.addControlListener(new ControlListener() { |
73 | 77 |
|
74 | 78 |
@Override |
... | ... | |
81 | 85 |
|
82 | 86 |
} |
83 | 87 |
}); |
84 |
|
|
85 |
formFactory = new CdmFormFactory(shell.getDisplay()); |
|
86 | 88 |
} |
87 | 89 |
|
88 | 90 |
@Override |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/PolytomousKeyListEditorE4.java | ||
---|---|---|
45 | 45 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
46 | 46 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap; |
47 | 47 |
import eu.etaxonomy.taxeditor.editor.EditorUtil; |
48 |
import eu.etaxonomy.taxeditor.editor.key.KeyEditorDataChangeBehaviour;
|
|
48 |
import eu.etaxonomy.taxeditor.editor.key.e4.KeyEditorDataChangeBehaviourE4;
|
|
49 | 49 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.IPolytomousKeyEditorPage; |
50 | 50 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorInput; |
51 | 51 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyListContentProvider; |
52 | 52 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyListLabelProvider; |
53 | 53 |
import eu.etaxonomy.taxeditor.editor.l10n.Messages; |
54 |
import eu.etaxonomy.taxeditor.model.DataChangeBridge; |
|
54 | 55 |
import eu.etaxonomy.taxeditor.model.IDirtyMarkable; |
55 | 56 |
import eu.etaxonomy.taxeditor.model.IPartContentHasDetails; |
56 | 57 |
import eu.etaxonomy.taxeditor.model.MessagingUtils; |
58 |
import eu.etaxonomy.taxeditor.workbench.part.IE4SavablePart; |
|
57 | 59 |
|
58 | 60 |
/** |
59 | 61 |
* |
... | ... | |
63 | 65 |
*/ |
64 | 66 |
public class PolytomousKeyListEditorE4 implements |
65 | 67 |
IConversationEnabled, IDirtyMarkable, IPartContentHasDetails, |
66 |
IPolytomousKeyEditorPage {
|
|
68 |
IPolytomousKeyEditorPage, IE4SavablePart{
|
|
67 | 69 |
|
68 | 70 |
private class LinkListener extends MouseAdapter { |
69 | 71 |
|
... | ... | |
140 | 142 |
|
141 | 143 |
private TableViewer viewer; |
142 | 144 |
|
143 |
private ConversationHolder conversation; |
|
144 |
|
|
145 |
private KeyEditorDataChangeBehaviour dataChangeBehavior; |
|
145 |
private KeyEditorDataChangeBehaviourE4 dataChangeBehavior; |
|
146 | 146 |
|
147 | 147 |
private PolytomousKeyEditorInput input; |
148 | 148 |
|
... | ... | |
162 | 162 |
} |
163 | 163 |
|
164 | 164 |
@Override |
165 |
public void update(CdmDataChangeMap arg0) { |
|
166 |
|
|
165 |
public void update(CdmDataChangeMap map) { |
|
166 |
if(dataChangeBehavior == null){ |
|
167 |
dataChangeBehavior = new KeyEditorDataChangeBehaviourE4(this); |
|
168 |
} |
|
169 |
DataChangeBridge.handleDataChange(map, dataChangeBehavior); |
|
167 | 170 |
} |
168 | 171 |
|
169 | 172 |
@Override |
... | ... | |
171 | 174 |
return input.getConversationHolder(); |
172 | 175 |
} |
173 | 176 |
|
174 |
@Persist |
|
175 |
public void doSave(IProgressMonitor monitor) { |
|
177 |
@Override |
|
178 |
@Persist |
|
179 |
public void save(IProgressMonitor monitor) { |
|
176 | 180 |
try { |
177 | 181 |
monitor.beginTask(Messages.KeyEditor_SAVING, 1); |
178 | 182 |
getConversationHolder().bind(); |
... | ... | |
196 | 200 |
viewer.setInput(input); |
197 | 201 |
} |
198 | 202 |
|
203 |
public PolytomousKeyEditorInput getEditorInput() { |
|
204 |
return input; |
|
205 |
} |
|
206 |
|
|
199 | 207 |
public boolean isDirty() { |
200 | 208 |
return dirty.isDirty(); |
201 | 209 |
} |
... | ... | |
291 | 299 |
@Override |
292 | 300 |
public boolean postOperation(CdmBase objectAffectedByOperation) { |
293 | 301 |
viewer.refresh(); |
294 |
getConversationHolder().bind(); |
|
295 |
getConversationHolder().commit(true); |
|
296 |
//FIXME E4 migrate/delete |
|
297 |
// editor.changed(objectAffectedByOperation); |
|
302 |
// getConversationHolder().bind(); |
|
303 |
// getConversationHolder().commit(true); |
|
304 |
changed(objectAffectedByOperation); |
|
298 | 305 |
|
299 | 306 |
if (objectAffectedByOperation != null) { |
300 | 307 |
viewer.setSelection(new StructuredSelection( |
... | ... | |
308 | 315 |
return true; |
309 | 316 |
} |
310 | 317 |
|
318 |
public void setPartName() { |
|
319 |
PolytomousKey key = input.getKey(); |
|
320 |
thisPart.setLabel(key.getTitleCache()); |
|
321 |
} |
|
322 |
|
|
311 | 323 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/handler/AbstractPolytomousKeyNodeHandlerE4.java | ||
---|---|---|
1 |
/** |
|
2 |
* Copyright (C) 2016 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.editor.key.polytomous.e4.handler; |
|
10 |
|
|
11 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.IPolytomousKeyEditorPage; |
|
12 |
import eu.etaxonomy.taxeditor.operation.e4.RemotingCdmHandlerE4; |
|
13 |
|
|
14 |
/** |
|
15 |
* @author k.luther |
|
16 |
* @date 24.11.2016 |
|
17 |
* |
|
18 |
*/ |
|
19 |
public abstract class AbstractPolytomousKeyNodeHandlerE4 extends RemotingCdmHandlerE4 { |
|
20 |
|
|
21 |
|
|
22 |
IPolytomousKeyEditorPage editorPage; |
|
23 |
|
|
24 |
public AbstractPolytomousKeyNodeHandlerE4(String label) { |
|
25 |
super(label); |
|
26 |
} |
|
27 |
|
|
28 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/handler/CreateChildNodeHandlerE4.java | ||
---|---|---|
6 | 6 |
import javax.inject.Named; |
7 | 7 |
|
8 | 8 |
import org.eclipse.core.commands.operations.IUndoContext; |
9 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
9 | 10 |
import org.eclipse.e4.core.di.annotations.Execute; |
10 | 11 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
11 | 12 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
... | ... | |
59 | 60 |
} |
60 | 61 |
} |
61 | 62 |
|
63 |
@CanExecute |
|
64 |
public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection, |
|
65 |
MHandledMenuItem menuItem){ |
|
66 |
boolean canExecute = false; |
|
67 |
canExecute = selection!=null && !selection.isEmpty(); |
|
68 |
menuItem.setVisible(canExecute); |
|
69 |
return canExecute; |
|
70 |
} |
|
71 |
|
|
62 | 72 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/handler/DeleteNodeHandlerE4.java | ||
---|---|---|
30 | 30 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.operation.DeleteNodeOperation; |
31 | 31 |
import eu.etaxonomy.taxeditor.editor.l10n.Messages; |
32 | 32 |
import eu.etaxonomy.taxeditor.model.AbstractUtility; |
33 |
import eu.etaxonomy.taxeditor.operation.e4.RemotingCdmHandlerE4; |
|
33 | 34 |
|
34 | 35 |
/** |
35 | 36 |
* @author n.hoffmann |
36 | 37 |
* @created Dec 6, 2010 |
37 | 38 |
* @version 1.0 |
38 | 39 |
*/ |
39 |
public class DeleteNodeHandlerE4 extends AbstractPolytomousKeyNodeHandlerE4 {
|
|
40 |
public class DeleteNodeHandlerE4 extends RemotingCdmHandlerE4 {
|
|
40 | 41 |
|
41 | 42 |
|
42 | 43 |
private static final String DO_YOU_REALLY_WANT_TO_DELETE_THE_NODE_THIS_OPERATION_IS_NOT_REVERSABLE = Messages.DeleteNodeHandler_REALLY_DELETE; |
... | ... | |
117 | 118 |
if (!proceed) { |
118 | 119 |
return null; |
119 | 120 |
}else{ |
120 |
editor.doSave(AbstractUtility.getMonitor());
|
|
121 |
editor.save(AbstractUtility.getMonitor());
|
|
121 | 122 |
} |
122 | 123 |
} |
123 | 124 |
|
124 | 125 |
label = menuItem.getLocalizedLabel(); |
125 | 126 |
DeleteNodeOperation operation ; |
126 | 127 |
if (deleteChildren){ |
127 |
operation = new DeleteNodeOperation(label, undoContext, nodeToBeDeleted, editorPage, true);
|
|
128 |
operation = new DeleteNodeOperation(label, undoContext, nodeToBeDeleted, editor, true); |
|
128 | 129 |
}else{ |
129 |
operation = new DeleteNodeOperation(label, undoContext, nodeToBeDeleted, editorPage, false);
|
|
130 |
operation = new DeleteNodeOperation(label, undoContext, nodeToBeDeleted, editor, false); |
|
130 | 131 |
} |
131 | 132 |
|
132 | 133 |
return operation; |
... | ... | |
145 | 146 |
} |
146 | 147 |
|
147 | 148 |
@CanExecute |
148 |
public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION)Object selection,
|
|
149 |
public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection,
|
|
149 | 150 |
MHandledMenuItem menuItem){ |
150 | 151 |
boolean canExecute = false; |
151 |
canExecute = selection instanceof PolytomousKeyNode;
|
|
152 |
canExecute = selection!=null && !selection.isEmpty();
|
|
152 | 153 |
menuItem.setVisible(canExecute); |
153 | 154 |
return canExecute; |
154 | 155 |
} |
155 | 156 |
|
156 |
} |
|
157 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/handler/InsertNewNodeHandlerE4.java | ||
---|---|---|
25 | 25 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorLabels; |
26 | 26 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyListEditorE4; |
27 | 27 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.operation.InsertPolytomousKeyNodeOperation; |
28 |
import eu.etaxonomy.taxeditor.operation.e4.RemotingCdmHandlerE4; |
|
28 | 29 |
|
29 | 30 |
/** |
30 | 31 |
* @author k.luther |
31 | 32 |
* @date 17.11.2016 |
32 | 33 |
* |
33 | 34 |
*/ |
34 |
public class InsertNewNodeHandlerE4 extends AbstractPolytomousKeyNodeHandlerE4{
|
|
35 |
public class InsertNewNodeHandlerE4 extends RemotingCdmHandlerE4{
|
|
35 | 36 |
|
36 | 37 |
private PolytomousKeyNode parentNode ; |
37 | 38 |
|
... | ... | |
69 | 70 |
@Named(IServiceConstants.ACTIVE_SHELL)Shell shell, |
70 | 71 |
@Named(IServiceConstants.ACTIVE_PART)MPart activePart, |
71 | 72 |
MHandledMenuItem menuItem) { |
72 |
return new InsertPolytomousKeyNodeOperation(getTrigger(), false, parentNode, editorPage); |
|
73 |
PolytomousKeyListEditorE4 editor = (PolytomousKeyListEditorE4) activePart.getObject(); |
|
74 |
return new InsertPolytomousKeyNodeOperation(getTrigger(), false, parentNode, editor); |
|
73 | 75 |
} |
74 | 76 |
|
75 | 77 |
@Override |
... | ... | |
77 | 79 |
} |
78 | 80 |
|
79 | 81 |
@CanExecute |
80 |
public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION)Object selection,
|
|
82 |
public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION)IStructuredSelection selection,
|
|
81 | 83 |
MHandledMenuItem menuItem){ |
82 | 84 |
boolean canExecute = false; |
83 |
canExecute = selection instanceof PolytomousKeyNode;
|
|
85 |
canExecute = selection!=null && !selection.isEmpty();
|
|
84 | 86 |
menuItem.setVisible(canExecute); |
85 | 87 |
return canExecute; |
86 | 88 |
} |
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/e4/handler/OpenPolytomousGraphEditorHandler.java | ||
---|---|---|
1 |
|
|
2 |
package eu.etaxonomy.taxeditor.editor.key.polytomous.e4.handler; |
|
3 |
|
|
4 |
import javax.inject.Named; |
|
5 |
|
|
6 |
import org.eclipse.e4.core.di.annotations.Execute; |
|
7 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
|
8 |
import org.eclipse.e4.ui.services.IServiceConstants; |
|
9 |
import org.eclipse.e4.ui.workbench.modeling.EPartService; |
|
10 |
import org.eclipse.e4.ui.workbench.modeling.EPartService.PartState; |
|
11 |
|
|
12 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyGraphEditorE4; |
|
13 |
import eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyListEditorE4; |
|
14 |
|
|
15 |
public class OpenPolytomousGraphEditorHandler { |
|
16 |
|
|
17 |
@Execute |
|
18 |
public void execute(@Named(IServiceConstants.ACTIVE_PART)MPart activePart, EPartService partService) { |
|
19 |
MPart part = partService.createPart("eu.etaxonomy.taxeditor.editor.key.polytomous.e4.PolytomousKeyGraphEditorE4"); |
|
20 |
part = partService.showPart(part, PartState.ACTIVATE); |
|
21 |
PolytomousKeyGraphEditorE4 graphEditor = (PolytomousKeyGraphEditorE4) part.getObject(); |
|
22 |
PolytomousKeyListEditorE4 listEditor = (PolytomousKeyListEditorE4) activePart.getObject(); |
|
23 |
graphEditor.init(listEditor.getEditorInput()); |
|
24 |
} |
|
25 |
|
|
26 |
} |
eu.etaxonomy.taxeditor.navigation/fragment.e4xmi | ||
---|---|---|
58 | 58 |
<handlers xmi:id="_tvg9wKQVEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RemotingEditPolytomousKeyNodesHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.navigation/eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RemotingEditPolytomousKeyNodesHandlerE4" command="_BrgnkKQVEeeTrq_CRrR-jg"/> |
59 | 59 |
<handlers xmi:id="_xhc-UKQVEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RemotingUpdatePolytomousKeyAllNodesHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.navigation/eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RemotingUpdatePolytomousKeyAllNodesHandlerE4" command="_6S6M4KQVEeeTrq_CRrR-jg"/> |
60 | 60 |
<handlers xmi:id="_CoKnoKQWEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RefreshPolytomousKeyListHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.navigation/eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RefreshPolytomousKeyListHandlerE4" command="_4BQ6YKQVEeeTrq_CRrR-jg"/> |
61 |
<handlers xmi:id="_GjyIoKQWEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.key.polytomous.handler.RemotingDeletePolytomousKeyHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.navigation/eu.etaxonomy.taxeditor.navigation.key.polytomous.handler.RemotingDeletePolytomousKeyHandler" command="_8C8AEKQVEeeTrq_CRrR-jg"/>
|
|
61 |
<handlers xmi:id="_GjyIoKQWEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RemotingDeletePolytomousKeyHandlerE4" contributionURI="bundleclass://eu.etaxonomy.taxeditor.navigation/eu.etaxonomy.taxeditor.navigation.key.polytomous.e4.handler.RemotingDeletePolytomousKeyHandlerE4" command="_8C8AEKQVEeeTrq_CRrR-jg"/>
|
|
62 | 62 |
<menus xsi:type="menu:PopupMenu" xmi:id="_FajhpKQUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.popupmenu.polytomouskeyview"> |
63 | 63 |
<visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FajhpaQUEeeTrq_CRrR-jg" coreExpressionId="isCdmStoreConnected"/> |
64 | 64 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_FajhpqQUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.new" label="%command.label.15" command="_lAZG8KQUEeeTrq_CRrR-jg"/> |
65 | 65 |
<children xsi:type="menu:DynamicMenuContribution" xmi:id="_ot9k4KQUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.polytomouskey.dynamicmenucontribution.cdmViewer" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.view.CdmViewerContextMenuE4"/> |
66 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_Fajhp6QUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.edit" label="%command.label.16"> |
|
67 |
<command href="../eu.etaxonomy.taxeditor.editor/fragment.e4xmi#_uM4zsKO8EeeWePK798pdTw"/> |
|
68 |
</children> |
|
66 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_Fajhp6QUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.edit" label="%command.label.16" command="_BrgnkKQVEeeTrq_CRrR-jg"/> |
|
69 | 67 |
<children xsi:type="menu:Menu" xmi:id="_IKePEKQVEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.menu.polytomouskey.refresh" label="%menu.label.0"> |
70 | 68 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_JS0-QKQVEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.refreshlist" label="%command.label.17" command="_4BQ6YKQVEeeTrq_CRrR-jg"/> |
71 | 69 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_JsJdMKQVEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.refreshnodes" label="%command.label.18" command="_6S6M4KQVEeeTrq_CRrR-jg"/> |
72 | 70 |
</children> |
73 | 71 |
<children xsi:type="menu:MenuSeparator" xmi:id="_FajhqKQUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.editor.menuseparator.18"/> |
74 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_FajhqaQUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.refresh" label="%command.label.19"> |
|
75 |
<command href="../eu.etaxonomy.taxeditor.editor/fragment.e4xmi#_zN-H8KO8EeeWePK798pdTw"/> |
|
76 |
</children> |
|
72 |
<children xsi:type="menu:HandledMenuItem" xmi:id="_FajhqaQUEeeTrq_CRrR-jg" elementId="eu.etaxonomy.taxeditor.navigation.handledmenuitem.polytomouskey.refresh" label="%command.label.19" command="_8C8AEKQVEeeTrq_CRrR-jg"/> |
|
77 | 73 |
</menus> |
78 | 74 |
</elements> |
79 | 75 |
</fragments> |
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/key/polytomous/e4/handler/RemotingEditPolytomousKeyNodesHandlerE4.java | ||
---|---|---|
14 | 14 |
import org.eclipse.core.runtime.IStatus; |
15 | 15 |
import org.eclipse.core.runtime.Status; |
16 | 16 |
import org.eclipse.core.runtime.jobs.Job; |
17 |
import org.eclipse.e4.core.di.annotations.CanExecute; |
|
17 | 18 |
import org.eclipse.e4.core.di.annotations.Execute; |
18 | 19 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
20 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
|
19 | 21 |
import org.eclipse.e4.ui.services.IServiceConstants; |
20 | 22 |
import org.eclipse.e4.ui.workbench.modeling.EPartService; |
21 | 23 |
import org.eclipse.e4.ui.workbench.modeling.EPartService.PartState; |
24 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
22 | 25 |
import org.eclipse.jface.viewers.StructuredSelection; |
23 | 26 |
import org.eclipse.swt.widgets.Display; |
24 | 27 |
|
... | ... | |
90 | 93 |
} |
91 | 94 |
} |
92 | 95 |
|
96 |
@CanExecute |
|
97 |
public boolean canExecute(@Named(IServiceConstants.ACTIVE_SELECTION)Object selection, |
|
98 |
MHandledMenuItem menuItem){ |
|
99 |
boolean canExecute = false; |
|
100 |
canExecute = ((IStructuredSelection)selection).getFirstElement() instanceof PolytomousKey; |
|
101 |
menuItem.setVisible(canExecute); |
|
102 |
return canExecute; |
|
103 |
} |
|
104 |
|
|
93 | 105 |
} |
Also available in: Unified diff
ref #6908 Migrate remaining polytomous context menus and handlers