private void LineToConnection(MouseEventArgs e) { FrameworkElement source = e.Source as FrameworkElement; ConnectionPointViewModel point = source.DataContext as ConnectionPointViewModel; if (_connectionFrom == null) { _connectionFrom = point; _connectionFrom.ShapeColor = new SolidColorBrush(Color.FromRgb(51, 255, 51)); _isOneConnectedPoint = true; ConnectionX1 = _connectionFrom.CenterX; ConnectionY1 = _connectionFrom.CenterY; } else if (_connectionTo == null) { _connectionTo = point; } if (_connectionFrom != null && _connectionTo != null) { if (_connectionFrom != _connectionTo) { new LineAddCommand(Lines, new LineViewModel(new Line((ELine)SelectedConnector, _connectionFrom, _connectionTo))).Execute(); } EndLineConnection(); } }
private void EndLineConnection() { if (_connectionFrom != null) { _connectionFrom.ShapeColor = new SolidColorBrush(Color.FromRgb(128, 128, 128)); } if (_connectionTo != null) { _connectionTo.ShapeColor = new SolidColorBrush(Color.FromRgb(128, 128, 128)); } _connectionFrom = null; _connectionTo = null; _isOneConnectedPoint = false; ConnectionX1 = 0; ConnectionX2 = 0; ConnectionY1 = 0; ConnectionY2 = 0; Tool = ETool.Default; }