Пример #1
0
        ///<summary>
        ///</summary>
        private void UpdateInformation()
        {
            if (_currentDirctive == null || _currentDirctive.DamageDocs == null ||
                _currentAircraft == null)
            {
                return;
            }

            if (_currentDirctive.DamageDocs.Count == 0)
            {
                //если у родителя нет ни одного Damage Doc-а, то ему добавляется в коллекцию Damage Doc-ов
                //пустой Damage Doc, ради того, что бы при появлении формы она не была пустой
                //если пользователь не изменит объект пустого Damage Doc-а, то данный Damage Doc при
                //закрытии формы не сохранится и произоидет удаление всех пустых Damage Doc-ов из
                //коллекции Damage Doc-ов родителя

                DamageDocument damageDoc = new DamageDocument(1, _currentDirctive.ItemId);
                _currentDirctive.DamageDocs.Add(damageDoc);

                DamageDocument imageDoc = new DamageDocument(2, _currentDirctive.ItemId);
                _currentDirctive.DamageDocs.Add(imageDoc);
            }

            int countCharts = 0, countImages = 0;

            foreach (DamageDocument doc in _currentDirctive.DamageDocs)
            {
                if (doc.DocumentTypeId == 1)
                {
                    DamageChartFileControlNew docControl = new DamageChartFileControlNew(doc, _currentAircraft);
                    docControl.Extended = countCharts == 0;
                    countCharts++;

                    _damageChartsFileControls.Add(docControl);
                    docControl.Deleted += ChartDeleted;
                    flowLayoutPanelCharts.Controls.Remove(panelButtonsFiles);
                    flowLayoutPanelCharts.Controls.Add(docControl);
                    flowLayoutPanelCharts.Controls.Add(panelButtonsFiles);
                }
                if (doc.DocumentTypeId == 2)
                {
                    DamageChartImageControl docControl = new DamageChartImageControl(doc);
                    if (countImages == 0)
                    {
                        docControl.Extended = true;
                    }
                    else
                    {
                        docControl.Extended = false;
                    }
                    countImages++;

                    _damageImagesFileControls.Add(docControl);
                    docControl.Deleted += ImageDeleted;
                    flowLayoutPanelImages.Controls.Remove(panelButtonsImages);
                    flowLayoutPanelImages.Controls.Add(docControl);
                    flowLayoutPanelImages.Controls.Add(panelButtonsImages);
                }
            }
        }
Пример #2
0
        void ImageDeleted(object sender, EventArgs e)
        {
            DamageChartImageControl control = (DamageChartImageControl)sender;

            DamageDocument doc = control.DamageDocument;

            GlobalObjects.CasEnvironment.Manipulator.Delete(doc);
            _currentDirctive.DamageDocs.Remove(control.DamageDocument);
            _damageImagesFileControls.Remove(control);
            flowLayoutPanelImages.Controls.Remove(control);
        }
Пример #3
0
        private void ButtonAddImageClick(object sender, EventArgs e)
        {
            DamageDocument newDoc = new DamageDocument(2, _currentDirctive.ItemId);

            _currentDirctive.DamageDocs.Add(newDoc);

            DamageChartImageControl newImage = new DamageChartImageControl(newDoc);

            _damageImagesFileControls.Add(newImage);
            newImage.Deleted += ImageDeleted;
            flowLayoutPanelImages.Controls.Remove(panelButtonsImages);
            flowLayoutPanelImages.Controls.Add(newImage);
            flowLayoutPanelImages.Controls.Add(panelButtonsImages);
        }