fixes 1160 finally
authorn.hoffmann <n.hoffmann@localhost>
Thu, 28 Jan 2010 14:37:16 +0000 (14:37 +0000)
committern.hoffmann <n.hoffmann@localhost>
Thu, 28 Jan 2010 14:37:16 +0000 (14:37 +0000)
.gitattributes
taxeditor-navigation/plugin.xml
taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/DeleteTreeNodeHandler.java [moved from taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/DeleteTaxonNodeHandler.java with 96% similarity]
taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/MoveTaxonHandler.java [new file with mode: 0644]
taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/TaxonDropAdapterAssistant.java
taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/operations/MoveTaxonOperation.java

index 37bffd995a5a482b7c12a33aa36e7f3e7ce58023..849bfb1e4e1f9c760478aece490b886addd7004c 100644 (file)
@@ -381,8 +381,9 @@ taxeditor-navigation/pom.xml -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/NavigationUtil.java -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/RecentNamesContributionItem.java -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/WorkbenchUndoContextAdapterFactory.java -text
-taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/DeleteTaxonNodeHandler.java -text
+taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/DeleteTreeNodeHandler.java -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/EditTaxonHandler.java -text
+taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/MoveTaxonHandler.java -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/NewTaxonNodeHandler.java -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/NewTaxonomicTreeHandler.java -text
 taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/NewTaxonomicTreeWizardPage.java -text
index 99a5b1a2c75f19315bd60b7ed64e8400cb9bbf97..1a9d400979453f7bf82c9c6c484ad83bcff92db8 100644 (file)
                label="Quick Add Child "
                style="push">
          </command-->
-         <separator
-               name="taxeditor-navigation.separator3"
-               visible="true">
-         </separator>
          <command
                commandId="org.eclipse.ui.file.import"
                label="Import..."
                commandId="org.eclipse.ui.edit.delete"
                label="Delete"
                style="push">
+            <visibleWhen>
+               <not>
+                  <reference
+                        definitionId="isSynonymNode">
+                  </reference>
+               </not>
+            </visibleWhen>
          </command>
          <separator
                name="taxeditor-navigation.separator5"
          </command>
       </menuContribution>
    </extension>
+   <extension
+         point="org.eclipse.ui.commands">
+      <command
+            defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.NewTaxonNodeHandler"
+            id="eu.etaxonomy.taxeditor.navigation.newTaxonNode"
+            name="New Taxon Node">
+      </command>
+      <command
+            defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.NewTaxonomicTreeHandler"
+            id="eu.etaxonomy.taxeditor.navigation.newTaxonomicTree"
+            name="New Taxonomic Tree">
+      </command>
+   </extension>
    <extension
          point="org.eclipse.ui.commands">
       <command
             id="eu.etaxonomy.taxeditor.navigation.command.moveTaxon"
             name="Move Taxon">
       </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.CreateChildTaxonHandler"
-            id="eu.etaxonomy.taxeditor.navigation.command.createChildTaxon"
-            name="Create Child Taxon">
-      </command>
-      <command
-            id="org.eclipse.ui.edit.delete"
-            name="Delete Taxon ">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.QuickCreateChildTaxonHandler"
-            id="eu.etaxonomy.taxeditor.navigation.command.quickCreateChildTaxon"
-            name="Quick Create Child Taxon">
-      </command>
       <command
             defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.RefreshTreeHandler"
             id="org.eclipse.ui.file.refresh"
    <extension
          point="org.eclipse.ui.handlers">
       <handler
-            class="eu.etaxonomy.taxeditor.navigation.handler.DeleteTaxonNodeHandler"
+            class="eu.etaxonomy.taxeditor.navigation.handler.DeleteTreeNodeHandler"
             commandId="org.eclipse.ui.edit.delete">
          <enabledWhen>
             <with
             name="Show Taxonomic Tree View">
       </command>
    </extension>
-   <extension
-         point="org.eclipse.ui.commands">
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.NewTaxonNodeHandler"
-            id="eu.etaxonomy.taxeditor.navigation.newTaxonNode"
-            name="New Taxon Node">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.navigation.handler.NewTaxonomicTreeHandler"
-            id="eu.etaxonomy.taxeditor.navigation.newTaxonomicTree"
-            name="New Taxonomic Tree">
-      </command>
-   </extension>
 
       <extension
          point="org.eclipse.ui.themes">
