*/
package eu.etaxonomy.taxeditor.editor.workingSet;
-import java.util.Set;
-
import org.eclipse.jface.util.LocalSelectionTransfer;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.ViewerDropAdapter;
import org.eclipse.swt.dnd.TransferData;
-import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
-import eu.etaxonomy.cdm.model.taxon.TaxonNode;
import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto;
-import eu.etaxonomy.taxeditor.editor.l10n.Messages;
-import eu.etaxonomy.taxeditor.model.MessagingUtils;
-import eu.etaxonomy.taxeditor.store.CdmStore;
/**
* @author pplitzner
@Override
public boolean performDrop(Object data) {
TaxonNodeDto taxonNodeDto = (TaxonNodeDto) ((ITreeSelection) data).getFirstElement();
- TaxonNode taxonNode = CdmStore.getService(ITaxonNodeService.class).load(taxonNodeDto.getUuid());
- //check if node belongs to same classification
- Set<TaxonNode> taxonSubtreeFilter = workingSetEditor.getWorkingSet().getTaxonSubtreeFilter();
- if(taxonSubtreeFilter!=null && !taxonSubtreeFilter.isEmpty()){
- if(!taxonSubtreeFilter.iterator().next().getClassification().equals(taxonNode.getClassification())){
- MessagingUtils.warningDialog(Messages.TaxonNodeDropAdapter_CLASSIFICATIONS_NO_MATCH, this.getClass(),
- Messages.TaxonNodeDropAdapter_CLASSIFICATIONS_NO_MATCH_MESSAGE);
- return false;
- }
-
- }
- workingSetEditor.addTaxonNode(taxonNode);
+ workingSetEditor.addTaxonNode(taxonNodeDto);
return true;
}
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
+import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
import eu.etaxonomy.cdm.api.service.ITermService;
import eu.etaxonomy.cdm.api.service.IWorkingSetService;
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
import eu.etaxonomy.cdm.model.name.Rank;
import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
+import eu.etaxonomy.cdm.persistence.dto.TaxonNodeDto;
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
import eu.etaxonomy.taxeditor.editor.l10n.Messages;
import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
composite.getTxt_label().addModifyListener(labelModifyListener);
}
- public void addTaxonNode(TaxonNode taxonNode){
- //load into WS editor session
- taxonNode = getCdmEntitySession().load(taxonNode, false);
+ public void addTaxonNode(TaxonNodeDto taxonNodeDto){
+ TaxonNode taxonNode = CdmStore.getService(ITaxonNodeService.class).load(taxonNodeDto.getUuid());
+ //check if node belongs to same classification
+ Set<TaxonNode> taxonSubtreeFilter = workingSet.getTaxonSubtreeFilter();
+ if(taxonSubtreeFilter!=null && !taxonSubtreeFilter.isEmpty()){
+ if(!taxonSubtreeFilter.iterator().next().getClassification().equals(taxonNode.getClassification())){
+ MessagingUtils.warningDialog(Messages.TaxonNodeDropAdapter_CLASSIFICATIONS_NO_MATCH, this.getClass(),
+ Messages.TaxonNodeDropAdapter_CLASSIFICATIONS_NO_MATCH_MESSAGE);
+ }
+
+ }
Viewer taxonTreeViewer = getTaxonTreeViewer();
Object input = taxonTreeViewer.getInput();
Collection<TaxonNode> treeNodes;