diff --git a/HoistingCrane/HoistingCrane/CollectionGenericObjects/AbstractCompany.cs b/HoistingCrane/HoistingCrane/CollectionGenericObjects/AbstractCompany.cs
index 7ed15c5..7c3b27e 100644
--- a/HoistingCrane/HoistingCrane/CollectionGenericObjects/AbstractCompany.cs
+++ b/HoistingCrane/HoistingCrane/CollectionGenericObjects/AbstractCompany.cs
@@ -23,7 +23,7 @@ namespace HoistingCrane.CollectionGenericObjects
///
/// Коллекция автомобилей
///
- protected ICollectionGenericObjects? arr = null;
+ protected ICollectionGenericObjects? arr = null;
///
/// Максимальное количество гаражей
///
@@ -48,7 +48,7 @@ namespace HoistingCrane.CollectionGenericObjects
}
public static DrawningTrackedVehicle operator -(AbstractCompany company, int position)
{
- return company.arr?.Remove(position) ?? null;
+ return company.arr?.Remove(position);
}
public DrawningTrackedVehicle? GetRandomObject()
diff --git a/HoistingCrane/HoistingCrane/CollectionGenericObjects/StorageCollection.cs b/HoistingCrane/HoistingCrane/CollectionGenericObjects/StorageCollection.cs
index 8e756d9..d007069 100644
--- a/HoistingCrane/HoistingCrane/CollectionGenericObjects/StorageCollection.cs
+++ b/HoistingCrane/HoistingCrane/CollectionGenericObjects/StorageCollection.cs
@@ -27,17 +27,12 @@ namespace HoistingCrane.CollectionGenericObjects
{
// TODO проверка, что name не пустой и нет в словаре записи с таким ключом
// TODO Прописать логику для добавления
- if (!string.IsNullOrEmpty(name) && !Keys.Contains(name))
- {
- if(collectionType == CollectionType.Massive)
- {
- dict.Add(name, new MassivGenericObjects ());
- }
- if(collectionType == CollectionType.List)
- {
- dict.Add(name, new ListGenericObjects ());
- }
- }
+ if (dict.ContainsKey(name)) return;
+ if (collectionType == CollectionType.None) return;
+ else if (collectionType == CollectionType.Massive)
+ dict[name] = new MassivGenericObjects();
+ else if (collectionType == CollectionType.List)
+ dict[name] = new ListGenericObjects();
}
///
/// Удаление коллекции
@@ -62,10 +57,8 @@ namespace HoistingCrane.CollectionGenericObjects
get
{
// TODO Продумать логику получения объекта
- if (dict.TryGetValue(name, out ICollectionGenericObjects? result))
- {
- return result;
- }
+ if (dict.ContainsKey(name))
+ return dict[name];
return null;
}
}
diff --git a/HoistingCrane/HoistingCrane/FormCarCollection.Designer.cs b/HoistingCrane/HoistingCrane/FormCarCollection.Designer.cs
index 8ef2c7f..e836b45 100644
--- a/HoistingCrane/HoistingCrane/FormCarCollection.Designer.cs
+++ b/HoistingCrane/HoistingCrane/FormCarCollection.Designer.cs
@@ -29,8 +29,8 @@
private void InitializeComponent()
{
groupBoxTools = new GroupBox();
- panelCompanyTool = new Panel();
buttonCreateCompany = new Button();
+ panelCompanyTool = new Panel();
buttonRefresh = new Button();
buttonGoToChek = new Button();
buttonCreateHoistingCrane = new Button();
@@ -67,20 +67,6 @@
groupBoxTools.TabStop = false;
groupBoxTools.Text = "Инструменты";
//
- // panelCompanyTool
- //
- panelCompanyTool.Anchor = AnchorStyles.None;
- panelCompanyTool.Controls.Add(buttonRefresh);
- panelCompanyTool.Controls.Add(buttonGoToChek);
- panelCompanyTool.Controls.Add(buttonCreateHoistingCrane);
- panelCompanyTool.Controls.Add(buttonCreateTrackedVehicle);
- panelCompanyTool.Controls.Add(buttonDeleteCar);
- panelCompanyTool.Controls.Add(maskedTextBox);
- panelCompanyTool.Location = new Point(3, 317);
- panelCompanyTool.Name = "panelCompanyTool";
- panelCompanyTool.Size = new Size(208, 238);
- panelCompanyTool.TabIndex = 8;
- //
// buttonCreateCompany
//
buttonCreateCompany.Location = new Point(12, 288);
@@ -91,6 +77,21 @@
buttonCreateCompany.UseVisualStyleBackColor = true;
buttonCreateCompany.Click += buttonCreateCompany_Click;
//
+ // panelCompanyTool
+ //
+ panelCompanyTool.Anchor = AnchorStyles.None;
+ panelCompanyTool.Controls.Add(buttonRefresh);
+ panelCompanyTool.Controls.Add(buttonGoToChek);
+ panelCompanyTool.Controls.Add(buttonCreateHoistingCrane);
+ panelCompanyTool.Controls.Add(buttonCreateTrackedVehicle);
+ panelCompanyTool.Controls.Add(buttonDeleteCar);
+ panelCompanyTool.Controls.Add(maskedTextBox);
+ panelCompanyTool.Enabled = false;
+ panelCompanyTool.Location = new Point(3, 317);
+ panelCompanyTool.Name = "panelCompanyTool";
+ panelCompanyTool.Size = new Size(208, 238);
+ panelCompanyTool.TabIndex = 8;
+ //
// buttonRefresh
//
buttonRefresh.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right;
@@ -204,7 +205,7 @@
radioButtonList.AutoSize = true;
radioButtonList.Location = new Point(128, 56);
radioButtonList.Name = "radioButtonList";
- radioButtonList.Size = new Size(67, 19);
+ radioButtonList.Size = new Size(66, 19);
radioButtonList.TabIndex = 3;
radioButtonList.TabStop = true;
radioButtonList.Text = "Список";
@@ -215,7 +216,7 @@
radioButtonMassive.AutoSize = true;
radioButtonMassive.Location = new Point(18, 56);
radioButtonMassive.Name = "radioButtonMassive";
- radioButtonMassive.Size = new Size(69, 19);
+ radioButtonMassive.Size = new Size(67, 19);
radioButtonMassive.TabIndex = 2;
radioButtonMassive.TabStop = true;
radioButtonMassive.Text = "Массив";
@@ -233,7 +234,7 @@
labelCollectionName.AutoSize = true;
labelCollectionName.Location = new Point(35, 0);
labelCollectionName.Name = "labelCollectionName";
- labelCollectionName.Size = new Size(135, 15);
+ labelCollectionName.Size = new Size(125, 15);
labelCollectionName.TabIndex = 0;
labelCollectionName.Text = "Название коллекции:";
//
diff --git a/HoistingCrane/HoistingCrane/FormCarCollection.cs b/HoistingCrane/HoistingCrane/FormCarCollection.cs
index 7e10c97..8ca2035 100644
--- a/HoistingCrane/HoistingCrane/FormCarCollection.cs
+++ b/HoistingCrane/HoistingCrane/FormCarCollection.cs
@@ -1,32 +1,24 @@
using HoistingCrane.CollectionGenericObjects;
using HoistingCrane.Drawning;
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-
namespace HoistingCrane
{
public partial class FormCarCollection : Form
{
- private AbstractCompany? _company;
+ private AbstractCompany? _company = null;
private readonly StorageCollection _storageCollection;
+
public FormCarCollection()
{
InitializeComponent();
_storageCollection = new();
- panelCompanyTool.Enabled = false;
}
+
private void comboBoxSelectorCompany_SelectedIndexChanged(object sender, EventArgs e)
{
panelCompanyTool.Enabled = false;
}
+
private void CreateObject(string type)
{
DrawningTrackedVehicle drawning;
@@ -146,19 +138,26 @@ namespace HoistingCrane
{
collectionType = CollectionType.List;
}
- _storageCollection.AddCollection(textBoxCollectionName.Text,
- collectionType);
+ _storageCollection.AddCollection(textBoxCollectionName.Text, collectionType);
RerfreshListBoxItems();
}
private void buttonDeleteCollection_Click(object sender, EventArgs e)
{
+ // TODO прописать логику удаления элемента из коллекции
+ // нужно убедиться, что есть выбранная коллекция
+ // спросить у пользователя через MessageBox, что он подтверждает, что хочет удалить запись
+ // удалить и обновить ListBox
+
if (listBoxCollection.SelectedIndex < 0 || listBoxCollection.SelectedItem == null)
{
MessageBox.Show("Коллекция не выбрана");
return;
}
+
if (MessageBox.Show("Удалить коллекцию?", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
+ {
return;
+ }
_storageCollection.DelCollection(listBoxCollection.SelectedItem.ToString());
RerfreshListBoxItems();
}