Exemplo n.º 1
0
        private void DbRefresh()
        {
            DbAddRouteEndSelector.Items.Clear();
            DbAddRouteStartSelector.Items.Clear();
            DbDeleteCitySelector.Items.Clear();
            DbDeleteRouteSelector.Items.Clear();
            DbRoutesDataGrid.Rows.Clear();
            DbModCitySelector.Items.Clear();
            DbModRouteSelector.Items.Clear();
            DbCitiesList.Items.Clear();
            for (int i = 0; i < parent.cities.Count; i++)
            {
                DbAddRouteStartSelector.Items.Add(parent.cities[i]);
                DbAddRouteEndSelector.Items.Add(parent.cities[i]);
                DbDeleteCitySelector.Items.Add(parent.cities[i]);
                DbCitiesList.Items.Add(parent.cities[i]);
                DbModCitySelector.Items.Add(parent.cities[i]);
            }
            string tmp;

            for (int i = 0; i < parent.routes.Count; i++)
            {
                tmp = String.Format("{0} - {1} ({2},{3},{4})", parent.routes[i].FirstCity, parent.routes[i].SecondCity, parent.routes[i].Options[0], parent.routes[i].Options[1], parent.routes[i].Options[2]);
                DbDeleteRouteSelector.Items.Add(tmp);
                DbModRouteSelector.Items.Add(tmp);
                DbRoutesDataGrid.Rows.Add(i + 1, parent.routes[i].FirstCity, parent.routes[i].SecondCity, parent.routes[i].Options[0], parent.routes[i].Options[1], parent.routes[i].Options[2]);
            }
            DbAddRouteEndSelector.SelectedIndex   = -1;
            DbAddRouteStartSelector.SelectedIndex = -1;
            DbDeleteCitySelector.SelectedIndex    = -1;
            DbDeleteRouteSelector.SelectedIndex   = -1;
            DbAddRouteEndSelector.ResetText();
            DbAddRouteStartSelector.ResetText();
            DbDeleteCitySelector.ResetText();
            DbDeleteRouteSelector.ResetText();
            DbModCitySelector.ResetText();
            DbModRouteSelector.ResetText();
            //DbTabs.Refresh();
        }
Exemplo n.º 2
0
        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("Ошибка: укажите начало и конец дороги");
                }
            }
        }