コード例 #1
0
        protected override void RemoveFrom(IReactionBuilder reactionBuilderToRemove, IMoBiReactionBuildingBlock reactionBuildingBlock, IMoBiContext context)
        {
            reactionBuildingBlock.Remove(reactionBuilderToRemove);
            if (reactionBuildingBlock.DiagramModel == null)
            {
                return;
            }

            _originalNode = reactionBuildingBlock.DiagramModel.FindByName(reactionBuilderToRemove.Name);
            if (_originalNode != null)
            {
                _originalParentLocation = new PointF(_originalNode.GetParent().Location.X, _originalNode.GetParent().Location.Y);
                // take a clone because we want to be able to put the node back to it's original place if this action is reverted
                _originalNode = _originalNode.Copy();
            }
            reactionBuildingBlock.DiagramManager.RemoveObjectBase(reactionBuilderToRemove);
        }