public EdgeControl GetEdgeControl(TEdge edge) { EdgeControl ec = null; _edgeControls.TryGetValue(edge, out ec); return(ec); }
protected virtual void CreateEdgeControl(TEdge edge) { var edgeControl = new EdgeControl { Edge = edge, DataContext = edge }; //var edgeControl = _edgePool.GetObject(); //edgeControl.Edge = edge; _edgeControls[edge] = edgeControl; //set the Source and the Target edgeControl.Source = _vertexControls[edge.Source]; edgeControl.Target = _vertexControls[edge.Target]; edgeControl.IsTwoWay = edge.IsTwoWay; if (ActualLayoutMode == LayoutMode.Simple) { Children.Insert(0, edgeControl); } else { Children.Add(edgeControl); } SetHighlightProperties(edge, edgeControl); RunCreationTransition(edgeControl); }
private void SetHighlightProperties(TEdge edge, EdgeControl edgeControl) { object highlightInfo; if (IsHighlightedEdge(edge, out highlightInfo)) { GraphElementBehaviour.SetIsHighlighted(edgeControl, true); GraphElementBehaviour.SetHighlightInfo(edgeControl, highlightInfo); } object semiHighlightInfo; if (IsSemiHighlightedEdge(edge, out semiHighlightInfo)) { GraphElementBehaviour.SetIsSemiHighlighted(edgeControl, true); GraphElementBehaviour.SetSemiHighlightInfo(edgeControl, semiHighlightInfo); } }