Example #1
0
        private void UseSignalButtonClick(object sender, EventArgs e)
        {
            OutputConnectionsChanged = Block.OutputNodes.Count != TempBlock.OutputNodes.Count;
            InputConnectionsChanged  = Block.InputNodes.Count != TempBlock.InputNodes.Count;
            var outputNodes = OutputConnectionsChanged ? TempBlock.OutputNodes : Block.OutputNodes;
            var inputNodes  = InputConnectionsChanged ? TempBlock.InputNodes : Block.InputNodes;

            Block             = TempBlock.Clone();
            Block.OutputNodes = outputNodes;
            Block.InputNodes  = inputNodes;
            foreach (var node in inputNodes)
            {
                node.Root = Block;
            }
            foreach (var node in outputNodes)
            {
                node.Root = Block;
            }
            Block.Cascade = true;
            Block.Execute();
        }