similarity index 96%
rename from taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/DeleteTaxonNodeHandler.java
rename to taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/DeleteTreeNodeHandler.java
index 641075e158d1670b46aeb8a4ccfe012736790a2d..064285a75d4251f443fd556e76eb0c17bd720914 100644 (file)
@@ -43,9 +43,9 @@ import eu.etaxonomy.taxeditor.operations.DeleteTreeNodeOperation;
  * @created 06.04.2009
  * @version 1.0
  */
-public class DeleteTaxonNodeHandler extends AbstractHandler implements IHandler{
+public class DeleteTreeNodeHandler extends AbstractHandler implements IHandler{
        private static final Logger logger = Logger
-                       .getLogger(DeleteTaxonNodeHandler.class);
+                       .getLogger(DeleteTreeNodeHandler.class);
        private IWorkbenchPage activePage;
        private TaxonNavigator taxonNavigator;
 
diff --git a/taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/MoveTaxonHandler.java b/taxeditor-navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/handler/MoveTaxonHandler.java
new file mode 100644 (file)
index 0000000..f675eed
--- /dev/null
@@ -0,0 +1,103 @@
+/**
+* Copyright (C) 2007 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.navigation.handler;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
+
+import org.apache.log4j.Logger;
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.commands.operations.IUndoableOperation;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.TreeSelection;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.cdm.model.taxon.TaxonNode;
+import eu.etaxonomy.taxeditor.dialogs.filteredSelection.FilteredTaxonNodeSelectionDialog;
+import eu.etaxonomy.taxeditor.navigation.NavigationUtil;
+import eu.etaxonomy.taxeditor.navigation.navigator.TaxonNavigator;
+import eu.etaxonomy.taxeditor.operations.IPostOperationEnabled;
+import eu.etaxonomy.taxeditor.operations.MoveTaxonOperation;
+
+/**
+ * @author n.hoffmann
+ * @created 01.04.2009
+ * @version 1.0
+ */
+public class MoveTaxonHandler extends AbstractHandler implements IPostOperationEnabled {
+       private static final Logger logger = Logger
+                       .getLogger(MoveTaxonHandler.class);
+       private TaxonNode parentTaxonNode;
+
+       /* (non-Javadoc)
+        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+        */
+       public Object execute(ExecutionEvent event) throws ExecutionException {
+               TaxonNavigator taxonNavigator;
+               try {
+                       taxonNavigator = (TaxonNavigator) NavigationUtil.getView(TaxonNavigator.ID);
+               } catch (PartInitException e) {
+                       logger.error(e);
+                       throw new RuntimeException(e);
+               }
+               
+               TreeSelection selection = (TreeSelection) HandlerUtil.getCurrentSelection(event);
+               
+               Iterator selectionIterator = selection.iterator();
+               Set<TaxonNode> taxonNodes = new HashSet<TaxonNode>();
+               // do not show the current selection
+               List<UUID> excludeTaxa = new ArrayList<UUID>();
+               
+       
+               while (selectionIterator.hasNext()){
+                       Object object = selectionIterator.next();
+                       if(object instanceof TaxonNode){
+                               TaxonNode taxonNode = (TaxonNode) object;
+                               taxonNodes.add(taxonNode);
+                               excludeTaxa.add(taxonNode.getTaxon().getUuid());
+                       }
+               }
+               
+//             TaxonNode taxonNode = (TaxonNode) selection.getFirstElement();
+               
+               parentTaxonNode = FilteredTaxonNodeSelectionDialog.selectTaxonNode(HandlerUtil.getActiveShell(event), "Choose new parent", excludeTaxa, null);
+                               
+               if(parentTaxonNode != null){
+                       if(NavigationUtil.isDirty(parentTaxonNode)){
+                               MessageDialog.openWarning(HandlerUtil.getActiveShell(event), "Unsaved Parent Taxon", "There are unsaved " +
+                                               "changes in the parent taxon. Please save first.");
+                               return null;
+                       }
+                       
+                       IUndoableOperation operation = new MoveTaxonOperation
+                                       ("Move taxon to new parent", NavigationUtil.getUndoContext(), 
+                                                       taxonNodes, parentTaxonNode, this, taxonNavigator); //$NON-NLS-1$
+                       NavigationUtil.executeOperation(operation);
+               
+               }
+               
+               return null;
+       }
+
+       /* (non-Javadoc)
+        * @see eu.etaxonomy.taxeditor.operations.IPostOperationEnabled#postOperation(eu.etaxonomy.cdm.model.common.CdmBase)
+        */
+       public boolean postOperation(CdmBase objectAffectedByOperation) {
+               return true;
+       }
+}
index 1674eedda794f5d9e16748e9b6e67415b0e9a17e..55a65471f0323e3ac7791c05bf3b7da7c5142703 100644 (file)
 \r
 package eu.etaxonomy.taxeditor.navigation.navigator;\r
 \r
+import java.util.HashSet;\r
+import java.util.Iterator;\r
+import java.util.Set;\r
+\r
 import org.apache.log4j.Logger;\r
 import org.eclipse.core.commands.operations.IUndoContext;\r
 import org.eclipse.core.commands.operations.IUndoableOperation;\r
@@ -42,8 +46,6 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
                        .getLogger(TaxonDropAdapterAssistant.class);\r
 \r
        public static final String ID = "eu.etaxonomy.taxeditor.navigation.navigator.dropassistant"; //$NON-NLS-1$\r
-\r
-       private ITreeNode target;\r
        \r
        /* (non-Javadoc)\r
         * @see org.eclipse.ui.navigator.CommonDropAdapterAssistant#handleDrop(org.eclipse.ui.navigator.CommonDropAdapter, org.eclipse.swt.dnd.DropTargetEvent, java.lang.Object)\r
@@ -51,21 +53,34 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
        @Override\r
        public IStatus handleDrop(CommonDropAdapter dropAdapter,\r
                        DropTargetEvent dropTargetEvent, Object target) {\r
+                       \r
+               if (target instanceof ITreeNode) {\r
+                       Set<TaxonNode> taxonNodes = getSelectedTaxa();\r
+                       ITreeNode targetTreeNode = (ITreeNode) target;\r
+                       if(taxonNodes != null)\r
+                               return moveTaxon(taxonNodes, targetTreeNode);\r
+               }\r
+                                                       \r
+               return Status.CANCEL_STATUS;\r
+       }\r
+       \r
+       private Set<TaxonNode> getSelectedTaxa(){\r
+               HashSet<TaxonNode> taxonNodes = new HashSet<TaxonNode>();               \r
                \r
                ISelection selection = LocalSelectionTransfer.getTransfer().getSelection();\r
                if (selection instanceof TreeSelection) {\r
-                       Object element = ((TreeSelection) selection).getFirstElement();\r
-                       if (element instanceof TaxonNode) {\r
-                               TaxonNode childTaxonNode = (TaxonNode) element;\r
-                               if (target instanceof ITreeNode) {\r
-                                       ITreeNode targetTreeNode = (ITreeNode) target;\r
-                                       \r
-                                       return moveTaxon(childTaxonNode, targetTreeNode);\r
+               \r
+                       Iterator selectionIterator = ((TreeSelection) selection).iterator();\r
+                               \r
+                       while (selectionIterator.hasNext()){\r
+                               Object object = selectionIterator.next();\r
+                               if(object instanceof TaxonNode){\r
+                                       TaxonNode taxonNode = (TaxonNode) object;\r
+                                       taxonNodes.add(taxonNode);\r
                                }\r
                        }\r
                }\r
-                               \r
-               return Status.CANCEL_STATUS;\r
+               return taxonNodes.size() > 0 ? taxonNodes : null;\r
        }\r
 \r
        /* (non-Javadoc)\r
@@ -73,10 +88,16 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
         */\r
        @Override\r
        public IStatus validateDrop(Object target, int operation,\r
-                       TransferData transferType) {\r
+                       TransferData transferType) {            \r
                if (target instanceof ITreeNode) {\r
+                       // do not allow to drop onto itself\r
+                       for(TaxonNode taxonNode : getSelectedTaxa()){\r
+                               if (taxonNode.equals(target)) {\r
+                                       return Status.CANCEL_STATUS;\r
+                               }\r
+                       }\r
                        return Status.OK_STATUS;\r
-               }\r
+               }               \r
                return Status.CANCEL_STATUS;\r
        }\r
        \r
@@ -86,7 +107,7 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
         * @param parentTaxon\r
         * @return\r
         */\r
-       private IStatus moveTaxon(TaxonNode childTaxonNode, ITreeNode targetTreeNode) {\r
+       private IStatus moveTaxon(Set<TaxonNode> taxonNodes, ITreeNode targetITreeNode) {\r
                \r
                TaxonNavigator taxonNavigator;\r
                try {\r
@@ -96,21 +117,15 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
                        throw new RuntimeException(e);\r
                }\r
                \r
-               this.target = targetTreeNode;\r
+               if(targetITreeNode instanceof TaxonNode){\r
                \r
-               if(targetTreeNode instanceof TaxonNode){\r
-               \r
-                       TaxonNode targetTaxonNode = (TaxonNode) targetTreeNode;\r
+                       TaxonNode targetTaxonNode = (TaxonNode) targetITreeNode;\r
                        \r
-                       // Make sure parentTaxon is not the drop target\r
-                       if (!childTaxonNode.isTopmostNode() && childTaxonNode.getParent().equals(targetTaxonNode)){\r
-                               return Status.CANCEL_STATUS;\r
-                       }\r
-                       \r
-                       // Make sure taxon is not being dropped onto itself\r
-                       if (childTaxonNode.equals(targetTaxonNode)) {\r
-                               return Status.CANCEL_STATUS;\r
-                       }\r
+//                     for(TaxonNode taxonNode : taxonNodes){\r
+//                             if (taxonNode.equals(targetTaxonNode)) {\r
+//                                     return Status.CANCEL_STATUS;\r
+//                             }\r
+//                     }\r
                        \r
                        // Make sure parent taxon does not have unsaved changes\r
                        if (NavigationUtil.isDirty(targetTaxonNode)){\r
@@ -118,6 +133,20 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
                                "changes in the parent taxon. Pleas save first.");\r
                                return Status.CANCEL_STATUS;\r
                        }\r
+                       \r
+                       \r
+                       // Make sure parentTaxon is not the drop target\r
+//                     if (!childTaxonNode.isTopmostNode() && childTaxonNode.getParent().equals(targetTaxonNode)){\r
+//                             return Status.CANCEL_STATUS;\r
+//                     }\r
+                       \r
+                       // Make sure taxon is not being dropped onto itself\r
+//                     if (childTaxonNode.equals(targetTaxonNode)) {\r
+//                             return Status.CANCEL_STATUS;\r
+//                     }\r
+                       \r
+                       \r
+\r
                }       \r
                \r
                IUndoContext workspaceUndoContext = NavigationUtil.getWorkbenchUndoContext();\r
@@ -125,19 +154,12 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
                        logger.error("Workspace undo context is null. DND operation cancelled");\r
                        return Status.CANCEL_STATUS;\r
                }\r
-               \r
-\r
 \r
                IUndoableOperation operation = new MoveTaxonOperation\r
-                               ("Move Taxon", workspaceUndoContext, childTaxonNode, targetTreeNode, this, taxonNavigator);\r
+                               ("Move Taxon", workspaceUndoContext, taxonNodes, targetITreeNode, this, taxonNavigator);\r
                NavigationUtil.executeOperation(operation);     \r
-\r
-               \r
-               \r
-               logger.info("Moved taxon " + childTaxonNode + " to new parent " + targetTreeNode);\r
-               \r
-               NavigationUtil.selectInNavigator(childTaxonNode, targetTreeNode);\r
                \r
+               logger.info("Moved taxa to new parent " + targetITreeNode);\r
                return Status.OK_STATUS;\r
        }\r
 \r
@@ -145,7 +167,6 @@ public class TaxonDropAdapterAssistant extends CommonDropAdapterAssistant implem
         * @see eu.etaxonomy.taxeditor.operations.IPostOperationEnabled#postOperation(eu.etaxonomy.cdm.model.common.CdmBase)\r
         */\r
        public boolean postOperation(CdmBase objectAffectedByOperation) {\r
-               NavigationUtil.selectInNavigator(objectAffectedByOperation, target);\r
                return true;\r
        }\r
 }\r
