Некоторые изменения
This commit is contained in:
parent
88cbd86feb
commit
27d8385bad
@ -60,7 +60,7 @@ public abstract class AbstractCompany
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static int operator +(AbstractCompany company, DrawningBomber bomber)
|
public static int operator +(AbstractCompany company, DrawningBomber bomber)
|
||||||
{
|
{
|
||||||
return company._collection.Insert(bomber, new DrawningAirCraftEqutables());
|
return company._collection.Insert(bomber, new DrawningBomberEqutables());
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -146,7 +146,8 @@ public class MassiveGenericObjects<T> : ICollectionGenericObjects<T>
|
|||||||
}
|
}
|
||||||
public void CollectionSort(IComparer<T?> comparer)
|
public void CollectionSort(IComparer<T?> comparer)
|
||||||
{
|
{
|
||||||
List<T?> lst = [.. _collection];
|
List<T?> value = [.. _collection];
|
||||||
|
List<T?> lst = value;
|
||||||
lst.Sort(comparer.Compare);
|
lst.Sort(comparer.Compare);
|
||||||
for (int i = 0; i < _collection.Length; ++i)
|
for (int i = 0; i < _collection.Length; ++i)
|
||||||
{
|
{
|
||||||
|
@ -6,7 +6,7 @@ namespace ProjectAirBomber.Drawnings;
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Реализация сравнения двух объектов класса-прорисовки
|
/// Реализация сравнения двух объектов класса-прорисовки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class DrawningAirCraftEqutables : IEqualityComparer<DrawningBomber?>
|
public class DrawningBomberEqutables : IEqualityComparer<DrawningBomber?>
|
||||||
{
|
{
|
||||||
public bool Equals(DrawningBomber? x, DrawningBomber? y)
|
public bool Equals(DrawningBomber? x, DrawningBomber? y)
|
||||||
{
|
{
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
using ProjectAirBomber.CollectionGenericObjects;
|
using ProjectAirBomber.CollectionGenericObjects;
|
||||||
using ProjectAirBomber.Drawnings;
|
using ProjectAirBomber.Drawnings;
|
||||||
using ProjectAirBomber.Exceptions;
|
using ProjectAirBomber.Exceptions;
|
||||||
|
using System.Xml.Linq;
|
||||||
|
|
||||||
namespace ProjectAirBomber;
|
namespace ProjectAirBomber;
|
||||||
|
|
||||||
@ -81,7 +82,12 @@ public partial class FormBomberCollection : Form
|
|||||||
catch (CollectionOverflowException ex)
|
catch (CollectionOverflowException ex)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Не удалось добавить объект");
|
MessageBox.Show("Не удалось добавить объект");
|
||||||
_logger.LogError($"Не удалось добавить объект: {ex.Message}");
|
_logger.LogWarning($"Не удалось добавить объект: {ex.Message}");
|
||||||
|
}
|
||||||
|
catch (ObjectAlreadyExistsException)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Такой объект уже существует");
|
||||||
|
_logger.LogError("Ошибка: такой объект уже существует {0}", bomber);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -109,18 +115,18 @@ public partial class FormBomberCollection : Form
|
|||||||
{
|
{
|
||||||
object decrementObject = _company - pos;
|
object decrementObject = _company - pos;
|
||||||
MessageBox.Show("Объект удален");
|
MessageBox.Show("Объект удален");
|
||||||
_logger.LogInformation($"Удален объект по позиции {pos}");
|
_logger.LogInformation($"Удален по позиции {pos}");
|
||||||
pictureBox.Image = _company.Show();
|
pictureBox.Image = _company.Show();
|
||||||
}
|
}
|
||||||
catch (ObjectNotFoundException)
|
catch (ObjectNotFoundException ex)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Объект не найден");
|
MessageBox.Show("Объект не найден");
|
||||||
_logger.LogError($"Удаление не найденного объекта в позиции {pos} ");
|
_logger.LogWarning($"Удаление не найденного объекта в позиции {pos} ");
|
||||||
}
|
}
|
||||||
catch (PositionOutOfCollectionException)
|
catch (PositionOutOfCollectionException)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Удаление вне рамках коллекции");
|
MessageBox.Show("Удаление вне рамках коллекции");
|
||||||
_logger.LogError($"Удаление объекта за пределами коллекции {pos} ");
|
_logger.LogWarning($"Удаление объекта за пределами коллекции {pos} ");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -135,7 +141,6 @@ public partial class FormBomberCollection : Form
|
|||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
DrawningBomber? bomber = null;
|
DrawningBomber? bomber = null;
|
||||||
@ -190,8 +195,8 @@ public partial class FormBomberCollection : Form
|
|||||||
if (string.IsNullOrEmpty(textBoxCollectionName.Text) ||
|
if (string.IsNullOrEmpty(textBoxCollectionName.Text) ||
|
||||||
(!radioButtonList.Checked && !radioButtonMassive.Checked))
|
(!radioButtonList.Checked && !radioButtonMassive.Checked))
|
||||||
{
|
{
|
||||||
MessageBox.Show("Не все данные заполнены", "Ошибка",
|
MessageBox.Show("Не все данные заполнены", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
_logger.LogError("Не заполненная коллекция");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
CollectionType collectionType = CollectionType.None;
|
CollectionType collectionType = CollectionType.None;
|
||||||
@ -203,8 +208,8 @@ public partial class FormBomberCollection : Form
|
|||||||
{
|
{
|
||||||
collectionType = CollectionType.List;
|
collectionType = CollectionType.List;
|
||||||
}
|
}
|
||||||
_storageCollection.AddCollection(textBoxCollectionName.Text,
|
_storageCollection.AddCollection(textBoxCollectionName.Text, collectionType);
|
||||||
collectionType);
|
_logger.LogInformation($"Добавлена коллекция: {textBoxCollectionName.Text}");
|
||||||
RerfreshListBoxItems();
|
RerfreshListBoxItems();
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -217,14 +222,17 @@ public partial class FormBomberCollection : Form
|
|||||||
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
|
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Коллекция не выбрана");
|
MessageBox.Show("Коллекция не выбрана");
|
||||||
|
_logger.LogError("Удаление невыбранной коллекции");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
string name = listBoxCollection.SelectedItem.ToString() ?? string.Empty;
|
||||||
if (MessageBox.Show("Удалить коллекцию?", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
|
if (MessageBox.Show("Удалить коллекцию?", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_storageCollection.DelCollection(listBoxCollection.SelectedItem.ToString());
|
_storageCollection.DelCollection(listBoxCollection.SelectedItem.ToString());
|
||||||
|
_logger.LogInformation($"Удалена коллекция: {name}");
|
||||||
RerfreshListBoxItems();
|
RerfreshListBoxItems();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -254,20 +262,25 @@ public partial class FormBomberCollection : Form
|
|||||||
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
|
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Коллекция не выбрана");
|
MessageBox.Show("Коллекция не выбрана");
|
||||||
|
_logger.LogError("Создание компании невыбранной коллекции");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
ICollectionGenericObjects<DrawningBomber>? collection = _storageCollection[listBoxCollection.SelectedItem.ToString() ?? string.Empty];
|
ICollectionGenericObjects<DrawningBomber>? collection = _storageCollection[listBoxCollection.SelectedItem.ToString() ?? string.Empty];
|
||||||
if (collection == null)
|
if (collection == null)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Коллекция не проинициализирована");
|
MessageBox.Show("Коллекция не проинициализирована");
|
||||||
|
_logger.LogError("Не удалось инициализировать коллекцию");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (comboBoxSelectorCompany.Text)
|
switch (comboBoxSelectorCompany.Text)
|
||||||
{
|
{
|
||||||
case "Хранилище":
|
case "Ангар":
|
||||||
_company = new BomberHungarService(pictureBox.Width, pictureBox.Height, collection);
|
_company = new BomberHungarService(pictureBox.Width, pictureBox.Height, collection);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
panelCompanyTools.Enabled = true;
|
panelCompanyTools.Enabled = true;
|
||||||
RerfreshListBoxItems();
|
RerfreshListBoxItems();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user