ref #6805 Avoid dragging of non term objects
authorPatrick Plitzner <p.plitzner@bgbm.org>
Wed, 12 Jul 2017 16:11:13 +0000 (18:11 +0200)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Wed, 12 Jul 2017 16:11:13 +0000 (18:11 +0200)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/DefinedTermDragListener.java

index 24759b846fcef499cccc785ba286e38e18478fc5..61f1d7fd40eab052325bdefcbcdd395a0b569470 100644 (file)
@@ -1,59 +1,63 @@
-/**
-* Copyright (C) 2009 EDIT
-* European Distributed Institute of Taxonomy 
-* http://www.e-taxonomy.eu
-* 
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.definedterm;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.dnd.DragSourceAdapter;
-import org.eclipse.swt.dnd.DragSourceEvent;
-
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;
-
-/**
- * @author l.morris
- * @date 10 Jan 2012
- *
- */
-public class DefinedTermDragListener extends DragSourceAdapter {
-       
-       private Viewer viewer;
-
-       public DefinedTermDragListener(Viewer viewer) {
-               this.viewer = viewer;
-       }
-
-       @Override
-       public void dragStart(DragSourceEvent event) {
-               
-               event.doit = true;// set to false if needed - default is true
-       }
-       }
-
-       @Override
-       public void dragSetData(DragSourceEvent event) {
-               
-               IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
-               List<DefinedTermBase> definedTerms = new ArrayList<DefinedTermBase>();
-               
-               for (Object object : selection.toList()){
-                               definedTerms.add((DefinedTermBase)object);
-                       }
-                       
-               if (TermTransfer.getInstance().isSupportedType(
-                               event.dataType)) {
-                       event.data = definedTerms.toArray(new DefinedTermBase[definedTerms.size()]);
-               }
-       }
-       
-       
-
-}
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy\r
+* http://www.e-taxonomy.eu\r
+*\r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+package eu.etaxonomy.taxeditor.editor.definedterm;\r
+\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+\r
+import org.eclipse.jface.viewers.IStructuredSelection;\r
+import org.eclipse.jface.viewers.Viewer;\r
+import org.eclipse.swt.dnd.DragSourceAdapter;\r
+import org.eclipse.swt.dnd.DragSourceEvent;\r
+\r
+import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
+\r
+/**\r
+ * @author l.morris\r
+ * @date 10 Jan 2012\r
+ *\r
+ */\r
+public class DefinedTermDragListener extends DragSourceAdapter {\r
+\r
+       private Viewer viewer;\r
+\r
+       public DefinedTermDragListener(Viewer viewer) {\r
+               this.viewer = viewer;\r
+       }\r
+\r
+       @Override\r
+       public void dragStart(DragSourceEvent event) {\r
+           IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();\r
+           List list = selection.toList();\r
+           for (Object object : list) {\r
+            if(!(object instanceof DefinedTermBase)){\r
+                event.doit = false;\r
+                return;\r
+            }\r
+        }\r
+               event.doit = true;\r
+       }\r
+\r
+       @Override\r
+       public void dragSetData(DragSourceEvent event) {\r
+\r
+               IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();\r
+               List<DefinedTermBase> definedTerms = new ArrayList<DefinedTermBase>();\r
+\r
+               for (Object object : selection.toList()){\r
+                               definedTerms.add((DefinedTermBase)object);\r
+                       }\r
+\r
+               if (TermTransfer.getInstance().isSupportedType(\r
+                               event.dataType)) {\r
+                       event.data = definedTerms.toArray(new DefinedTermBase[definedTerms.size()]);\r
+               }\r
+       }\r
+\r
+}\r