Exemple #1
0
        public override List <Port> GetCompatiblePorts(Port startPort, NodeAdapter nodeAdapter)
        {
            var ret = new List <Port>();

            var baseStartPort = (startPort as BasePortView).Port;

            ports.ForEach(portView =>
            {
                var baseEndPort = (portView as BasePortView).Port;

                var fromPort = baseStartPort.Direction == PortDirection.Input ? baseEndPort : baseStartPort;
                var toPort   = baseStartPort.Direction == PortDirection.Input ? baseStartPort : baseEndPort;

                if (_graph.CanConnect(fromPort, toPort))
                {
                    ret.Add(portView);
                }
            });

            return(ret);
        }