public int AddCity(string city) { if (city == "") { return(2); } else { var _city = CRoute.FormatCity(city); if (!cities.Contains(_city)) { cities.Add(_city); return(0); } else { return(1); } } }
private void DbModButton_Click(object sender, EventArgs e) { if (DbModCity.Checked) { if (DbModNewCityName.Text == DbModCitySelector.SelectedItem.ToString()) { db_show_error(String.Format("{0} не изменено", DbModNewCityName.Text)); return; } else { string old = DbModCitySelector.SelectedItem.ToString(); string newcity = CRoute.FormatCity(DbModNewCityName.Text); int r = parent.ModCity(old, newcity); switch (r) { case 0: { DbActionSuccessLabel.Text = String.Format("Изменен город: {0} на {1}", DbModCitySelector.SelectedItem.ToString(), DbModNewCityName.Text); log_add_row(2, 0, old, newcity); DbModNewCityName.ResetText(); DbRefresh(); break; } case 1: { db_show_error("Ошибка: недопустимое новое имя города"); break; } } } } else { int id = DbModRouteSelector.SelectedIndex; int r = parent.ModRoute(id, DbModNewRouteLength.Text, DbModNewRouteTime.Text, DbModNewRouteCost.Text); switch (r) { case 0: { string qd = String.Format("{0},{1},{2}", DbModNewRouteLength.Text, DbModNewRouteTime.Text, DbModNewRouteCost.Text); log_add_row(2, 1, DbModRouteSelector.SelectedItem.ToString(), qd); DbModNewRouteCost.ResetText(); DbModNewRouteLength.ResetText(); DbModNewRouteTime.ResetText(); DbRefresh(); break; } case 8: { db_show_error("Не изменено"); break; } case 10: { db_show_error("Ошибка: параметры должны быть положительными"); break; } case -1: { db_show_error("Ошибка: параметры должны быть целыми числами"); break; } default: { string tmp; tmp = "Ошибка: введите "; if ((r & 1) == 1) { tmp += "расстояние; "; } if (((r >> 1) & 1) == 1) { tmp += "время; "; } if (((r >> 2) & 1) == 1) { tmp += "стоимость; "; } db_show_error(tmp); break; } } } }
private void DbAddButton_Click(object sender, EventArgs e) { if (DbAddCity.Checked) { string newcity = CRoute.FormatCity(DbAddNewCityText.Text); int r = parent.AddCity(newcity); switch (r) { case 0: { DbActionSuccessLabel.Text = "Добавлено: " + newcity; DbAddRouteStartSelector.Items.Add(newcity); DbAddRouteEndSelector.Items.Add(newcity); DbDeleteCitySelector.Items.Add(newcity); DbCitiesList.Items.Add(newcity); DbModCitySelector.Items.Add(newcity); DbAddNewCityText.Clear(); log_add_row(0, 0, newcity); break; } case 1: { db_show_error("Ошибка: такой город уже существует"); break; } case 2: { db_show_error("Ошибка: введите название города"); break; } } } if (DbAddRoute.Checked) { if (DbAddRouteStartSelector.SelectedIndex >= 0 && DbAddRouteEndSelector.SelectedIndex >= 0) { int r = parent.AddRoute(DbAddRouteStartSelector.SelectedItem.ToString(), DbAddRouteEndSelector.SelectedItem.ToString(), DbAddRouteLength.Text, DbAddRouteTime.Text, DbAddRouteCost.Text); switch (r) { case 0: { CRoute qd = parent.routes.Last(); string qz = String.Format("{0} - {1} ({2},{3},{4})", qd.FirstCity, qd.SecondCity, qd.Options[0], qd.Options[1], qd.Options[2]); DbDeleteRouteSelector.Items.Add(qz); DbModRouteSelector.Items.Add(qz); DbActionSuccessLabel.Text = String.Format("Добавлено: дорога {0} - {1} ({2} км, {3} ч, {4}$)", DbAddRouteStartSelector.SelectedItem.ToString(), DbAddRouteEndSelector.SelectedItem.ToString(), DbAddRouteLength.Text, DbAddRouteTime.Text, DbAddRouteCost.Text); log_add_row(0, 1, String.Format("{0} - {1} ({2},{3},{4})", DbAddRouteStartSelector.SelectedItem.ToString(), DbAddRouteEndSelector.SelectedItem.ToString(), DbAddRouteLength.Text, DbAddRouteTime.Text, DbAddRouteCost.Text)); DbRoutesDataGrid.Rows.Add(DbRoutesDataGrid.Rows.Count + 1, DbAddRouteStartSelector.SelectedItem.ToString(), DbAddRouteEndSelector.SelectedItem.ToString(), DbAddRouteLength.Text, DbAddRouteTime.Text, DbAddRouteCost.Text); DbAddRouteEndSelector.ResetText(); DbAddRouteEndSelector.SelectedIndex = -1; DbAddRouteStartSelector.ResetText(); DbAddRouteStartSelector.SelectedIndex = -1; DbAddRouteLength.Clear(); DbAddRouteTime.Clear(); DbAddRouteCost.Clear(); break; } case 15: { db_show_error("Ошибка: такая дорога уже существует"); break; } case -1: { db_show_error("Ошибка: параметры должны быть целыми числами"); break; } case 8: { db_show_error("Ошибка: нельзя добавить такую дорогу"); break; } case 10: { db_show_error("Ошибка: параметры должны быть положительными"); break; } default: { string tmp; tmp = "Ошибка: введите "; if ((r & 1) == 1) { tmp += "расстояние; "; } if (((r >> 1) & 1) == 1) { tmp += "время; "; } if (((r >> 2) & 1) == 1) { tmp += "стоимость; "; } db_show_error(tmp); break; } } } else { db_show_error("Ошибка: укажите начало и конец дороги"); } } }