великий done

This commit is contained in:
Baryshev Dmitry 2024-06-09 18:26:47 +04:00
parent d7a9531c96
commit d481383716
3 changed files with 22 additions and 11 deletions

View File

@ -95,6 +95,11 @@ public class MassiveGenericObjects<T> : ICollectionGenericObject<T>
public int Insert(T obj, int position, IEqualityComparer<DrawningTruck?>? comparer = null)
{
if (position < 0 || position >= Count)
{
throw new PositionOutOfCollectionException(position);
}
for (int i = 0; i < Count; i++)
{
if (comparer.Equals((_collection[i] as DrawningTruck), (obj as DrawningTruck)))
@ -103,11 +108,6 @@ public class MassiveGenericObjects<T> : ICollectionGenericObject<T>
}
}
if (position < 0 || position >= Count)
{
throw new PositionOutOfCollectionException(position);
}
if (_collection[position] == null)
{
_collection[position] = obj;

View File

@ -3,7 +3,8 @@ using System.Runtime.Serialization;
namespace ProjectDumpTruck.Exceptions;
public class ObjectAlreadyInCollectionException : ApplicationException
[Serializable]
internal class ObjectAlreadyInCollectionException : ApplicationException
{
public ObjectAlreadyInCollectionException(int i) : base("Такой объект уже есть в коллекции. Позиция " + i) { }

View File

@ -72,12 +72,13 @@ public partial class FormTruckCollection : Form
/// <param name="truck"></param>
private void SetTruck(DrawningTruck truck)
{
if (_company == null || truck == null)
{
return;
}
try
{
if (_company == null || truck == null)
{
return;
}
if (_company + truck != -1)
{
@ -85,12 +86,21 @@ public partial class FormTruckCollection : Form
_logger.LogInformation($"Добавлен объект {truck.GetDataForSave()}");
pictureBox.Image = _company.Show();
}
else
{
MessageBox.Show("Не удалось добавить объект");
}
}
catch (CollectionOverflowException ex)
{
MessageBox.Show(ex.Message);
_logger.LogWarning($"Ошибка: {ex.Message}");
}
catch (ArgumentException ex)
{
MessageBox.Show(ex.Message);
_logger.LogWarning($"Ошибка: {ex.Message}");
}
}
/// <summary>