Пример #1
0
 private void tsbSteelBaseParts_Click(object sender, EventArgs e)
 {
     if (lvDetails.SelectedIndices.Count == 1)
     {
         SteelColumnBase steelColumnBase;
         foreach (int i in lvDetails.SelectedIndices)
         {
             steelColumnBase = ((List <SteelColumnBase>)_objectList)[i];
             var detailObjectList = new DetailObjectList("ColumnBaseParts", steelColumnBase, steelColumnBase.SteelBaseParts, false);
             detailObjectList.BtnVisibilityList = new List <short>()
             {
                 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0
             };
             frmDetailList DetailForm = new frmDetailList(detailObjectList);
             this.Visible = false;
             DetailForm.ShowDialog();
             this.Visible = true;
             EditItemFromSteelColumnBase(lvDetails.Items[i], steelColumnBase);
         }
     }
     else
     {
         MessageBox.Show("Выберите один элемент из списка", "Неверный выбор");
     }
 }
Пример #2
0
 private void tsbOpenings_Click(object sender, EventArgs e)
 {
     if (lvDetails.SelectedIndices.Count == 1)
     {
         Wall wall;
         foreach (int i in lvDetails.SelectedIndices)
         {
             wall = ((List <Wall>)_objectList)[i];
             var detailObjectList = new DetailObjectList("OpeningPlacings", wall, wall.OpeningPlacingList, false);
             detailObjectList.BtnVisibilityList = new List <short>()
             {
                 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0
             };
             frmDetailList DetailForm = new frmDetailList(detailObjectList);
             this.Visible = false;
             DetailForm.ShowDialog();
             this.Visible = true;
             EditItemFromWall(lvDetails.Items[i], wall);
         }
     }
     else
     {
         MessageBox.Show("Выберите один элемент из списка", "Неверный выбор");
     }
 }
Пример #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            var detailObjectList =
                new DetailObjectList("Levels", ProgrammSettings.BuildingSite.BuildingList[0],
                                     ProgrammSettings.BuildingSite.BuildingList[0].LevelList, false);
            frmDetailList DetailForm = new frmDetailList(detailObjectList);

            DetailForm.Show();
        }
Пример #4
0
        private void tsbOpeningTypes_Click(object sender, EventArgs e)
        {
            Building      building         = (Building)_parentObject;
            var           detailObjectList = new DetailObjectList("OpeningTypes", building, building.OpeningTypeList, false);
            frmDetailList DetailForm       = new frmDetailList(detailObjectList);

            this.Visible = false;
            DetailForm.ShowDialog();
            this.Visible = true;
        }
Пример #5
0
        private static void ShowSteelBase()
        {
            var detailObjectList = new DetailObjectList("Levels", ProgrammSettings.BuildingSite.BuildingList[0],
                                                        ProgrammSettings.BuildingSite.BuildingList[0].LevelList, false);

            detailObjectList.BtnVisibilityList = new List <short>()
            {
                1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0
            };
            frmDetailList DetailForm = new frmDetailList(detailObjectList);

            DetailForm.Show();
        }
Пример #6
0
        private void tsbWallType_Click(object sender, EventArgs e)
        {
            Building      building         = (Building)_parentObject;
            var           detailObjectList = new DetailObjectList("WallTypes", building, building.WallTypeList, false);
            frmDetailList DetailForm       = new frmDetailList(detailObjectList);

            this.Visible = false;
            DetailForm.ShowDialog();
            this.Visible = true;
            foreach (ListViewItem i in lvDetails.Items)
            {
                EditItemFromLevel(i, building.LevelList[i.Index]);
            }
        }
