commit 19f11b2f7f0c1df5630a8a6ff9fd9dbe323d5f28
Author: Patrick Plitzner
Date: Fri May 4 14:19:28 2018 +0200
Fix dragging of UuidAndTitleCache objects into GA editor
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/dnd/CdmAuthorityTableDropTargetListener.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/dnd/CdmAuthorityTableDropTargetListener.java
index 9d65bc1fd..bd730baae 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/dnd/CdmAuthorityTableDropTargetListener.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/dnd/CdmAuthorityTableDropTargetListener.java
@@ -16,6 +16,8 @@ import org.eclipse.swt.dnd.DropTargetEvent;
import org.eclipse.swt.dnd.DropTargetListener;
import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
+import eu.etaxonomy.taxeditor.store.CdmStore;
import eu.etaxonomy.taxeditor.ui.group.grantedauthority.CdmAuthorityComposite;
import eu.etaxonomy.taxeditor.ui.group.grantedauthority.CdmAuthorityCompositeViewer;
@@ -71,12 +73,18 @@ public class CdmAuthorityTableDropTargetListener implements DropTargetListener {
else{
addAuthority(data);
}
+ viewer.getControl().setFocus();
}
private void addAuthority(Object authority){
if(CdmBase.class.isAssignableFrom(authority.getClass()) ) {
viewer.addCdmAuthority((CdmBase)authority);
}
+ else if(authority instanceof UuidAndTitleCache){
+ UuidAndTitleCache uuidAndTitleCache = (UuidAndTitleCache) authority;
+ CdmBase cdmBase = CdmStore.getCommonService().find(uuidAndTitleCache.getType(), uuidAndTitleCache.getUuid());
+ viewer.addCdmAuthority(cdmBase);
+ }
}
@Override