From b9751a5fd0d45dddda9342c964d3b60601a7551d Mon Sep 17 00:00:00 2001 From: Artyom_Yashin Date: Wed, 8 Nov 2023 23:13:27 +0400 Subject: [PATCH] Lab5 Done+ --- AirBomber/AirBomber/FormPlaneConfig.cs | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/AirBomber/AirBomber/FormPlaneConfig.cs b/AirBomber/AirBomber/FormPlaneConfig.cs index 5ea7c52..3f24ecf 100644 --- a/AirBomber/AirBomber/FormPlaneConfig.cs +++ b/AirBomber/AirBomber/FormPlaneConfig.cs @@ -121,7 +121,7 @@ namespace ProjectAirBomber DrawPlane(); } - private void PanelColor_MouseDown(object sender, MouseEventArgs e) + private void PanelColor_MouseDown(object? sender, MouseEventArgs e) { (sender as Panel)?.DoDragDrop((sender as Panel)?.BackColor, DragDropEffects.Move | DragDropEffects.Copy); @@ -142,17 +142,18 @@ namespace ProjectAirBomber private void labelColor_DragDrop(object sender, DragEventArgs e) { - if (_plane == null) + if (_plane?.EntityPlane == null) return; + Color bodyColor = (Color)e.Data.GetData(typeof(Color)); if (_plane is DrawingAirBomber) { _plane = new DrawingAirBomber((int)numericUpDownSpeed.Value, - (int)numericUpDownWeight.Value, (Color)e.Data.GetData(typeof(Color)), ((EntityAirBomber)_plane.EntityPlane).AdditionalColor, checkBoxBombs.Checked, + (int)numericUpDownWeight.Value, bodyColor, ((EntityAirBomber)_plane.EntityPlane).AdditionalColor, checkBoxBombs.Checked, checkBoxFuel.Checked, _pictureWidth, _pictureHeight); } else { _plane = new DrawingPlane((int)numericUpDownSpeed.Value, - (int)numericUpDownWeight.Value, (Color)e.Data.GetData(typeof(Color)), _pictureWidth, _pictureHeight); + (int)numericUpDownWeight.Value, bodyColor, _pictureWidth, _pictureHeight); } DrawPlane(); } @@ -171,10 +172,11 @@ namespace ProjectAirBomber private void labelAddColor_DragDrop(object sender, DragEventArgs e) { - if ((_plane == null) || (_plane is DrawingAirBomber == false)) + if ((_plane?.EntityPlane == null) || (_plane is DrawingAirBomber == false)) return; + Color additionalColor = (Color)e.Data.GetData(typeof(Color)); _plane = new DrawingAirBomber((int)numericUpDownSpeed.Value, - (int)numericUpDownWeight.Value, _plane.EntityPlane.BodyColor, (Color)e.Data.GetData(typeof(Color)), checkBoxBombs.Checked, + (int)numericUpDownWeight.Value, _plane.EntityPlane.BodyColor, additionalColor, checkBoxBombs.Checked, checkBoxFuel.Checked, _pictureWidth, _pictureHeight); DrawPlane(); }