/// <summary> /// Event handler called when a wire dragging is finished /// </summary> private void Wire_EndDrag() { foreach (WireDragger wireDragger in CurrentWireDraggers) { wireDragger.EndDrag(); } CurrentWireDraggers.Clear(); DraggingWire = false; }
/// <summary> /// Event handler called when the mouse left button is pressed /// </summary> private void BoardGrid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { if (AddingWire) { Wire wire = new Wire(this, Magnetize(e.GetPosition(this))); WiresOnBoard.Add(wire); DraggingWire = true; if (!AddingMultipleWires) { AddingWire = false; ((MainWindow)Application.Current.MainWindow).WireModeButton.IsChecked = false; ((MainWindow)Application.Current.MainWindow).MultipleWiresModeCheckBox.IsEnabled = false; } CurrentWireDraggers.Add(new WireDragger(this, wire, Magnetize(e.GetPosition(this)), new Vector(0, 0))); // New WireDragger centered on the mouse } }