Project

General

Profile

« Previous | Next » 

Revision 41963d8b

Added by Katja Luther over 3 years ago

ref #8774: smaller changes in character editor or correct right click menu usage

View differences:

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