Revision 41963d8b
Added by Katja Luther over 3 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/character/CharacterEditor.java | ||
---|---|---|
235 | 235 |
return; |
236 | 236 |
} |
237 | 237 |
Collection<Character> characters = createCharacters((TreeSelection)structureTreeSelection, (TreeSelection)propertyTreeSelection); |
238 |
TermNodeDto parent = ((TermTreeDto) characterTreeEditorComposite.getViewer().getInput()).getRoot();
|
|
238 |
TermNodeDto parent = characterTreeEditorComposite.getFeatureTree().getRoot();
|
|
239 | 239 |
for (Character character : characters) { |
240 | 240 |
//add new Character to feature tree |
241 |
// CreateNewCharacterOperation operation = new CreateNewCharacterOperation("Create new character", null, character, null); |
|
242 |
// operations.add(operation); |
|
241 |
|
|
242 |
|
|
243 | 243 |
UpdateResult result = CdmStore.getService(IFeatureNodeService.class).createChildFeatureNode(parent.getUuid(), character, vocabulary.getUuid()); |
244 | 244 |
cdmEntitySession.load(result, true); |
245 |
characterTreeEditorComposite.getViewer().setInput(((TermNode)result.getCdmEntity()).getGraph());
|
|
245 |
characterTreeEditorComposite.setSelectedTree((TermTree)((TermNode)result.getCdmEntity()).getGraph());
|
|
246 | 246 |
|
247 |
// cdmEntitySession.load(result, true); |
|
248 |
// characterTreeEditorComposite.getViewer().setInput(((TermNode)result.getCdmEntity()).getGraph()); |
|
249 | 247 |
} |
248 |
|
|
250 | 249 |
refresh(); |
251 | 250 |
} |
252 | 251 |
}); |
... | ... | |
582 | 581 |
} |
583 | 582 |
|
584 | 583 |
|
584 |
|
|
585 |
|
|
585 | 586 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/ICharacterEditor.java | ||
---|---|---|
17 | 17 |
*/ |
18 | 18 |
public interface ICharacterEditor extends IFeatureTreeEditor<Character> { |
19 | 19 |
|
20 |
|
|
20 | 21 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/IFeatureTreeEditor.java | ||
---|---|---|
37 | 37 |
public void setDirty(); |
38 | 38 |
|
39 | 39 |
public TreeViewer getViewer(); |
40 |
public void refresh(); |
|
41 |
|
|
40 | 42 |
|
41 | 43 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/handler/AddChildFeatureHandler.java | ||
---|---|---|
24 | 24 |
import org.eclipse.jface.wizard.WizardDialog; |
25 | 25 |
import org.eclipse.swt.widgets.Shell; |
26 | 26 |
|
27 |
import eu.etaxonomy.cdm.model.description.Character; |
|
27 | 28 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase; |
29 |
import eu.etaxonomy.cdm.persistence.dto.CharacterDto; |
|
30 |
import eu.etaxonomy.cdm.persistence.dto.CharacterNodeDto; |
|
28 | 31 |
import eu.etaxonomy.cdm.persistence.dto.TermDto; |
29 | 32 |
import eu.etaxonomy.cdm.persistence.dto.TermNodeDto; |
30 | 33 |
import eu.etaxonomy.taxeditor.featuretree.AvailableFeaturesWizard; |
31 | 34 |
import eu.etaxonomy.taxeditor.featuretree.e4.AbstractTermTreeEditor; |
35 |
import eu.etaxonomy.taxeditor.featuretree.e4.ICharacterEditor; |
|
32 | 36 |
import eu.etaxonomy.taxeditor.featuretree.e4.IFeatureTreeEditor; |
33 | 37 |
import eu.etaxonomy.taxeditor.featuretree.e4.operation.AddFeatureOperation; |
34 | 38 |
import eu.etaxonomy.taxeditor.store.StoreUtil; |
... | ... | |
71 | 75 |
// AbstractUtility.executeOperation(operation, sync); |
72 | 76 |
editor.addOperation(operation); |
73 | 77 |
editor.setDirty(); |
74 |
TermNodeDto newDto = new TermNodeDto(TermDto.fromTerm(term), parent, 0, parent.getTree(), null, null, null); |
|
75 | 78 |
|
76 |
((AbstractTermTreeEditor)editor).getViewer().refresh(); |
|
79 |
if (editor instanceof ICharacterEditor){ |
|
80 |
CharacterNodeDto newDto = new CharacterNodeDto(CharacterDto.fromCharacter((Character)term), parent, 0, parent.getTree(), null, null, null); |
|
81 |
}else{ |
|
82 |
TermNodeDto newDto = new TermNodeDto(TermDto.fromTerm(term), parent, 0, parent.getTree(), null, null, null); |
|
83 |
} |
|
84 |
|
|
85 |
// ((AbstractTermTreeEditor)editor).getViewer().refresh(); |
|
86 |
if (editor instanceof ICharacterEditor){ |
|
87 |
editor.refresh(); |
|
88 |
}else{ |
|
89 |
((AbstractTermTreeEditor)editor).getViewer().setInput(((AbstractTermTreeEditor)editor).getTrees()); |
|
90 |
} |
|
77 | 91 |
} |
78 | 92 |
} |
79 | 93 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/handler/AddFeatureHandler.java | ||
---|---|---|
24 | 24 |
import org.eclipse.jface.wizard.WizardDialog; |
25 | 25 |
import org.eclipse.swt.widgets.Shell; |
26 | 26 |
|
27 |
import eu.etaxonomy.cdm.model.description.Character; |
|
27 | 28 |
import eu.etaxonomy.cdm.model.term.DefinedTermBase; |
29 |
import eu.etaxonomy.cdm.persistence.dto.CharacterDto; |
|
30 |
import eu.etaxonomy.cdm.persistence.dto.CharacterNodeDto; |
|
28 | 31 |
import eu.etaxonomy.cdm.persistence.dto.TermDto; |
29 | 32 |
import eu.etaxonomy.cdm.persistence.dto.TermNodeDto; |
30 | 33 |
import eu.etaxonomy.cdm.persistence.dto.TermTreeDto; |
31 | 34 |
import eu.etaxonomy.taxeditor.featuretree.AvailableFeaturesWizard; |
32 | 35 |
import eu.etaxonomy.taxeditor.featuretree.e4.AbstractTermTreeEditor; |
36 |
import eu.etaxonomy.taxeditor.featuretree.e4.ICharacterEditor; |
|
33 | 37 |
import eu.etaxonomy.taxeditor.featuretree.e4.IFeatureTreeEditor; |
34 | 38 |
import eu.etaxonomy.taxeditor.featuretree.e4.operation.AddFeatureOperation; |
35 | 39 |
import eu.etaxonomy.taxeditor.store.StoreUtil; |
... | ... | |
75 | 79 |
AddFeatureOperation operation = new AddFeatureOperation(term.getUuid(), tree.getRoot(), editor, editor); |
76 | 80 |
editor.addOperation(operation); |
77 | 81 |
editor.setDirty(); |
78 |
TermNodeDto newDto = new TermNodeDto(TermDto.fromTerm(term), tree.getRoot(), 0, tree, null, null, null); |
|
82 |
if (editor instanceof ICharacterEditor){ |
|
83 |
CharacterNodeDto newDto = new CharacterNodeDto(CharacterDto.fromCharacter((Character)term), tree.getRoot(), 0, tree, null, null, null); |
|
84 |
}else{ |
|
85 |
TermNodeDto newDto = new TermNodeDto(TermDto.fromTerm(term), tree.getRoot(), 0, tree, null, null, null); |
|
86 |
} |
|
79 | 87 |
|
80 | 88 |
// ((AbstractTermTreeEditor)editor).getViewer().refresh(); |
81 |
((AbstractTermTreeEditor)editor).getViewer().setInput(((AbstractTermTreeEditor)editor).getTrees()); |
|
89 |
if (editor instanceof ICharacterEditor){ |
|
90 |
editor.refresh(); |
|
91 |
}else{ |
|
92 |
((AbstractTermTreeEditor)editor).getViewer().setInput(((AbstractTermTreeEditor)editor).getTrees()); |
|
93 |
} |
|
82 | 94 |
} |
83 | 95 |
} |
84 | 96 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/handler/RemoveFeatureHandler.java | ||
---|---|---|
17 | 17 |
import org.eclipse.e4.ui.model.application.ui.basic.MPart; |
18 | 18 |
import org.eclipse.e4.ui.model.application.ui.menu.MHandledMenuItem; |
19 | 19 |
import org.eclipse.e4.ui.services.IServiceConstants; |
20 |
import org.eclipse.jface.viewers.ISelection; |
|
20 | 21 |
import org.eclipse.jface.viewers.IStructuredSelection; |
22 |
import org.eclipse.jface.viewers.TreeSelection; |
|
21 | 23 |
|
22 | 24 |
import eu.etaxonomy.cdm.persistence.dto.TermNodeDto; |
23 |
import eu.etaxonomy.cdm.persistence.dto.TermTreeDto; |
|
24 |
import eu.etaxonomy.taxeditor.featuretree.e4.AbstractTermTreeEditor; |
|
25 | 25 |
import eu.etaxonomy.taxeditor.featuretree.e4.IFeatureTreeEditor; |
26 | 26 |
import eu.etaxonomy.taxeditor.featuretree.e4.operation.RemoveFeatureOperation; |
27 | 27 |
import eu.etaxonomy.taxeditor.store.StoreUtil; |
... | ... | |
41 | 41 |
if (StoreUtil.promptCheckIsDirty(editor)) { |
42 | 42 |
return; |
43 | 43 |
}else{ |
44 |
((AbstractTermTreeEditor)editor).refresh(); |
|
44 |
|
|
45 |
editor.refresh(); |
|
46 |
|
|
45 | 47 |
} |
46 | 48 |
if(!StoreUtil.confirmDelete()){ |
47 | 49 |
return; |
... | ... | |
55 | 57 |
editor.addOperation(operation); |
56 | 58 |
|
57 | 59 |
// featureNode.getTree().removeChild(featureNode); |
58 |
for (Object treeDto: ((AbstractTermTreeEditor)editor).getTrees()){ |
|
59 |
if (treeDto instanceof TermTreeDto && ((TermTreeDto)treeDto).getUuid().equals(featureNode.getTree().getUuid())){ |
|
60 |
((TermTreeDto)treeDto).removeChild(featureNode); |
|
60 |
ISelection sel = editor.getViewer().getSelection(); |
|
61 |
if (sel instanceof TreeSelection){ |
|
62 |
Object o =((TreeSelection) sel).getFirstElement(); |
|
63 |
if (o instanceof TermNodeDto && ((TermNodeDto)o).getUuid().equals(featureNode.getUuid())){ |
|
64 |
TermNodeDto parent = editor.getNodeDtoForUuid(featureNode.getParentUuid()); |
|
65 |
parent.removeChild(featureNode); |
|
61 | 66 |
} |
62 |
|
|
63 | 67 |
} |
64 |
((AbstractTermTreeEditor)editor).getViewer().setInput(((AbstractTermTreeEditor)editor).getTrees()); |
|
68 |
editor.refresh(); |
|
69 |
// }else{ |
|
70 |
// for (Object treeDto: ((AbstractTermTreeEditor)editor).getTrees()){ |
|
71 |
// if (treeDto instanceof TermTreeDto && ((TermTreeDto)treeDto).getUuid().equals(featureNode.getTree().getUuid())){ |
|
72 |
// ((TermTreeDto)treeDto).removeChild(featureNode); |
|
73 |
// } |
|
74 |
// |
|
75 |
// } |
|
76 |
// ((AbstractTermTreeEditor)editor).getViewer().setInput(((AbstractTermTreeEditor)editor).getTrees()); |
|
77 |
// } |
|
78 |
|
|
65 | 79 |
editor.setDirty(); |
66 | 80 |
} |
67 | 81 |
} |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/e4/details/DetailsViewerE4.java | ||
---|---|---|
394 | 394 |
createFeatureTreeSection(rootElement); |
395 | 395 |
|
396 | 396 |
} else if (input instanceof TermNodeDto) { |
397 |
TermType type= ((TermNodeDto) input).getType(); |
|
397 |
TermType type= ((TermNodeDto) input).getTerm().getTermType();
|
|
398 | 398 |
if(type.equals(TermType.Character) && activePart instanceof ICharacterEditor){ |
399 | 399 |
createCharacterNodeDtoSection(rootElement); |
400 | 400 |
} |
Also available in: Unified diff
ref #8774: smaller changes in character editor or correct right click menu usage