Исправлено удаление

This commit is contained in:
the 2022-10-05 12:15:46 +04:00 committed by Данияр Аглиуллов
parent 056cf6de2e
commit 69db2652b3
3 changed files with 12 additions and 11 deletions

View File

@ -142,7 +142,7 @@
return; return;
} }
int pos = Convert.ToInt32(maskedTextBoxPosition.Text); int pos = Convert.ToInt32(maskedTextBoxPosition.Text);
if (_mapsCollection[listBoxMaps.SelectedItem?.ToString() ?? string.Empty] - pos) if (_mapAirplanesCollectionGeneric - pos != -1)
{ {
MessageBox.Show("Объект удален"); MessageBox.Show("Объект удален");
pictureBox.Image = _mapsCollection[listBoxMaps.SelectedItem?.ToString() ?? string.Empty].ShowSet(); pictureBox.Image = _mapsCollection[listBoxMaps.SelectedItem?.ToString() ?? string.Empty].ShowSet();

View File

@ -54,8 +54,8 @@ namespace AirBomber
/// </summary> /// </summary>
/// <param name="map"></param> /// <param name="map"></param>
/// <param name="airplane"></param> /// <param name="airplane"></param>
/// <returns></returns> /// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public static bool operator +(MapWithSetAirplanesGeneric<T, U> map, T airplane) public static int operator +(MapWithSetAirplanesGeneric<T, U> map, T airplane)
{ {
return map._setAirplanes.Insert(airplane); return map._setAirplanes.Insert(airplane);
} }
@ -64,8 +64,8 @@ namespace AirBomber
/// </summary> /// </summary>
/// <param name="map"></param> /// <param name="map"></param>
/// <param name="position"></param> /// <param name="position"></param>
/// <returns></returns> /// <returns>Возвращает удаленный объект, либо null если его не удалось удалить</returns>
public static bool operator -(MapWithSetAirplanesGeneric<T, U> map, int position) public static T operator -(MapWithSetAirplanesGeneric<T, U> map, int position)
{ {
return map._setAirplanes.Remove(position); return map._setAirplanes.Remove(position);
} }

View File

@ -65,13 +65,14 @@ namespace AirBomber
/// Удаление объекта из набора с конкретной позиции /// Удаление объекта из набора с конкретной позиции
/// </summary> /// </summary>
/// <param name="position"></param> /// <param name="position"></param>
/// <returns></returns> /// <returns>Возвращает удаленный объект, либо null если его не удалось удалить</returns>
public bool Remove(int position) public T Remove(int position)
{ {
if (!isCorrectPosition(position) || position >= Count) if (!isCorrectPosition(position))
return false; return null;
_places.RemoveAt(position); var result = _places[position];
return true; _places[position] = null;
return result;
} }
/// <summary> /// <summary>
/// Получение объекта из набора по позиции /// Получение объекта из набора по позиции