private ConnectionLine TryPickingConnectionLineForSplitting() { var numConnectedInputs = Inputs.Count(input => input.Connections.Any()); ConnectionLine connectionToHighlight = null; if (numConnectedInputs == 0) { var mousePos = Mouse.GetPosition(CV.XCompositionGraphView.XOperatorCanvas); var hitResults = UIHelper.HitTestFor <Path>(CV.XCompositionGraphView.XOperatorCanvas, mousePos, 3.0); foreach (var r in hitResults) { foreach (UIElement child in CV.XCompositionGraphView.XOperatorCanvas.Children) { var cl = child as ConnectionLine; if (cl != null && cl.ConnectionPath == r.VisualHit as Path) { if (cl.Output.Parent != Operator) { connectionToHighlight = cl; } } } } } return(connectionToHighlight); }