private static void DeleteNodes(Diagram diagram, IEnumerable <Node> nodesToMove)
        {
            var unWireAndDeleteCommand = new UnwireAndDeleteNodeCommand(diagram);

            foreach (var node in nodesToMove)
            {
                unWireAndDeleteCommand.Execute(node);
            }
        }
예제 #2
0
        /// <inheritdoc/>
        public override void StopInteraction(DiagramInteractionEventArguments interaction)
        {
            if (interaction.Type == InteractionType.RightMouseDown)
            {
                var removeNodeCommand = new UnwireAndDeleteNodeCommand(interaction.Diagram);
                removeNodeCommand.Execute(InsertingNodeViewModel);
            }
            else
            {
                InsertingNodeViewModel.X = interaction.Diagram.SnapToGrid(InsertingNodeViewModel.X);
                InsertingNodeViewModel.Y = interaction.Diagram.SnapToGrid(InsertingNodeViewModel.Y);
            }

            _transactor.Transact(new UndoCommand(new UnwireAndDeleteNodeCommand(interaction.Diagram)), InsertingNodeViewModel);
            InsertingNodeViewModel           = null;
            interaction.Diagram.ShowSnapGrid = false;
        }