index 5c7c99c3528f8e44d617cb4feda8724d80830f81..500f16b500cdffb3354dc66f30f3d0e5b3058db0 100644 (file)
@@ -9,7 +9,9 @@
 \r
 package eu.etaxonomy.taxeditor.operations;\r
 \r
-import java.util.UUID;\r
+import java.util.HashMap;\r
+import java.util.Map;\r
+import java.util.Set;\r
 \r
 import org.apache.log4j.Logger;\r
 import org.eclipse.core.commands.ExecutionException;\r
@@ -19,12 +21,10 @@ import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;\r
 import org.eclipse.core.runtime.Status;\r
 \r
-import eu.etaxonomy.cdm.api.conversation.ConversationHolder;\r
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;\r
 import eu.etaxonomy.cdm.model.taxon.ITreeNode;\r
 import eu.etaxonomy.cdm.model.taxon.IllegalAncestryException;\r
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;\r
-import eu.etaxonomy.taxeditor.store.CdmStore;\r
 import eu.etaxonomy.taxeditor.store.StoreUtil;\r
 \r
 /**\r
@@ -43,18 +43,25 @@ public class MoveTaxonOperation extends AbstractPersistentPostOperation {
         */\r
        private ITreeNode newParentTreeNode;\r
        /**\r
-        * A reference to the former taxonomical parent\r
+        * A reference to the former taxonomical parents\r
         */\r
