public override void BuildEdge(Point[] path, IEdge originalEdge, DotEdge <int> edge) { #if SILVERLIGHT var data = new StringToPathGeometryConverter().Convert(TransformCoordinates(path, this.canvas)); #else var data = Geometry.Parse(TransformCoordinates(path, this.canvas)); #endif var edgeElement = this.elementsFactory.CreateEdge(new EdgeViewModel(data, originalEdge)); if (edge.Label != "blind") { this.canvas.Children.Add(edgeElement); } if (edge.DestinationArrowEnd.HasValue) { CreateArrow( TransformCoordinates(edge.DestinationArrowEnd.Value, canvas), TransformCoordinates(path.Last(), canvas), edge.Destination, this.elementsFactory.CreateEdgeArrow(new EdgeArrowViewModel(originalEdge, originalEdge.DestinationArrow)), this.canvas); } if (edge.SourceArrowEnd.HasValue) { CreateArrow( TransformCoordinates(edge.SourceArrowEnd.Value, canvas), TransformCoordinates(path.First(), canvas), edge.Source, this.elementsFactory.CreateEdgeArrow(new EdgeArrowViewModel(originalEdge, originalEdge.SourceArrow)), this.canvas); } if (edge.LabelPos.HasValue && edge.Label != "blind") { var labelElement = this.elementsFactory.CreateEdgeLabel(new EdgeLabelViewModel(edge.Label, edge.labelToolTip, originalEdge)); this.CreateLabel(edge.LabelPos.Value, labelElement); } if (edge.SourceArrowLabelPosition.HasValue) { var viewModel = new EdgeArrowLabelViewModel(edge.SourceArrowLabel, originalEdge, edge.SourceArrow); var labelElement = this.elementsFactory.CreateEdgeArrowLabel(viewModel); this.CreateLabel(edge.SourceArrowLabelPosition.Value, labelElement); } if (edge.DestinationArrowLabelPosition.HasValue) { var viewModel = new EdgeArrowLabelViewModel(edge.DestinationArrowLabel, originalEdge, originalEdge.DestinationArrow); var labelElement = this.elementsFactory.CreateEdgeArrowLabel(viewModel); this.CreateLabel(edge.DestinationArrowLabelPosition.Value, labelElement); } }
public override void BuildEdge(Primitives.Point[] path, IEdge originalEdge, DotEdge <int> edge) { var data = Geometry.Parse(TransformCoordinates(path, this.canvas)); var edgeElement = this.elementsFactory.CreateEdge(new EdgeViewModel(data, originalEdge)); this.canvas.Children.Add(edgeElement); if (edge.DestinationArrowEnd.HasValue) { CreateArrow( TransformCoordinates(edge.DestinationArrowEnd.Value, canvas), TransformCoordinates(path.Last(), canvas), edge.Destination, this.elementsFactory.CreateEdgeArrow(new EdgeArrowViewModel(originalEdge, originalEdge.DestinationArrow)), this.canvas); } if (edge.SourceArrowEnd.HasValue) { CreateArrow( TransformCoordinates(edge.SourceArrowEnd.Value, canvas), TransformCoordinates(path.First(), canvas), edge.Source, this.elementsFactory.CreateEdgeArrow(new EdgeArrowViewModel(originalEdge, originalEdge.SourceArrow)), this.canvas); } if (edge.LabelPos.HasValue) { var labelElement = this.elementsFactory.CreateEdgeLabel(new EdgeLabelViewModel(edge.Label, originalEdge)); this.CreateLabel(edge.LabelPos.Value, labelElement); } if (edge.SourceArrowLabelPosition.HasValue) { var viewModel = new EdgeArrowLabelViewModel(edge.SourceArrowLabel, originalEdge, edge.SourceArrow); var labelElement = this.elementsFactory.CreateEdgeArrowLabel(viewModel); this.CreateLabel(edge.SourceArrowLabelPosition.Value, labelElement); } if (edge.DestinationArrowLabelPosition.HasValue) { var viewModel = new EdgeArrowLabelViewModel(edge.DestinationArrowLabel, originalEdge, originalEdge.DestinationArrow); var labelElement = this.elementsFactory.CreateEdgeArrowLabel(viewModel); this.CreateLabel(edge.DestinationArrowLabelPosition.Value, labelElement); } }
public FrameworkElement CreateEdgeArrowLabel(EdgeArrowLabelViewModel labelViewModel) { return new ContentPresenter { Content = labelViewModel }; }
public FrameworkElement CreateEdgeArrowLabel(EdgeArrowLabelViewModel labelViewModel) { return(new TextBlock { Text = labelViewModel.Label }); }
public FrameworkElement CreateEdgeArrowLabel(EdgeArrowLabelViewModel labelViewModel) { return new TextBlock { Text = labelViewModel.Label }; }
public FrameworkElement CreateEdgeArrowLabel(EdgeArrowLabelViewModel labelViewModel) { return(new ContentPresenter { Content = labelViewModel }); }