Пример #7
0
 private void tsbWalls_Click(object sender, EventArgs e)
 {
     if (lvDetails.SelectedIndices.Count == 1)
     {
         Level level;
         foreach (int i in lvDetails.SelectedIndices)
         {
             level = ((List <Level>)_objectList)[i];
             var           detailObjectList = new DetailObjectList("Walls", level, level.WallList, false);
             frmDetailList DetailForm       = new frmDetailList(detailObjectList);
             this.Visible = false;
             DetailForm.ShowDialog();
             this.Visible = true;
             EditItemFromLevel(lvDetails.Items[i], level);
         }
     }
     else
     {
         MessageBox.Show("Выберите один элемент из списка", "Неверный выбор");
     }
 }
Пример #8
0
        public frmDetailList(DetailObjectList detailObjectList)
        {
            InitializeComponent();
            _detailObjectList = detailObjectList;

            _formType     = _detailObjectList.DataType;
            _parentObject = _detailObjectList.ParentObject;
            _objectList   = _detailObjectList.ObjectList;
            _isSelectable = _detailObjectList.IsSelectable;

            lvDetails.Columns.Clear();

            List <String> ColumnName  = new List <String>();
            List <Int32>  ColumnWidth = new List <Int32>();

            switch (_formType) //
            {
            case "Buildings":  //Создаем окно для списка зданий
            {
                this.Text = "Здания";
                List <String> _ColumnName = new List <String>()
                {
                    "Наименование"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    600
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                break;
            }

            case "Levels":     //Создаем окно для списка уровней
            {
                this.Text = "Уровни";
                List <String> _ColumnName = new List <String>()
                {
                    "Наименование", "Отметка, м", "Высота, мм", "Перекрытие, мм", "Кол-во, шт.", "V_нетто (на этаж)", "V_нетто (всего)"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    100, 100, 100, 100, 100, 150, 150
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var levelList = (List <Level>)_objectList;
                foreach (Level level in levelList)
                {
                    NewItemFromLevel(level);
                }
                tsbWalls.Visible        = true;
                tsbWallTypes.Visible    = true;
                tsbOpeningTypes.Visible = true;
                tsbOpenings.Visible     = false;
                tsbReport.Visible       = true;
                break;
            }

            //Create window for Openings
            case "OpeningPlacings":
            {
                this.Text = "Проемы";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Привязка от начала, мм", "Привязка снизу, мм", "S_нетто, кв.м"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    250, 150, 150, 80
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var openingPlacingList = (List <OpeningPlacing>)_objectList;
                foreach (OpeningPlacing openingPlacing in openingPlacingList)
                {
                    NewItemFromOpeningPlacing(openingPlacing);
                }
                tsbWalls.Visible        = false;
                tsbWallTypes.Visible    = false;
                tsbOpeningTypes.Visible = false;
                tsbOpenings.Visible     = false;
                tsbReport.Visible       = false;
                break;
            }

            //Create window for OpeningType
            case "OpeningTypes":
            {
                this.Text = "Типы проемов";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Назначение", "Ширина", "Высота", "Привязка снизу, мм", "Привязка сверху, мм", "Площадь, кв.м"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    250, 100, 100, 100, 100, 100, 100
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                var openingTypeList = (List <OpeningType>)_objectList;
                foreach (OpeningType openingType in openingTypeList)
                {
                    NewItemFromOpeningType(openingType);
                }
                tsbWalls.Visible        = false;
                tsbWallTypes.Visible    = false;
                tsbOpeningTypes.Visible = false;
                tsbOpenings.Visible     = false;
                tsbReport.Visible       = false;
                break;
            }

            //Создаем окно для списка стен
            case "Walls":
            {
                this.Text = "Стены";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Проемы", "Размеры, мм", "Верт.стерж.", "Гор.стерж.", "Диаг.стерж.", "S_брутто, кв.м", "S_нетто, кв.м", "V_брутто, куб.м", "V_нетто, куб.м"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    150, 100, 150, 100, 100, 100, 100, 100, 100, 100
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var wallList = (List <Wall>)_objectList;
                foreach (Wall wall in wallList)
                {
                    NewItemFromWall(wall);
                }

                tsbWalls.Visible        = false;
                tsbWallTypes.Visible    = false;
                tsbOpeningTypes.Visible = false;
                tsbOpenings.Visible     = true;
                tsbReport.Visible       = true;
                break;
            }

            case "WallTypes":     //Создаем окно для списка стен
            {
                this.Text = "Типы стен";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Толщина, мм", "Шаг верт, мм", "Шаг гор, мм"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    300, 80, 80, 80
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                var wallTypeList = (List <WallType>)_objectList;
                foreach (WallType wallType in wallTypeList)
                {
                    NewItemFromWallType(wallType);
                }
                tsbWalls.Visible        = false;
                tsbWallTypes.Visible    = false;
                tsbOpeningTypes.Visible = false;
                tsbOpenings.Visible     = false;
                tsbReport.Visible       = false;
                break;
            }
            }

            foreach (String S in ColumnName)
            {
                lvDetails.Columns.Add(S);
            }
            for (int i = 0; i < lvDetails.Columns.Count; i++)
            {
                lvDetails.Columns[i].Width = ColumnWidth[i];
            }
            for (int i = 1; i < lvDetails.Columns.Count; i++)
            {
                lvDetails.Columns[i].TextAlign = HorizontalAlignment.Center;
            }
            if (_isSelectable)
            {
                btnClose.Name = "Выбрать";
            }
            else
            {
                btnClose.Name = "Закрыть";
            }
            lvDetails.MultiSelect = !_isSelectable;
        }
Пример #9
0
        public frmDetailList(DetailObjectList detailObjectList)
        {
            #region Получение входного объекта в конструкторе
            InitializeComponent();
            _detailObjectList = detailObjectList;
            _formType         = _detailObjectList.DataType;
            _parentObject     = _detailObjectList.ParentObject;
            _objectList       = _detailObjectList.ObjectList;
            _isSelectable     = _detailObjectList.IsSelectable;
            lvDetails.Columns.Clear();

            List <String> ColumnName  = new List <String>();
            List <Int32>  ColumnWidth = new List <Int32>();
            #endregion
            #region Определение видимости кнопок
            for (int i = 0; i < tspMain.Items.Count; i++)
            {
                tspMain.Items[i].Visible = false;
            }
            if (!(_detailObjectList.BtnVisibilityList == null))
            {
                for (int i = 0; i < _detailObjectList.BtnVisibilityList.Count; i++)
                {
                    if (_detailObjectList.BtnVisibilityList[i] == 0)
                    {
                        tspMain.Items[i].Visible = false;
                    }
                    else
                    {
                        tspMain.Items[i].Visible = true;
                    }
                }
            }
            #endregion
            //В зависимости от вида объекта показываем нужные столбцы
            switch (_formType) //
            {
            case "Buildings":  //Создаем окно для списка зданий
            {
                this.Text = "Здания";
                List <String> _ColumnName = new List <String>()
                {
                    "Наименование"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    600
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                break;
            }

            case ObjLevels:     //Создаем окно для списка уровней
            {
                this.Text = "Уровни";
                List <String> _ColumnName = new List <String>()
                {
                    "Наименование", "Отметка, м", "Высота, мм", "Перекрытие, мм", "Кол-во, шт.", "V_нетто (на этаж)", "V_нетто (всего)"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    100, 100, 100, 100, 100, 150, 150
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var levelList = (List <Level>)_objectList;
                foreach (Level level in levelList)
                {
                    NewItemFromLevel(level);
                }
                break;
            }

            //Create window for Openings
            case "OpeningPlacings":
            {
                this.Text = "Проемы";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Привязка от начала, мм", "Привязка снизу, мм", "S_нетто, кв.м"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    250, 150, 150, 80
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var openingPlacingList = (List <OpeningPlacing>)_objectList;
                foreach (OpeningPlacing openingPlacing in openingPlacingList)
                {
                    NewItemFromOpeningPlacing(openingPlacing);
                }
                break;
            }

            //Create window for OpeningType
            case "OpeningTypes":
            {
                this.Text = "Типы проемов";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Назначение", "Ширина", "Высота", "Привязка снизу, мм", "Привязка сверху, мм", "Площадь, кв.м"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    250, 100, 100, 100, 100, 100, 100
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                var openingTypeList = (List <OpeningType>)_objectList;
                foreach (OpeningType openingType in openingTypeList)
                {
                    NewItemFromOpeningType(openingType);
                }
                break;
            }

            case ObjColumnBaseParts:
            {
                #region Определение видимых столбцов и их ширины
                this.Text = "Участки базы стальных колонн";
                List <String> _ColumnName = new List <String>()
                {
                    "Наименование", "Размеры, мм", "Макс. напряжения, МПа"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    150, 100, 150
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                #endregion
                var basePartList = (List <SteelBasePart>)_objectList;
                foreach (SteelBasePart basePart in basePartList)
                {
                    NewItemFromColumnBasePart(basePart);
                }
                break;
            }

            case ObjBarForses:
            {
                #region Определение видимых столбцов и их ширины
                this.Text = "Нагрузки на базы стальных колонн";
                List <String> _ColumnName = new List <String>()
                {
                    "Наименование", "Nz, кН", "Mx, кН*м", "My, кН*м", "Qx, кН", "Qx, кН"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    150, 100, 100, 100, 100, 100
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                #endregion
                var LoadSetList = (List <BarLoadSet>)_objectList;
                foreach (BarLoadSet loadSet in LoadSetList)
                {
                    NewItemFromColumnLoadSet(loadSet);
                }
                break;
            }

            case ObjSteelColumnBases:
            {
                this.Text = "Базы стальных колонн";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Размеры, мм", "Привязки болтов, мм", "Напряжения макс/мин"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    150, 100, 150, 150
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var SteelColumnBaseList = (List <SteelColumnBase>)_objectList;
                foreach (SteelColumnBase columnBase in SteelColumnBaseList)
                {
                    NewItemFromSteelColumnBase(columnBase);
                }
                break;
            }

            //Создаем окно для списка стен
            case ObjWalls:
            {
                this.Text = "Стены";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Проемы", "Размеры, мм", "Верт.стерж.", "Гор.стерж.", "Диаг.стерж.", "S_брутто, кв.м", "S_нетто, кв.м", "V_брутто, куб.м", "V_нетто, куб.м"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    150, 100, 150, 100, 100, 100, 100, 100, 100, 100
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);

                var wallList = (List <Wall>)_objectList;
                foreach (Wall wall in wallList)
                {
                    NewItemFromWall(wall);
                }
                break;
            }

            case "WallTypes":     //Создаем окно для списка стен
            {
                this.Text = "Типы стен";
                List <String> _ColumnName = new List <String>()
                {
                    "Марка", "Толщина, мм", "Шаг верт, мм", "Шаг гор, мм"
                };
                List <Int32> _ColumnWidth = new List <Int32>()
                {
                    300, 80, 80, 80
                };
                ColumnName.AddRange(_ColumnName);
                ColumnWidth.AddRange(_ColumnWidth);
                var wallTypeList = (List <WallType>)_objectList;
                foreach (WallType wallType in wallTypeList)
                {
                    NewItemFromWallType(wallType);
                }
                break;
            }
            }
            #region
            foreach (String S in ColumnName)
            {
                lvDetails.Columns.Add(S);
            }
            for (int i = 0; i < lvDetails.Columns.Count; i++)
            {
                lvDetails.Columns[i].Width = ColumnWidth[i];
            }
            for (int i = 1; i < lvDetails.Columns.Count; i++)
            {
                lvDetails.Columns[i].TextAlign = HorizontalAlignment.Center;
            }
            if (_isSelectable)
            {
                btnClose.Name = "Выбрать";
            }
            else
            {
                btnClose.Name = "Закрыть";
            }
            lvDetails.MultiSelect = !_isSelectable;
            #endregion
        }