예제 #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="templateAircraft"></param>
 /// <param name="frame"></param>
 public Aircraft(TemplateAircraft templateAircraft, BaseComponent frame) : this(templateAircraft)
 {
     if (frame != null && templateAircraft != null)
     {
         frame.SerialNumber = templateAircraft.SerialNumber;
     }
 }
예제 #2
0
        /// <summary>
        /// Обработчик события нажатия на кнопку создания Воздушного судна.
        /// </summary>
        private void buttonCreateAircraft_Click(object sender, EventArgs e)
        {
            try
            {
                currentOperator = operators[comboBoxOperators.SelectedIndex];

                templateAircraft = templates[comboBoxTemplates.SelectedIndex];
                templateAircraft = Program.Presenters.AircraftsPresenter.CreateTemplateCopy(
                    templateAircraft,
                    textBoxRegistrationNumber.Text,
                    textBoxSerialNumber.Text,
                    dateTimePickerManufactureDate.Value,
                    textBoxOwner.Text,
                    textBoxLineNumber.Text,
                    textBoxVariableNumber.Text,
                    textBoxModel.Text);
            }
            catch (ArgumentException argumentException)
            {
                MessageBox.Show(
                    String.Format("Invalid value of parameter {0}. {1}", argumentException.ParamName, argumentException.Message),
                    new GlobalTermsProvider()["SystemName"].ToString(),
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Information);
                return;
            }

            Enabled = false;
            animatedThreadWorker       = new AnimatedThreadWorker(CreateAircraftFromTemplate, null, this);
            animatedThreadWorker.State = "Creating " + templateAircraft.RegistrationNumber;
            animatedThreadWorker.StartThread();
            animatedThreadWorker.WorkFinished +=
                CreateAircraftFromTemplateFinished;
        }
예제 #3
0
 public TemplateAircraftAddForm(TemplateAircraft aircraft)
 {
     this.aircraft = aircraft;
     InitializeComponent();
     UpdateComboBoxItems();
     textBoxAmount.Text = aircraft.Amount.ToString();
 }
