5 лаба (окончательные правки)

This commit is contained in:
Андрей Байгулов 2023-11-17 21:42:11 +04:00
parent a258fe0f84
commit c918183e43
6 changed files with 14 additions and 24 deletions

View File

@ -31,22 +31,22 @@ namespace ProjectElectricLocomotive.DrawingObjects
Brush bodyColor = new SolidBrush(electricLocomotive.BodyColor); Brush bodyColor = new SolidBrush(electricLocomotive.BodyColor);
g.DrawRectangle(pen, _startPosX + 40, _startPosY + 24, 25, 11); g.DrawRectangle(pen, _startPosX + 40, _startPosY + 24, 25, 11);
if (electricLocomotive.Compartment) if (electricLocomotive.Compartment)
g.FillPolygon(additionalBrush, new Point[] g.FillPolygon(additionalBrush, new Point[]
{ {
new Point(_startPosX + 61, _startPosY + 25), new Point(_startPosX + 61, _startPosY + 25),
new Point(_startPosX + 85, _startPosY + 25), new Point(_startPosX + 85, _startPosY + 25),
new Point(_startPosX + 85, _startPosY + 35), new Point(_startPosX + 85, _startPosY + 35),
new Point(_startPosX + 61, _startPosY + 35), new Point(_startPosX + 61, _startPosY + 35),
new Point(_startPosX + 61, _startPosY + 25), new Point(_startPosX + 61, _startPosY + 25),
} }
); );
if (electricLocomotive.Pantograph) if (electricLocomotive.Pantograph)
{ {
g.FillRectangle(blackBrush, _startPosX + 30, _startPosY + 15, 20, 5); g.FillRectangle(blackBrush, _startPosX + 30, _startPosY + 15, 20, 5);
g.DrawLine(pen, _startPosX + 30, _startPosY + 15, _startPosX + 50, _startPosY + 2); g.DrawLine(pen, _startPosX + 30, _startPosY + 15, _startPosX + 50, _startPosY + 2);
g.DrawLine(pen, _startPosX + 40, _startPosY + 15, _startPosX + 60, _startPosY + 2); g.DrawLine(pen, _startPosX + 40, _startPosY + 15, _startPosX + 60, _startPosY + 2);
} }
base.DrawTransport(g); base.DrawTransport(g);
} }
public void SetAdditionalColor(Color color) public void SetAdditionalColor(Color color)
{ {
@ -54,3 +54,4 @@ namespace ProjectElectricLocomotive.DrawingObjects
} }
} }
} }

View File

@ -13,7 +13,7 @@ namespace ProjectElectricLocomotive.DrawingObjects
{ {
public class DrawingLocomotive public class DrawingLocomotive
{ {
public EntityLocomotive? EntityLocomotive { get; protected set;} public EntityLocomotive? EntityLocomotive { get; protected set; }
public int _pictureWidth; public int _pictureWidth;
public int _pictureHeight; public int _pictureHeight;
@ -172,3 +172,4 @@ namespace ProjectElectricLocomotive.DrawingObjects
} }
} }
} }

View File

@ -10,7 +10,7 @@ namespace ProjectElectricLocomotive.Entities
public class EntityElectricLocomotive : EntityLocomotive public class EntityElectricLocomotive : EntityLocomotive
{ {
public Color AdditionalColor { get; private set; } public Color AdditionalColor { get; private set; }
public bool Pantograph { get; set; } public bool Pantograph { get; set; }
public bool Compartment { get; set; } public bool Compartment { get; set; }
/// <param name="additionalColor">Дополнительный цвет</param> /// <param name="additionalColor">Дополнительный цвет</param>

View File

@ -16,7 +16,7 @@ namespace ProjectElectricLocomotive.Entities
/// <param name="speed">Скорость</param> /// <param name="speed">Скорость</param>
/// <param name="weight">Вес локомотива</param> /// <param name="weight">Вес локомотива</param>
/// <param name="bodyColor">Основной цвет</param> /// <param name="bodyColor">Основной цвет</param>
public EntityLocomotive (int speed, double weight, Color bodyColor) public EntityLocomotive(int speed, double weight, Color bodyColor)
{ {
Speed = speed; Speed = speed;
Weight = weight; Weight = weight;
@ -27,4 +27,4 @@ namespace ProjectElectricLocomotive.Entities
BodyColor = color; BodyColor = color;
} }
} }
} }

View File

@ -16,7 +16,7 @@ namespace ProjectElectricLocomotive
public partial class FormLocomotiveConfig : Form public partial class FormLocomotiveConfig : Form
{ {
DrawingLocomotive? _locomotive = null; DrawingLocomotive? _locomotive = null;
private event LocomotiveDelegate? EventAddLocomotive; private event Action<DrawingLocomotive>? EventAddLocomotive;
public FormLocomotiveConfig() public FormLocomotiveConfig()
{ {
@ -33,7 +33,7 @@ namespace ProjectElectricLocomotive
buttonCancelObject.Click += (s, e) => Close(); buttonCancelObject.Click += (s, e) => Close();
} }
public void AddEvent(LocomotiveDelegate ev) public void AddEvent(Action<DrawingLocomotive> ev)
{ {
if (EventAddLocomotive == null) if (EventAddLocomotive == null)
{ {
@ -101,7 +101,6 @@ namespace ProjectElectricLocomotive
{ {
if (_locomotive == null) if (_locomotive == null)
return; return;
((Label)sender).BackColor = (Color)e.Data.GetData(typeof(Color));
switch (((Label)sender).Name) switch (((Label)sender).Name)
{ {
case "labelSimpleColor": case "labelSimpleColor":
@ -119,7 +118,7 @@ namespace ProjectElectricLocomotive
} }
private void LabelColor_DragEnter(object sender, DragEventArgs e) private void LabelColor_DragEnter(object sender, DragEventArgs e)
{ {
if (e.Data?.GetDataPresent(typeof(Color)) ?? false) if ((e.Data?.GetDataPresent(typeof(Color)) ?? false))
{ {
e.Effect = DragDropEffects.Copy; e.Effect = DragDropEffects.Copy;
} }

View File

@ -1,11 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ProjectElectricLocomotive.DrawingObjects;
namespace ProjectElectricLocomotive
{
public delegate void LocomotiveDelegate(DrawingLocomotive locomotive);
}