Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs =================================================================== diff -u -rb3db013105d10992eeefea39f5ecbdacdd57b4d4 -r1a390cf262c06e082830182276b6cb5da0aaef80 --- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision b3db013105d10992eeefea39f5ecbdacdd57b4d4) +++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision 1a390cf262c06e082830182276b6cb5da0aaef80) @@ -41,7 +41,6 @@ using RingtoetsFormsResources = Ringtoets.Common.Forms.Properties.Resources; using PipingFormsResources = Ringtoets.Piping.Forms.Properties.Resources; using BaseResources = Core.Common.Base.Properties.Resources; -using TreeView = Core.Common.Controls.TreeView.TreeView; namespace Ringtoets.Piping.Plugin { @@ -793,18 +792,18 @@ { var isMoveWithinSameContainer = ReferenceEquals(originalOwnerContext, target); - DroppingPipingCalculationInContainerStrategy dropHandler = GetDragDropStrategy(isMoveWithinSameContainer, originalOwnerContext, target, (TreeView) previousParentNode.TreeView); - dropHandler.Execute(sourceNode.Tag, pipingCalculationItem, position); + DroppingPipingCalculationInContainerStrategy dropHandler = GetDragDropStrategy(isMoveWithinSameContainer, originalOwnerContext, target); + dropHandler.Execute(sourceNode, pipingCalculationItem, position); } } - private DroppingPipingCalculationInContainerStrategy GetDragDropStrategy(bool isMoveWithinSameContainer, PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target, TreeView treeView) + private DroppingPipingCalculationInContainerStrategy GetDragDropStrategy(bool isMoveWithinSameContainer, PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) { if (isMoveWithinSameContainer) { - return new DroppingPipingCalculationWithinSameContainer(treeView, originalOwnerContext, target); + return new DroppingPipingCalculationWithinSameContainer(originalOwnerContext, target); } - return new DroppingPipingCalculationToNewContainer(treeView, originalOwnerContext, target); + return new DroppingPipingCalculationToNewContainer(originalOwnerContext, target); } private void SelectNewlyAddedPipingCalculationGroupContextItemInTreeView(TreeNode node) @@ -826,24 +825,22 @@ /// private abstract class DroppingPipingCalculationInContainerStrategy { - protected readonly TreeView treeView; protected readonly PipingCalculationGroupContext target; private readonly PipingCalculationGroupContext originalOwnerContext; - protected DroppingPipingCalculationInContainerStrategy(TreeView treeView, PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) + protected DroppingPipingCalculationInContainerStrategy(PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) { - this.treeView = treeView; this.originalOwnerContext = originalOwnerContext; this.target = target; } /// /// Perform the drag & drop operation. /// - /// The actual dragged data object. - /// The piping calculation item corresponding with . + /// The dragged node. + /// The piping calculation item corresponding with the tag of . /// The index of the new position within the new owner's collection. - public virtual void Execute(object draggedDataObject, IPipingCalculationItem pipingCalculationItem, int newPosition) + public virtual void Execute(TreeNode draggedNode, IPipingCalculationItem pipingCalculationItem, int newPosition) { MoveCalculationItemToNewOwner(pipingCalculationItem, newPosition); @@ -880,13 +877,12 @@ /// /// Initializes a new instance of the class. /// - /// The tree view where the drag & drop operation occurs. /// The calculation group context that is /// the original owner of the dragged item. /// The calculation group context that is the target /// of the drag & drop operation. - public DroppingPipingCalculationWithinSameContainer(TreeView treeView, PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) : - base(treeView, originalOwnerContext, target) { } + public DroppingPipingCalculationWithinSameContainer(PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) : + base(originalOwnerContext, target) { } } /// @@ -900,24 +896,21 @@ /// /// Initializes a new instance of the class. /// - /// The tree view where the drag & drop operation occurs. /// The calculation group context that is /// the original owner of the dragged item. /// The calculation group context that is the target /// of the drag & drop operation. - public DroppingPipingCalculationToNewContainer(TreeView treeView, PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) : - base(treeView, originalOwnerContext, target) { } + public DroppingPipingCalculationToNewContainer(PipingCalculationGroupContext originalOwnerContext, PipingCalculationGroupContext target) : + base(originalOwnerContext, target) { } - public override void Execute(object draggedDataObject, IPipingCalculationItem pipingCalculationItem, int newPosition) + public override void Execute(TreeNode draggedNode, IPipingCalculationItem pipingCalculationItem, int newPosition) { EnsureDraggedNodeHasUniqueNameInNewOwner(pipingCalculationItem, target); MoveCalculationItemToNewOwner(pipingCalculationItem, newPosition); NotifyObservers(); - TreeNode draggedNode = treeView.TreeViewController.GetNodeByTag(draggedDataObject); - if (renamed) { draggedNode.BeginEdit();