public void Add(Wagon wagon) //Add a wagon to train { if (wagon != null) { Wagons.Add(wagon); } else { throw new ArgumentNullException("wagon"); } }
public bool WagonInUse(Wagon wagon) //check if wagon is in use { foreach (Train t in administration.Trains) { foreach (Wagon w in t.Wagons) { if (wagon.WagonNumber == w.WagonNumber) { return(true); } } } return(false); }
private void btnAddWagonToTrain_Click(object sender, EventArgs e) { int wagonNumber; int trainUnit; if (!int.TryParse(cmboBoxWagons.Text, out wagonNumber)) { MessageBox.Show("Invalid input. Please only enter numbers"); } else { if (lstViewTrains.SelectedItems.Count != 1) { MessageBox.Show("Please select a train"); } else { if (int.TryParse(lstViewTrains.SelectedItems[0].SubItems[0].Text, out trainUnit)) { Train findTrain = administration.FindTrain(trainUnit); Wagon findWagon = administration.FindWagon(wagonNumber); if (findTrain != null && findWagon != null) { if (!WagonInUse(findWagon)) { findTrain.Wagons.Add(findWagon); findWagon.AddWagonTo(findTrain); //add wagon to train updateListViewTrains(); } else { MessageBox.Show("Wagon is already in use"); } } else { MessageBox.Show("Could not find wagon. Wagon not added"); } } } } }
private void btnRemove_Click(object sender, EventArgs e) //remove wagon from train { int wagonNumber; int trainUnit; if (!int.TryParse(cmboBoxWagons.Text, out wagonNumber)) { MessageBox.Show("Invalid input. Please only enter numbers"); } else { if (lstViewTrains.SelectedItems.Count != 1) { MessageBox.Show("Please select a train"); } else { if (int.TryParse(lstViewTrains.SelectedItems[0].SubItems[0].Text, out trainUnit)) { Train findTrain = administration.FindTrain(trainUnit); Wagon findWagon = administration.FindWagon(wagonNumber); if (findTrain != null && findWagon != null) { if (findTrain.Wagons.Remove(findWagon)) { findWagon.RemoveWagonFromTrain(); //remove wagon from train updateListViewTrains(); } else { MessageBox.Show("Selected train doesn't have that wagon"); } } else { MessageBox.Show("Could not find wagon."); } } } } }
public bool Remove(Wagon wagon) // remove wagon { if (wagon == null) { throw new ArgumentNullException("wagon"); } Wagon w = FindWagon(wagon.WagonNumber); if (w != null) { Wagons.Remove(w); //remove from list if (OnWagonUpdate != null) { OnWagonUpdate(this, w, false); } return(true); } return(false); }
public bool Add(Wagon wagon) //add wagon { if (wagon == null) { throw new ArgumentNullException("wagon"); } Wagon w = FindWagon(wagon.WagonNumber); if (w == null) { Wagons.Add(wagon); //add to list if (OnWagonUpdate != null) { OnWagonUpdate(this, wagon, true); } return(true); } return(false); }