-       private ITreeNode oldParentTreeNode;\r
+       private Map<TaxonNode, ITreeNode> oldParentTreeNodes;\r
+       \r
+       private Set<TaxonNode> taxonNodes;\r
 \r
        public MoveTaxonOperation(String label, IUndoContext undoContext,\r
-                       TaxonNode taxonNode, ITreeNode newParentTreeNode, IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled) {\r
-               super(label, undoContext, taxonNode, postOperationEnabled, conversationEnabled);\r
+                       Set<TaxonNode> taxonNodes, ITreeNode newParentTreeNode, IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled) {\r
+               super(label, undoContext, postOperationEnabled, conversationEnabled);\r
 \r
+               this.taxonNodes = taxonNodes;\r
+               \r
                this.newParentTreeNode = newParentTreeNode;\r
                \r
-               // Save old parent ITreeNode for undo\r
-               this.oldParentTreeNode = taxonNode.getParent(); \r
+               // Save old parent ITreeNodes for undo\r
+               oldParentTreeNodes = new HashMap<TaxonNode, ITreeNode>();\r
+               for(TaxonNode taxonNode : taxonNodes){\r
+                       this.oldParentTreeNodes.put(taxonNode, taxonNode.getParent());\r
+               }\r
        }\r
        \r
        /* (non-Javadoc)\r
@@ -67,16 +74,19 @@ public class MoveTaxonOperation extends AbstractPersistentPostOperation {
                monitor.worked(20);\r
                \r
                try {\r
-                       TaxonNode newTaxonNode = newParentTreeNode.addChildNode(taxonNode, \r
+                       for (TaxonNode taxonNode : taxonNodes){\r
+                               TaxonNode newTaxonNode = newParentTreeNode.addChildNode(taxonNode, \r
                                                newParentTreeNode.getReference(), newParentTreeNode.getMicroReference(), \r
                                                taxonNode.getSynonymToBeUsed());\r
-                               return postExecute(newTaxonNode);\r
+                               taxonNodes.add(newTaxonNode);\r
+                               monitor.worked(2);\r
+                       }\r
                } catch(IllegalAncestryException e) {\r
                        StoreUtil.warningDialog("Illegal ancestry", e.getMessage());\r
                }\r
                monitor.worked(40);\r
                \r
-               return null;\r
+               return postExecute(null);\r
        }\r
 \r
        /* (non-Javadoc)\r
@@ -94,42 +104,10 @@ public class MoveTaxonOperation extends AbstractPersistentPostOperation {
        @Override\r
        public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
                        throws ExecutionException {\r
-               bind();\r
-               moveTaxonBaseIsolated(taxonNode.getUuid(), oldParentTreeNode.getUuid());\r
+               logger.warn("Not implemented yet.");\r
                \r
-               return Status.OK_STATUS;\r
-       }\r
-       \r
-       /**\r
-        * \r
-        * @param taxonNodeUuid\r
-        * @param newParentTaxonNodeUuid\r
-        * @return\r
-        */\r
-       private TaxonNode moveTaxonBaseIsolated(UUID taxonNodeUuid, UUID newParentTreeNodeUuid){\r
+               // iterate over oldParentTreeNodes, delete each TaxonNode from its actual parent and add to its former parent           \r
                \r
-               // get a new conversation\r
-               ConversationHolder conversation = CdmStore.NewTransactionalConversation();\r
-               try{\r
-                       // find the node\r
-                       TaxonNode taxonNode = CdmStore.getTaxonTreeService().getTaxonNodeByUuid(taxonNodeUuid);\r
-                       \r
-                       // find the new parent node\r
-                       ITreeNode newParentTreeNode = CdmStore.getTaxonTreeService().getTreeNodeByUuid(newParentTreeNodeUuid);\r
-                       // add node to new parent\r
-                       try{\r
-                               TaxonNode newChild = newParentTreeNode.addChildNode(taxonNode, newParentTreeNode.getReference(), newParentTreeNode.getMicroReference(), taxonNode.getSynonymToBeUsed());\r
-                               // commit the conversation\r
-                               conversation.commit(true);              \r
-                               return newChild;\r
-                       }catch(IllegalAncestryException e){\r
-                               StoreUtil.warningDialog("Illegal ancestry", e.getMessage());\r
-                       }\r
-                       return null;\r
-               }finally{\r
-                       // FIXME closing this conversation also closes the conversation of the \r
-                       // taxonomic tree. Removing the close call for sage of a smooth presentation\r
-//                     conversation.close();\r
-               }\r
+               return Status.OK_STATUS;\r
        }\r
 }\r