private void linkLabelJobCard_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { MaintenanceJobCardForm form; if (currentDirective.JobCard == null) { form = new MaintenanceJobCardForm(currentDirective); } else { form = new MaintenanceJobCardForm(currentDirective.JobCard); } form.ShowDialog(); }
private void WorkPackageListView_DisplayerRequested(object sender, ReferenceEventArgs e) { if (SelectedItem is NonRoutineJob) { e.Cancel = true; nonRoutineJobBeforeSaving = (NonRoutineJob)SelectedItem; NonRoutineJobForm form = new NonRoutineJobForm(nonRoutineJobBeforeSaving); form.Saved += form_Saved; form.ShowDialog(); } else if (SelectedItem is JobCard) { e.Cancel = true; jobCardBeforeSaving = (JobCard)SelectedItem; MaintenanceJobCardForm form = new MaintenanceJobCardForm(jobCardBeforeSaving); form.Saved += formJobCard_Saved; form.ShowDialog(); } else if (SelectedItem is AbstractDetail || SelectedItem is DetailDirective) { AbstractDetail detail; if (SelectedItem is DetailDirective) { detail = (AbstractDetail)SelectedItem.Parent; } else { detail = (AbstractDetail)SelectedItem; } e.TypeOfReflection = ReflectionTypes.DisplayInNew; if (detail is Detail || detail is DetailReal)//todo { e.DisplayerText = ((Aircraft)detail.Parent.Parent).RegistrationNumber + ". Component SN " + detail.SerialNumber; } else { e.DisplayerText = ((Aircraft)detail.Parent).RegistrationNumber + ". Component SN " + detail.SerialNumber; } e.RequestedEntity = new DispatcheredDetailScreen(detail); } else { BaseDetailDirective directive = (BaseDetailDirective)SelectedItem; e.TypeOfReflection = ReflectionTypes.DisplayInNew; string regNumber = ""; if (SelectedItem.Parent is AircraftFrame) { regNumber = SelectedItem.Parent.ToString(); } else { if ((SelectedItem.Parent).Parent is Aircraft) { regNumber = ((Aircraft)((SelectedItem.Parent).Parent)).RegistrationNumber + ". " + SelectedItem.Parent; } } e.DisplayerText = regNumber + ". " + directive.DirectiveType.CommonName + ". " + directive.Title; if (directive is EngineeringOrderDirective) { e.RequestedEntity = new DispatcheredEngineeringOrderDirectiveScreen((EngineeringOrderDirective)directive); } else if (directive.DirectiveType == DirectiveTypeCollection.Instance.OutOffPhaseDirectiveType) { e.RequestedEntity = new DispatcheredOutOffPhaseReferenceScreen(directive); } else if (directive.DirectiveType == DirectiveTypeCollection.Instance.CPCPDirectiveType) { e.RequestedEntity = new DispatcheredCPCPDirectiveScreen(directive); } else { e.RequestedEntity = new DispatcheredDirectiveScreen(directive); } } }