예제 #4
0
        /// <summary>
        /// ”дал¤ет текущий агрегат
        /// </summary>
        private void avButtonDeleteDetail_DisplayerRequested(object sender, ReferenceEventArgs e)
        {
            DialogResult result = MessageBox.Show("Do you really want to delete current component?",
                                                  //"Confirm deleting " + currentDetail.SerialNumber, MessageBoxButtons.YesNoCancel, //todo
                                                  "Confirm deleting " + currentDetail.PartNumber, MessageBoxButtons.YesNoCancel,
                                                  MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);

            if (result == DialogResult.Yes)
            {
                try
                {
                    if (currentDetail is TemplateDetail)
                    {
                        TemplateBaseDetail containingDetail = (TemplateBaseDetail)currentDetail.Parent;
                        containingDetail.Remove(currentDetail);
                    }
                    else
                    {
                        TemplateAircraft containingAircraft = (TemplateAircraft)currentDetail.Parent;
                        containingAircraft.RemoveBaseDetail((TemplateBaseDetail)currentDetail);
                    }
                    MessageBox.Show("Component was deleted successfully", (string)new TermsProvider()["SystemName"],
                                    MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                catch (Exception ex)
                {
                    Program.Provider.Logger.Log("Error while deleting data", ex); e.Cancel = true;
                }
            }
            else
            {
                e.Cancel = true;
            }
        }
 /// <summary>
 /// Обновляет данные
 /// </summary>
 public void UpdateInformation()
 {
     if (currentAircraft is Aircraft)
     {
         Aircraft aircraft = (Aircraft)currentAircraft;
         if (aircraft.ConditionState == DirectiveConditionState.NotSatisfactory)
         {
             Status = Statuses.NotSatisfactory;
         }
         else if (aircraft.ConditionState == DirectiveConditionState.Notify)
         {
             Status = Statuses.Notify;
         }
         else
         {
             Status = Statuses.Satisfactory;
         }
         Text = aircraft.RegistrationNumber;
     }
     else
     {
         TemplateAircraft aircraft = (TemplateAircraft)currentAircraft;
         Status = Statuses.Satisfactory;
         Text   = aircraft.Model;
     }
 }
예제 #6
0
 /// <summary>
 /// Создается новый объект отображения шаблонного ВС
 /// </summary>
 /// <param name="currentItem">Отображаемый объект</param>
 public TemplateAircraftStateItem(TemplateAircraft currentItem)
 {
     if (currentItem == null)
     {
         throw new ArgumentNullException("currentItem");
     }
     CurrentItem = currentItem;
 }
예제 #7
0
 /// <summary>
 /// Создается экзымпляр класс DetailFilterSelection с заданием воздушного судна
 /// </summary>
 /// <param name="curentAircraft">Воздушное судно</param>
 public TemplateDetailFilterSelection(TemplateAircraft curentAircraft) : this()
 {
     if (curentAircraft == null)
     {
         throw new ArgumentNullException("curentAircraft", "Can't be null");
     }
     this.curentAircraft = curentAircraft;
 }
예제 #8
0
        public Vehicle(TemplateAircraft templateAircraft)
        {
            ItemId = -1;
            SmartCoreObjectType = SmartCoreType.Aircraft;

            RegistrationNumber = templateAircraft.RegistrationNumber;
            Model          = templateAircraft.Model;
            CockpitSeating = templateAircraft.CockpitSeating;
        }
 ///<summary>
 /// Создается объект, описывающий отображение добавления шаблонной директивы
 ///</summary>
 /// <param name="parentAircraft">Родительский объект, в который добавляется шаблонная директива</param>
 /// <param name="directiveType">Тип директивы</param>
 public DispatcheredTemplateDirectiveAdding(TemplateAircraft parentAircraft, DirectiveType directiveType) : this()
 {
     if (parentAircraft == null)
     {
         throw new ArgumentNullException("parentAircraft");
     }
     parentBaseDetail        = parentAircraft;
     this.directiveType      = directiveType;
     aircraftHeader.Aircraft = parentAircraft;
     ClearFields();
 }
 /// <summary>
 /// Создает элемент управления для отображения информации о шаблонном ВС в заголовке
 /// </summary>
 /// <param name="aircraft">Шаблонное ВС</param>
 /// <param name="templatesClicable">Открывать ли страницу с шаблонами при щелчке мыши на иконку и "Templates"</param>
 /// <param name="aircraftClicable">Открывать ли страницу с шаблонным ВС при щелчке мыши на модель ВС</param>
 public TemplateAircraftHeaderControl(TemplateAircraft aircraft, bool templatesClicable, bool aircraftClicable)
 {
     if (aircraft == null)
     {
         throw new ArgumentNullException("aircraft", "Cannot display Null aircraft");
     }
     InitializeComponents();
     Aircraft          = aircraft;
     OperatorClickable = templatesClicable;
     AircraftClickable = aircraftClicable;
 }
예제 #11
0
 ///<summary>
 /// Создаёт экземпляр элемента управления, отображающего список шаблонных директив
 ///</summary>
 ///<param name="currentAircraft">ВС, которому принадлежат шаблонные директивы</param>
 ///<param name="viewFilter">Фильтр</param>
 ///<param name="reportText">Текст отчета</param>
 public TemplateDirectiveListScreen(TemplateAircraft currentAircraft, TemplateDirectiveCollectionFilter viewFilter, string reportText)
 {
     if (currentAircraft == null)
     {
         throw new ArgumentNullException("currentAircraft");
     }
     this.currentAircraft = currentAircraft;
     this.viewFilter      = viewFilter;
     this.reportText      = reportText;
     InitializeComponent();
     UpdateElements();
 }
예제 #12
0
        /// <summary>
        /// Создает элемент управления для отображения информации о двигателях шаблонного ВС
        /// </summary>
        /// <param name="currentAircraft"></param>
        public TemplatePowerPlantsControl(TemplateAircraft currentAircraft)
        {
            if (currentAircraft.Engines.Length > 0)
            {
                Size = new Size((TemplateEngineControl.StandartSize.Width) * 4 + MARGIN * 3, TemplateEngineControl.StandartSize.Height);
            }
            else
            {
                Size = new Size(0, 0);
            }
            this.currentAircraft = currentAircraft;

            UpdateControl();
        }
예제 #13
0
        /// <summary>
        /// Создаёт экземпляр элемента управления, отображающего шаблонное воздушное судно
        /// </summary>
        ///<param name="aircraft">Шаблонное воздушное судно для отображения</param>
        public TemplateAircraftScreen(TemplateAircraft aircraft)
        {
            if (aircraft == null)
            {
                throw new ArgumentNullException("aircraft", "Cannot display null-aircraft");
            }
            ((DispatcheredTemplateAircraftScreen)this).InitComplition += AircraftScreen_InitComplition;
            currentAircraft = aircraft;
            HookEvents();
            InitializeComponent();

            UpdateHeader();
            UpdateAircraft(false);
        }
예제 #14
0
 ///<summary>
 /// Создает элемент управления для отображения списка шаблонных агрегатов
 ///</summary>
 ///<param name="currentAircraft">Шаблонное ВС, содержащее агрегаты</param>
 ///<param name="initialFilter">Фильтр отображения</param>
 /// <param name="additionalFilter">Дополнительный фильтр</param>
 public TemplateDetailListScreen(TemplateAircraft currentAircraft, TemplateDetailCollectionFilter initialFilter, TemplateDetailCollectionFilter additionalFilter)
 {
     ((DispatcheredTemplateDetailListScreen)this).InitComplition += ComponentStatusControl_InitComplition;
     if (currentAircraft == null)
     {
         throw new ArgumentNullException("currentAircraft");
     }
     this.currentAircraft = currentAircraft;
     PerformEvents(true);
     this.initialFilter = initialFilter;
     if (additionalFilter != null)
     {
         this.additionalFilter = additionalFilter;
     }
     filterSelection = new TemplateDetailFilterSelection(currentAircraft);
     InitializeComponent();
     UpdateElements();
 }
예제 #15
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="templateAircraft"></param>
        public Aircraft(TemplateAircraft templateAircraft)
        {
            ItemId = -1;
            SmartCoreObjectType = SmartCoreType.Aircraft;

            AircraftTypeId     = templateAircraft.AircraftTypeId;
            RegistrationNumber = templateAircraft.RegistrationNumber;
            SerialNumber       = templateAircraft.SerialNumber;
            LineNumber         = templateAircraft.LineNumber;
            VariableNumber     = templateAircraft.VariableNumber;
            Model                       = templateAircraft.Model;
            BasicEmptyWeight            = templateAircraft.BasicEmptyWeight;
            BasicEmptyWeightCargoConfig = templateAircraft.BasicEmptyWeightCargoConfig;
            OperationalEmptyWeight      = templateAircraft.OperationalEmptyWeight;
            CargoCapacityContainer      = templateAircraft.CargoCapacityContainer;
            Cruise                      = templateAircraft.Cruise;
            CruiseFuelFlow              = templateAircraft.CruiseFuelFlow;
            FuelCapacity                = templateAircraft.FuelCapacity;
            ManufactureDate             = templateAircraft.ManufactureDate;
            MaxCruiseAltitude           = templateAircraft.MaxCruiseAltitude;
            MaxLandingWeight            = templateAircraft.MaxLandingWeight;
            MaxPayloadWeight            = templateAircraft.MaxPayloadWeight;
            MSG = templateAircraft.MSG;
            MaxTakeOffCrossWeight = templateAircraft.MaxTakeOffCrossWeight;
            MaxTaxiWeight         = templateAircraft.MaxTaxiWeight;
            MaxZeroFuelWeight     = templateAircraft.MaxZeroFuelWeight;
            CockpitSeating        = templateAircraft.CockpitSeating;
            Galleys         = templateAircraft.Galleys;
            Lavatory        = templateAircraft.Lavatory;
            SeatingEconomy  = templateAircraft.SeatingEconomy;
            SeatingBusiness = templateAircraft.SeatingBusiness;
            SeatingFirst    = templateAircraft.SeatingFirst;
            Boiler          = templateAircraft.Boiler;
            Oven            = templateAircraft.Oven;
            AirStairsDoors  = templateAircraft.AirStairsDoors;
            Tanks           = templateAircraft.Tanks;
            // связанные объекты и коллекции
            // Frame = new BaseDetail { DetailType = DetailType.Frame };
        }
예제 #16
0
        private void buttonOK_Click(object sender, EventArgs e)
        {
            if (textBoxModel.Text == "")
            {
                SimpleBalloon.Show(textBoxModel, ToolTipIcon.Warning, "Value expected", "Please enter aircraft model");
                return;
            }
            DialogResult = DialogResult.OK;
            TemplateAircraft aircraft = new TemplateAircraft();

            aircraft.Model = textBoxModel.Text;
            aircraft.Type  = AircraftType;
            try
            {
                TemplateAircraftCollection.Instance.Add(aircraft);
                aircraft.AddAircraftFrame("", MaintenanceTypeCollection.Instance.UnknownType, "", "", "");
            }
            catch (Exception ex)
            {
                Program.Provider.Logger.Log("Error while saving data", ex);
                DialogResult = DialogResult.Cancel;
            }
            Close();
        }
예제 #17
0
 /// <summary>
 /// Создается отображение Component Ststus - списка шаблонных агрегатов для ВС
 /// </summary>
 /// <param name="currentAircraft"></param>
 /// <param name="initialFilter"></param>
 /// <param name="additionalFilter"></param>
 public DispatcheredTemplateDetailListScreen(TemplateAircraft currentAircraft, TemplateDetailCollectionFilter initialFilter, TemplateDetailCollectionFilter additionalFilter) : base(currentAircraft, initialFilter, additionalFilter)
 {
     detailContainer    = currentAircraft;
     this.initialFilter = initialFilter;
     Dock = DockStyle.Fill;
 }
예제 #18
0
 /// <summary>
 /// Создается отображение Component Ststus - списка шаблонных агрегатов для ВС
 /// </summary>
 /// <param name="currentAircraft"></param>
 public DispatcheredTemplateDetailListScreen(TemplateAircraft currentAircraft) : this(currentAircraft, new TemplateDetailCollectionFilter(new TemplateDetailFilter[1] { new TemplateAllDetailFilter() }))
 {
 }
예제 #19
0
        /// <summary>
        /// Создает элемент управления для отображения Interior Configuration шаблонного ВС
        /// </summary>
        public TemplateInteriorConfigurationControl(TemplateAircraft currentAircraft)
        {
            Size = new Size(TEXT_BOX_WIDTH + LABEL_WIDTH, 4 * TEXT_BOX_HEIGHT + 3 * HEIGHT_INTERVAL + TOP_MARGIN + BOTTOM_MARGIN);
            this.currentAircraft = currentAircraft;
            //
            // labelCockpitSeating
            //
            labelCockpitSeating.Location  = new Point(0, TOP_MARGIN);
            labelCockpitSeating.Font      = Css.OrdinaryText.Fonts.RegularFont;
            labelCockpitSeating.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            labelCockpitSeating.Size      = new Size(LABEL_WIDTH, TEXT_BOX_HEIGHT);
            labelCockpitSeating.Text      = "Cockpit Seating";
            labelCockpitSeating.TextAlign = ContentAlignment.MiddleLeft;
            //
            // labelGalleys
            //
            labelGalleys.Location  = new Point(0, labelCockpitSeating.Bottom + HEIGHT_INTERVAL);
            labelGalleys.Font      = Css.OrdinaryText.Fonts.RegularFont;
            labelGalleys.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            labelGalleys.Size      = new Size(LABEL_WIDTH, TEXT_BOX_HEIGHT);
            labelGalleys.Text      = "Galleys";
            labelGalleys.TextAlign = ContentAlignment.MiddleLeft;
            //
            // labelLavatory
            //
            labelLavatory.Location  = new Point(0, labelGalleys.Bottom + HEIGHT_INTERVAL);
            labelLavatory.Font      = Css.OrdinaryText.Fonts.RegularFont;
            labelLavatory.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            labelLavatory.Size      = new Size(LABEL_WIDTH, TEXT_BOX_HEIGHT);
            labelLavatory.Text      = "Lavatory";
            labelLavatory.TextAlign = ContentAlignment.MiddleLeft;
            //
            // labelSeatingCapacity
            //
            labelSeatingCapacity.Location  = new Point(0, labelLavatory.Bottom + HEIGHT_INTERVAL);
            labelSeatingCapacity.Font      = Css.OrdinaryText.Fonts.RegularFont;
            labelSeatingCapacity.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            labelSeatingCapacity.Size      = new Size(LABEL_WIDTH, TEXT_BOX_HEIGHT);
            labelSeatingCapacity.Text      = "Seating Capacity";
            labelSeatingCapacity.TextAlign = ContentAlignment.MiddleLeft;
            //
            // textBoxCockpitSeating
            //
            textBoxCockpitSeating.Location  = new Point(LABEL_WIDTH, TOP_MARGIN);
            textBoxCockpitSeating.BackColor = Color.White;
            textBoxCockpitSeating.Font      = Css.OrdinaryText.Fonts.RegularFont;
            textBoxCockpitSeating.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            textBoxCockpitSeating.Size      = new Size(TEXT_BOX_WIDTH, TEXT_BOX_HEIGHT);
            //
            // textBoxGalleys
            //
            textBoxGalleys.Location  = new Point(LABEL_WIDTH, textBoxCockpitSeating.Bottom + HEIGHT_INTERVAL);
            textBoxGalleys.BackColor = Color.White;
            textBoxGalleys.Font      = Css.OrdinaryText.Fonts.RegularFont;
            textBoxGalleys.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            textBoxGalleys.Size      = new Size(TEXT_BOX_WIDTH, TEXT_BOX_HEIGHT);
            //
            // textBoxLavatory
            //
            textBoxLavatory.Location  = new Point(LABEL_WIDTH, textBoxGalleys.Bottom + HEIGHT_INTERVAL);
            textBoxLavatory.BackColor = Color.White;
            textBoxLavatory.Font      = Css.OrdinaryText.Fonts.RegularFont;
            textBoxLavatory.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            textBoxLavatory.Size      = new Size(TEXT_BOX_WIDTH, TEXT_BOX_HEIGHT);
            //
            // textBoxSeatingCapacity
            //
            textBoxSeatingCapacity.Location  = new Point(LABEL_WIDTH, textBoxLavatory.Bottom + HEIGHT_INTERVAL);
            textBoxSeatingCapacity.BackColor = Color.White;
            textBoxSeatingCapacity.Font      = Css.OrdinaryText.Fonts.RegularFont;
            textBoxSeatingCapacity.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            textBoxSeatingCapacity.Size      = new Size(TEXT_BOX_WIDTH, TEXT_BOX_HEIGHT);

            Controls.Add(labelCockpitSeating);
            Controls.Add(labelGalleys);
            Controls.Add(labelLavatory);
            Controls.Add(labelSeatingCapacity);
            Controls.Add(textBoxCockpitSeating);
            Controls.Add(textBoxGalleys);
            Controls.Add(textBoxLavatory);
            Controls.Add(textBoxSeatingCapacity);

            UpdateControl();
        }
예제 #20
0
 /// <summary>
 /// Создает форму для переноса шаблона ВС в рабочую базу данных
 /// </summary>
 /// <param name="aircraft"></param>
 public TemplateAircraftAddToDataBaseForm(TemplateAircraft aircraft)
 {
     this.templateAircraft = aircraft;
     InitializeComponents();
     UpdateInformation();
 }
예제 #21
0
        /// <summary>
        /// Создает элемент управления для отображения информации о шаблонном ВС
        /// </summary>
        /// <param name="currentAircraft"></param>
        public TemplateAircraftGeneralDataScreen(TemplateAircraft currentAircraft)
        {
            this.currentAircraft = currentAircraft;
            BackColor            = Css.CommonAppearance.Colors.BackColor;
            Dock = DockStyle.Fill;
            aircraftHeaderControl = new TemplateAircraftHeaderControl(currentAircraft, true, true);
            //
            // aircraftControl
            //
            aircraftControl = new TemplateAircraftControl(currentAircraft);
            //
            // powerPlantsControl
            //
            powerPlantsControl = new TemplatePowerPlantsControl(currentAircraft);
            //
            // APUControl
            //
            APUControl = new TemplateAPUControl(currentAircraft.Apu);
            //
            // performanceDataControl
            //
            performanceDataControl = new TemplatePerformanceDataControl(currentAircraft);
            //
            // landingGearsControl
            //
            filter              = new TemplateLandingGearsFilter(true, true, true);
            collectionFilter    = new TemplateDetailCollectionFilter(currentAircraft.ContainedDetails, new TemplateDetailFilter[] { filter });
            landingGearsControl = new TemplateLandingGearsControl(collectionFilter.GatherDetails());

            /*      //
             * // maintenanceStatusControl
             * //
             * maintenanceStatusControl = new MaintenanceStatusControl();*/
            //
            // interiorConfigurationControl
            //
            interiorConfigurationControl = new TemplateInteriorConfigurationControl(currentAircraft);
            //
            // aircraftContainer
            //
            aircraftContainer.Caption       = "A. Aircraft";
            aircraftContainer.UpperLeftIcon = icons.GrayArrow;
            aircraftContainer.MainControl   = aircraftControl;
            aircraftContainer.Dock          = DockStyle.Top;
            aircraftContainer.TabIndex      = 1;
            //
            // powerPlantsContainer
            //
            powerPlantsContainer.Caption       = "B. Power Plants";
            powerPlantsContainer.UpperLeftIcon = icons.GrayArrow;
            powerPlantsContainer.MainControl   = powerPlantsControl;
            powerPlantsContainer.Dock          = DockStyle.Top;
            powerPlantsContainer.Extended      = false;
            powerPlantsContainer.TabIndex      = 2;
            //
            // APUContainer
            //
            APUContainer.Caption       = "C. Auxiliary Power Unit";
            APUContainer.UpperLeftIcon = icons.GrayArrow;
            APUContainer.MainControl   = APUControl;
            APUContainer.Dock          = DockStyle.Top;
            APUContainer.Extended      = false;
            APUContainer.TabIndex      = 3;
            //
            // performanceDataContainer
            //
            performanceDataContainer.Caption       = "D. Performance Data";
            performanceDataContainer.UpperLeftIcon = icons.GrayArrow;
            performanceDataContainer.MainControl   = performanceDataControl;
            performanceDataContainer.Dock          = DockStyle.Top;
            performanceDataContainer.Extended      = false;
            performanceDataContainer.TabIndex      = 4;
            //
            // landingGearsContainer
            //
            landingGearsContainer.Caption       = "E. Landing Gears";
            landingGearsContainer.UpperLeftIcon = icons.GrayArrow;
            landingGearsContainer.MainControl   = landingGearsControl;
            landingGearsContainer.Dock          = DockStyle.Top;
            landingGearsContainer.Extended      = false;
            landingGearsContainer.TabIndex      = 5;

            /*    //
             * // maintenanceStatusContainer
             * //
             * maintenanceStatusContainer.Caption = "F. Maintenance Status";
             * maintenanceStatusContainer.UpperLeftIcon = icons.GrayArrow;
             * maintenanceStatusContainer.MainControl = maintenanceStatusControl;
             * maintenanceStatusContainer.Dock = DockStyle.Top;
             * maintenanceStatusContainer.Extended = false;
             * maintenanceStatusContainer.TabIndex = 6;*/
            //
            // interiorConfigurationContainer
            //
            interiorConfigurationContainer.Caption       = "G. Interior Configuration";
            interiorConfigurationContainer.UpperLeftIcon = icons.GrayArrow;
            interiorConfigurationContainer.MainControl   = interiorConfigurationControl;
            interiorConfigurationContainer.Dock          = DockStyle.Top;
            interiorConfigurationContainer.Extended      = false;
            interiorConfigurationContainer.TabIndex      = 7;
            //
            // headerControl
            //
            headerControl.ContextActionControl.ShowPrintButton         = true;
            headerControl.ActionControl.ButtonEdit.TextMain            = "Save";
            headerControl.ActionControl.ButtonEdit.Icon                = icons.Save;
            headerControl.ActionControl.ButtonEdit.IconNotEnabled      = icons.SaveGray;
            headerControl.ActionControl.ButtonEdit.DisplayerRequested += ButtonSave_Click;
            headerControl.ActionControl.ButtonReload.Click            += ButtonReload_Click;
            headerControl.ContextActionControl.ShowPrintButton         = false;
            headerControl.Controls.Add(aircraftHeaderControl);
            headerControl.ActionControl.ShowEditButton = currentAircraft.HasPermission(Users.CurrentUser, DataEvent.Update);
            headerControl.TabIndex = 0;
            //
            // mainPanel
            //
            mainPanel.AutoScroll = true;
            mainPanel.Dock       = DockStyle.Fill;
            mainPanel.TabIndex   = 1;

            mainPanel.Controls.Add(interiorConfigurationContainer);
            //mainPanel.Controls.Add(maintenanceStatusContainer);
            mainPanel.Controls.Add(landingGearsContainer);
            mainPanel.Controls.Add(performanceDataContainer);
            if (currentAircraft.Apu != null)
            {
                mainPanel.Controls.Add(APUContainer);
            }
            if (currentAircraft.Engines.Length > 0)
            {
                mainPanel.Controls.Add(powerPlantsContainer);
            }
            mainPanel.Controls.Add(aircraftContainer);


            Controls.Add(mainPanel);
            Controls.Add(headerControl);
            Controls.Add(footerControl);
        }
예제 #22
0
 /// <summary>
 /// Создает элемент управления для отображения информации Maintenance Status в  шаблонах
 /// </summary>
 /// <param name="aircraft">Шаблонное ВС</param>
 public TemplateMaintenanceStatusScreen(TemplateAircraft aircraft)
 {
     this.aircraft = aircraft;
     InitializeComponent();
     UpdateInformation();
 }
예제 #23
0
        /// <summary>
        /// —оздает контрол дл¤ выбора базового агрегата дл¤ добавлени¤
        /// </summary>
        /// <param name="parentDetail"></param>
        public TemplateAddNewComponentControl(ITemplateDetailContainer parentDetail)
        {
            SuspendLayout();
            flowLayoutPanel1   = new FlowLayoutPanel();
            labelBaseComponent = new Label();
            //
            // labelBaseComponent
            //
            labelBaseComponent.ForeColor = Css.OrdinaryText.Colors.ForeColor;
            labelBaseComponent.Font      = Css.OrdinaryText.Fonts.RegularFont;
            labelBaseComponent.Location  = new Point(10, 20);
            labelBaseComponent.Name      = "labelBaseComponent";
            labelBaseComponent.Size      = new Size(150, 26);
            labelBaseComponent.TabIndex  = 0;
            labelBaseComponent.Text      = "Base component:";
            labelBaseComponent.TextAlign = ContentAlignment.MiddleLeft;
            //
            // flowLayoutPanel1
            //
            flowLayoutPanel1.Location      = new Point(labelBaseComponent.Right, labelBaseComponent.Top);
            flowLayoutPanel1.FlowDirection = FlowDirection.TopDown;
            flowLayoutPanel1.Size          = new Size(900, 60);
            flowLayoutPanel1.TabIndex      = 0;
            //
            // AddNewComponentControl
            //
            BackColor           = Css.CommonAppearance.Colors.BackColor;
            AutoScaleDimensions = new SizeF(6F, 13F);
            AutoScaleMode       = AutoScaleMode.Font;
            Controls.Add(labelBaseComponent);
            Controls.Add(flowLayoutPanel1);
            Name = "AddNewComponentControl";
            Size = new Size(900, 140);
            ResumeLayout(false);
            PerformLayout();

            if (parentDetail != null)
            {
                TemplateAircraft parentAircraft = null;
                if (parentDetail is TemplateAircraft)
                {
                    parentAircraft = (TemplateAircraft)parentDetail;
                }
                if (parentDetail is TemplateBaseDetail)
                {
                    parentAircraft = ((TemplateBaseDetail)parentDetail).ParentAircraft;
                }
                if (parentAircraft != null)
                {
                    TemplateBaseDetail[] baseDetails = parentAircraft.BaseDetails;
                    radioButtonBaseDetail = new RadioButton[baseDetails.Length];
                    int length = baseDetails.Length;
                    for (int i = 0; i < length; i++)
                    {
                        TemplateBaseDetail current = baseDetails[i];
                        radioButtonBaseDetail[i]           = new RadioButton();
                        radioButtonBaseDetail[i].AutoSize  = true;
                        radioButtonBaseDetail[i].Cursor    = Cursors.Hand;
                        radioButtonBaseDetail[i].FlatStyle = FlatStyle.Flat;
                        radioButtonBaseDetail[i].Font      =
                            new Font(Css.OrdinaryText.Fonts.RegularFont, FontStyle.Underline);
                        radioButtonBaseDetail[i].ForeColor = Css.SimpleLink.Colors.LinkColor;
                        radioButtonBaseDetail[i].Location  = new Point(labelBaseComponent.Location.X + labelBaseComponent.Width + 25, i * 25);
                        radioButtonBaseDetail[i].Size      = new Size(73, 22);
                        radioButtonBaseDetail[i].TabIndex  = i;
                        radioButtonBaseDetail[i].TabStop   = true;
                        radioButtonBaseDetail[i].Tag       = baseDetails[i];
                        radioButtonBaseDetail[i].Text      = current.DetailType.FullName + " " + current.PartNumber;
                        radioButtonBaseDetail[i].UseVisualStyleBackColor = true;
                        radioButtonBaseDetail[i].CheckedChanged         += CheckedChangedByAnyCheckBox;
                        if (parentDetail == current)
                        {
                            radioButtonBaseDetail[i].Checked = true;
                        }
                        flowLayoutPanel1.Controls.Add(radioButtonBaseDetail[i]);
                    }
                }
                if (parentDetail is TemplateAircraft)
                {
                    radioButtonBaseDetail[0].Checked = true;
                }
            }
        }
예제 #24
0
 /// <summary>
 /// Создает форму для добавления базового агрегата в шаблонное ВС
 /// </summary>
 public TemplateAddBaseDetailForm(TemplateAircraft currentAircraft)
 {
     this.currentAircraft = currentAircraft;
     InitializeComponent();
     Initialize();
 }
예제 #25
0
 /// <summary>
 /// Создает элемент управления для отображения кнопок шасси
 /// </summary>
 /// <param name="aircraft">ВС, которому принадлежат шасси</param>
 public TemplateLandingGearsButtonsControl(TemplateAircraft aircraft)
 {
     currentAircraft = aircraft;
     InitializeComponent();
     UpdateInformation();
 }
 /// <summary>
 /// Создает элемент управления для отображения информации о шаблонном ВС в заголовке
 /// </summary>
 /// <param name="aircraft">Шаблонное ВС</param>
 public TemplateAircraftHeaderControl(TemplateAircraft aircraft) : this(aircraft, false, false)
 {
 }
 /// <summary>
 /// Создает элемент управления для отображения информации о ВС
 /// </summary>
 public DispatcheredTemplateAircraftGeneralDataScreen(TemplateAircraft currentAircraft) : base(currentAircraft)
 {
     Dock = DockStyle.Fill;
 }
 /// <summary>
 /// Создает элемент управления для отображения информации о шаблонном ВС в заголовке
 /// </summary>
 /// <param name="aircraft">Шаблонное ВС</param>
 /// <param name="templatesClicable">Открывать ли страницу с шаблонами при щелчке мыши на иконку и "Templates"</param>
 public TemplateAircraftHeaderControl(TemplateAircraft aircraft, bool templatesClicable) : this(aircraft, templatesClicable, false)
 {
 }
예제 #29
0
 /// <summary>
 /// Создается элемент - отображение SSID директив для базового агрегата
 /// </summary>
 /// <param name="currentItem">ВС, для которого отображаются директивы</param>
 public DispatcheredTemplateSSIDDirectiveListScreen(TemplateAircraft currentItem) : base(currentItem)
 {
 }
 /// <summary>
 /// Создает элемент управления для отображения информации Maintenance Status в  шаблонах
 /// </summary>
 /// <param name="aircraft">Шаблонное ВС</param>
 public DispatcheredTemplateMaintenanceStatusScreen(TemplateAircraft aircraft) : base(aircraft)
 {
     this.aircraft = aircraft;
     Dock          = DockStyle.Fill;
 }