Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs
===================================================================
diff -u -r20f311390d1e8daa85500e8f031d11e9f0f5d9f4 -r3e8e68859b459b44180950af5bf1b62617b5c0f8
--- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision 20f311390d1e8daa85500e8f031d11e9f0f5d9f4)
+++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision 3e8e68859b459b44180950af5bf1b62617b5c0f8)
@@ -758,18 +758,18 @@
return GetAsIPipingCalculationItem(draggedData) != null && NodesHaveSameParentFailureMechanism(draggedData, targetData);
}
- private void PipingCalculationGroupContextOnDrop(TreeNode sourceNode, TreeNode previousParentNode, DragOperations operation, int position)
+ private void PipingCalculationGroupContextOnDrop(object droppedData, object newParentData, object oldParentData, DragOperations operation, int position, TreeViewControl treeViewControl)
{
- IPipingCalculationItem pipingCalculationItem = GetAsIPipingCalculationItem(sourceNode.Tag);
- var originalOwnerContext = previousParentNode.Tag as PipingCalculationGroupContext;
- var target = sourceNode.Parent.Tag as PipingCalculationGroupContext;
+ IPipingCalculationItem pipingCalculationItem = GetAsIPipingCalculationItem(droppedData);
+ var originalOwnerContext = oldParentData as PipingCalculationGroupContext;
+ var target = newParentData as PipingCalculationGroupContext;
if (pipingCalculationItem != null && originalOwnerContext != null && target != null)
{
var isMoveWithinSameContainer = ReferenceEquals(originalOwnerContext, target);
DroppingPipingCalculationInContainerStrategy dropHandler = GetDragDropStrategy(isMoveWithinSameContainer, originalOwnerContext, target);
- dropHandler.Execute(sourceNode, pipingCalculationItem, position);
+ dropHandler.Execute(droppedData, pipingCalculationItem, position, treeViewControl);
}
}
@@ -802,10 +802,11 @@
///
/// Perform the drag & drop operation.
///
- /// The dragged node.
- /// The piping calculation item corresponding with the tag of .
+ /// The dragged data.
+ /// The piping calculation item wrapped by .
/// The index of the new position within the new owner's collection.
- public virtual void Execute(TreeNode draggedNode, IPipingCalculationItem pipingCalculationItem, int newPosition)
+ /// The tree view control which is at stake.
+ public virtual void Execute(object draggedData, IPipingCalculationItem pipingCalculationItem, int newPosition, TreeViewControl treeViewControl)
{
MoveCalculationItemToNewOwner(pipingCalculationItem, newPosition);
@@ -868,7 +869,7 @@
public DroppingPipingCalculationToNewContainer(PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) :
base(originalOwnerContext, target) { }
- public override void Execute(TreeNode draggedNode, IPipingCalculationItem pipingCalculationItem, int newPosition)
+ public override void Execute(object draggedData, IPipingCalculationItem pipingCalculationItem, int newPosition, TreeViewControl treeViewControl)
{
EnsureDraggedNodeHasUniqueNameInNewOwner(pipingCalculationItem, target);
@@ -878,7 +879,7 @@
if (renamed)
{
- draggedNode.BeginEdit();
+ treeViewControl.StartRenameForData(draggedData);
}
}