ISEbd-22. Baygulov A.A. Lab work 05 #6
@ -31,22 +31,22 @@ namespace ProjectElectricLocomotive.DrawingObjects
|
||||
Brush bodyColor = new SolidBrush(electricLocomotive.BodyColor);
|
||||
g.DrawRectangle(pen, _startPosX + 40, _startPosY + 24, 25, 11);
|
||||
if (electricLocomotive.Compartment)
|
||||
g.FillPolygon(additionalBrush, new Point[]
|
||||
{
|
||||
g.FillPolygon(additionalBrush, new Point[]
|
||||
{
|
||||
new Point(_startPosX + 61, _startPosY + 25),
|
||||
new Point(_startPosX + 85, _startPosY + 25),
|
||||
new Point(_startPosX + 85, _startPosY + 35),
|
||||
new Point(_startPosX + 61, _startPosY + 35),
|
||||
new Point(_startPosX + 61, _startPosY + 25),
|
||||
}
|
||||
);
|
||||
}
|
||||
);
|
||||
if (electricLocomotive.Pantograph)
|
||||
{
|
||||
g.FillRectangle(blackBrush, _startPosX + 30, _startPosY + 15, 20, 5);
|
||||
g.DrawLine(pen, _startPosX + 30, _startPosY + 15, _startPosX + 50, _startPosY + 2);
|
||||
g.DrawLine(pen, _startPosX + 40, _startPosY + 15, _startPosX + 60, _startPosY + 2);
|
||||
}
|
||||
base.DrawTransport(g);
|
||||
base.DrawTransport(g);
|
||||
}
|
||||
public void SetAdditionalColor(Color color)
|
||||
{
|
||||
@ -54,3 +54,4 @@ namespace ProjectElectricLocomotive.DrawingObjects
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -13,7 +13,7 @@ namespace ProjectElectricLocomotive.DrawingObjects
|
||||
{
|
||||
public class DrawingLocomotive
|
||||
{
|
||||
public EntityLocomotive? EntityLocomotive { get; protected set;}
|
||||
public EntityLocomotive? EntityLocomotive { get; protected set; }
|
||||
|
||||
public int _pictureWidth;
|
||||
public int _pictureHeight;
|
||||
@ -172,3 +172,4 @@ namespace ProjectElectricLocomotive.DrawingObjects
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -10,7 +10,7 @@ namespace ProjectElectricLocomotive.Entities
|
||||
public class EntityElectricLocomotive : EntityLocomotive
|
||||
{
|
||||
public Color AdditionalColor { get; private set; }
|
||||
public bool Pantograph { get; set; }
|
||||
public bool Pantograph { get; set; }
|
||||
public bool Compartment { get; set; }
|
||||
|
||||
/// <param name="additionalColor">Дополнительный цвет</param>
|
||||
|
@ -16,7 +16,7 @@ namespace ProjectElectricLocomotive.Entities
|
||||
/// <param name="speed">Скорость</param>
|
||||
/// <param name="weight">Вес локомотива</param>
|
||||
/// <param name="bodyColor">Основной цвет</param>
|
||||
public EntityLocomotive (int speed, double weight, Color bodyColor)
|
||||
public EntityLocomotive(int speed, double weight, Color bodyColor)
|
||||
{
|
||||
Speed = speed;
|
||||
Weight = weight;
|
||||
@ -27,4 +27,4 @@ namespace ProjectElectricLocomotive.Entities
|
||||
BodyColor = color;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -16,7 +16,7 @@ namespace ProjectElectricLocomotive
|
||||
public partial class FormLocomotiveConfig : Form
|
||||
{
|
||||
DrawingLocomotive? _locomotive = null;
|
||||
private event LocomotiveDelegate? EventAddLocomotive;
|
||||
private event Action<DrawingLocomotive>? EventAddLocomotive;
|
||||
|
||||
public FormLocomotiveConfig()
|
||||
{
|
||||
@ -33,7 +33,7 @@ namespace ProjectElectricLocomotive
|
||||
buttonCancelObject.Click += (s, e) => Close();
|
||||
|
||||
}
|
||||
public void AddEvent(LocomotiveDelegate ev)
|
||||
public void AddEvent(Action<DrawingLocomotive> ev)
|
||||
{
|
||||
if (EventAddLocomotive == null)
|
||||
{
|
||||
@ -101,7 +101,6 @@ namespace ProjectElectricLocomotive
|
||||
{
|
||||
if (_locomotive == null)
|
||||
return;
|
||||
((Label)sender).BackColor = (Color)e.Data.GetData(typeof(Color));
|
||||
switch (((Label)sender).Name)
|
||||
{
|
||||
case "labelSimpleColor":
|
||||
@ -119,7 +118,7 @@ namespace ProjectElectricLocomotive
|
||||
}
|
||||
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;
|
||||
}
|
||||
|
@ -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);
|
||||
}
|
Loading…
Reference in New Issue
Block a user