Project

General

Profile

« Previous | Next » 

Revision a4063890

Added by Patrick Plitzner over 5 years ago

ref #7923 Use character transfer instead of LocalSelectionTransfer

View differences:

eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/descriptiveDataSet/character/CharacterDragListener.java
8 8
*/
9 9
package eu.etaxonomy.taxeditor.editor.descriptiveDataSet.character;
10 10

  
11
import java.util.List;
11
import java.util.Collection;
12 12

  
13
import org.eclipse.jface.util.LocalSelectionTransfer;
14
import org.eclipse.jface.viewers.StructuredSelection;
13
import org.eclipse.jface.viewers.IStructuredSelection;
15 14
import org.eclipse.jface.viewers.TreeSelection;
16 15
import org.eclipse.jface.viewers.TreeViewer;
17 16
import org.eclipse.swt.dnd.DragSourceEvent;
18 17

  
19 18
import eu.etaxonomy.cdm.model.description.Character;
19
import eu.etaxonomy.cdm.model.description.FeatureNode;
20
import eu.etaxonomy.taxeditor.featuretree.CharacterTransfer;
20 21
import eu.etaxonomy.taxeditor.featuretree.e4.FeatureNodeDragListener;
21 22

  
22 23
/**
......
42 43
        if(structureSelection!=null && propertySelection!=null
43 44
                && !structureSelection.isEmpty() && !propertySelection.isEmpty()){
44 45
            //create all possible characters
45
            List<Character> characters = CharacterEditor.createCharacters(structureSelection, propertySelection);
46
            Collection<Character> characters = CharacterEditor.createCharacters(structureSelection, propertySelection);
46 47

  
47
            LocalSelectionTransfer.getTransfer().setSelection(new StructuredSelection(characters));
48
            if (CharacterTransfer.getInstance().isSupportedType(event.dataType)) {
49
                event.data = characters;
50
            }
48 51
        }
49 52
    }
50 53

  
54
    /**
55
     * Method declared on DragSourceListener
56
     */
57
    @Override
58
    public void dragStart(DragSourceEvent event) {
59
        event.doit =
60
                !structureViewer.getSelection().isEmpty()
61
                && !propertyViewer.getSelection().isEmpty()
62
                && ((IStructuredSelection) structureViewer.getSelection()).toList()
63
                .stream().allMatch(element -> element instanceof FeatureNode)
64
                && ((IStructuredSelection) propertyViewer.getSelection()).toList()
65
                .stream().allMatch(element -> element instanceof FeatureNode);
66
    }
67

  
51 68
}

Also available in: Unified diff