private void ShowAllResults(bool showNotFoundError) { panel3.Visible = false; // Patient Data #region ResultControl FemurLengthControl = new ResultControl(report.PatientData.FemurLength, showNotFoundError, this); GestAgeControl = new ResultControl(report.PatientData.GestationalAge, showNotFoundError, this, FemurLengthControl); GestationAgePanel.Controls.Add(GestAgeControl); PatientIDPanel.Controls.Add(new StringFieldControl(report.PatientData.PatientID)); PatientNamePanel.Controls.Add(new StringFieldControl(report.PatientData.PatientName)); StudyDatePanel.Controls.Add(new DateFieldControl(report.PatientData.StudyDate, UpdateGAge)); FemurLengthPanel.Controls.Add(FemurLengthControl); AgeControl = new ResultControl(report.PatientData.PatientAge, showNotFoundError, this); AgePanel.Controls.Add(AgeControl); DOBPanel.Controls.Add(new DateFieldControl(report.PatientData.PatientDOB, UpdateAge)); EstimatedDueDatePanel.Controls.Add(new DateFieldControl(report.PatientData.EstimatedDueDate, UpdateGAge)); ReasonForStudyPanel.Controls.Add(new StringFieldControl(report.PatientData.ReasonForStudy)); ReferringPhysicianPanel.Controls.Add(new StringFieldControl(report.PatientData.ReferringPhysician)); EchoTypePanel.Controls.Add(new StringDropDownControl(report.PatientData.EchoType)); ReportingDoctorPanel.Controls.Add(new StringDropDownControl(report.PatientData.ReportingDoctor)); #endregion // Situs and Systemic Veins #region SitusPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.Situs)); SystemicVeinsPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.SystemicVeins)); #endregion // Atria #region NormalAtriaPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.AtriaSize)); DilatedLeftAtriumPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.DilatedAtriaLeft)); DilatedRightAtriumPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.DilatedAtriaRight)); HypoplasticLeftAtriumPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.HypoplasticAtriaLeft)); HypoplasticRightAtriumPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.HypoplasticAtriaRight)); #endregion // AV Valves #region AVConnectionPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.AVConnection)); MV1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.MitralValve1)); MV2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.MitralValve2)); MV3Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.MitralValve3)); MitralAtresiaPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.MitralValveAtresia)); LAVV1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.LAVV1)); LAVV2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.LAVV2)); LAVV3Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.LAVV3)); MVAnnulusPanel.Controls.Add(new ResultControl(report.Results["Mitral valve annulus"], showNotFoundError, this, GestAgeControl)); MVAnnulusPanel2.Controls.Add(new ResultControl(report.Results["Mitral valve annulus"], showNotFoundError, this, GestAgeControl)); TVAnnulusPanel.Controls.Add(new ResultControl(report.Results["Tricuspid valve annulus"], showNotFoundError, this, GestAgeControl)); TVAnnulusPanel2.Controls.Add(new ResultControl(report.Results["Tricuspid valve annulus"], showNotFoundError, this, GestAgeControl)); TVRegurgVelPanel.Controls.Add(new ResultControl(report.Results["Tricuspid valve regurgitation peak velocity"], showNotFoundError, this, GestAgeControl)); TVRegurgVelPanel2.Controls.Add(new ResultControl(report.Results["Tricuspid valve regurgitation peak velocity"], showNotFoundError, this, GestAgeControl)); Tri1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.TriscupidValve1)); Tri2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.TriscupidValve2)); Tri3Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.TriscupidValve3)); TriscuspidAtresiaPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.TriscupidValveAtresia)); RAVV1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.RAVV1)); RAVV2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.RAVV2)); #endregion // Ventricles #region VentricleSizeFunctionPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.VentricleFunction)); VentricularHypertrophyPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.VentricularHypertrophy)); HeartRatePanel.Controls.Add(new ResultControl(report.Results["Heart Rate"], showNotFoundError, this, GestAgeControl)); HeartRatePanel2.Controls.Add(new ResultControl(report.Results["Heart Rate"], showNotFoundError, this, GestAgeControl)); DilatedLVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.DilatedLV)); HypertrophyLVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.HypertrophiedLV)); ReducedLVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.ReducedLVFunction)); LVHypoplasticPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.HypoplasticAtriaLeft)); LVWallPanel.Controls.Add(new ResultControl(report.Results["LV wall thickness"], showNotFoundError, this, GestAgeControl)); LVWallPanel2.Controls.Add(new ResultControl(report.Results["LV wall thickness"], showNotFoundError, this, GestAgeControl)); SeptalWallPanel.Controls.Add(new ResultControl(report.Results["Septal wall thickness"], showNotFoundError, this, GestAgeControl)); SeptalWallPanel2.Controls.Add(new ResultControl(report.Results["Septal wall thickness"], showNotFoundError, this, GestAgeControl)); LVEDDPanel.Controls.Add(new ResultControl(report.Results["LV EDD"], showNotFoundError, this, GestAgeControl)); LVEDDPanel2.Controls.Add(new ResultControl(report.Results["LV EDD"], showNotFoundError, this, GestAgeControl)); LVLengthPanel.Controls.Add(new ResultControl(report.Results["LV length"], showNotFoundError, this, GestAgeControl)); LVLengthPanel2.Controls.Add(new ResultControl(report.Results["LV length"], showNotFoundError, this, GestAgeControl)); LVIVRTPanel.Controls.Add(new ResultControl(report.Results["LV IVRT"], showNotFoundError, this, GestAgeControl)); LVIVRTPanel2.Controls.Add(new ResultControl(report.Results["LV IVRT"], showNotFoundError, this, GestAgeControl)); MyoPIPanel.Controls.Add(new ResultControl(report.Results["Myocardial performance index"], showNotFoundError, this, GestAgeControl)); MyoPIPanel2.Controls.Add(new ResultControl(report.Results["Myocardial performance index"], showNotFoundError, this, GestAgeControl)); DilatedRVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.DilatedRV)); HypertrophyRVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.HypertrophiedRV)); ReducedRVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.ReducedRVFunction)); HypoplasticRVPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.HypoplasticAtriaRight)); RVWallPanel.Controls.Add(new ResultControl(report.Results["RV wall thickness"], showNotFoundError, this, GestAgeControl)); RVWallPanel2.Controls.Add(new ResultControl(report.Results["RV wall thickness"], showNotFoundError, this, GestAgeControl)); RVEDDPanel.Controls.Add(new ResultControl(report.Results["RV EDD"], showNotFoundError, this, GestAgeControl)); RVEDDPanel2.Controls.Add(new ResultControl(report.Results["RV EDD"], showNotFoundError, this, GestAgeControl)); RVLengthPanel.Controls.Add(new ResultControl(report.Results["RV length"], showNotFoundError, this, GestAgeControl)); RVLengthPanel2.Controls.Add(new ResultControl(report.Results["RV length"], showNotFoundError, this, GestAgeControl)); VentricularSeptumPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.IntactVentricularSeptum)); VSD1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.VSD1)); VSD2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.VSD2)); VSD3Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.VSD3)); VSDDimensionPanel.Controls.Add(new ResultControl(report.Results["Ventricular septal defect dimension"], showNotFoundError, this, GestAgeControl)); VSDDimensionPanel2.Controls.Add(new ResultControl(report.Results["Ventricular septal defect dimension"], showNotFoundError, this, GestAgeControl)); CardioCircumferencePanel.Controls.Add(new ResultControl(report.Results["Cardiothoracic circumference ratio"], showNotFoundError, this, GestAgeControl)); CardioCircumferencePanel2.Controls.Add(new ResultControl(report.Results["Cardiothoracic circumference ratio"], showNotFoundError, this, GestAgeControl)); CardioAreaPanel.Controls.Add(new ResultControl(report.Results["Cardiothoracic area ratio"], showNotFoundError, this, GestAgeControl)); CardioAreaPanel2.Controls.Add(new ResultControl(report.Results["Cardiothoracic area ratio"], showNotFoundError, this, GestAgeControl)); MechPRPanel.Controls.Add(new ResultControl(report.Results["Mechanical PR interval"], showNotFoundError, this, GestAgeControl)); MechPRPanel2.Controls.Add(new ResultControl(report.Results["Mechanical PR interval"], showNotFoundError, this, GestAgeControl)); #endregion // Outlets #region VentriculoarterialPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.Ventriculoarterial)); OutflowTractsPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.OutflowTracts)); AorticValve1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.AorticValve1)); AorticValve2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.AorticValve2)); AorticValve3Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.AorticValve3)); AVAnnulusPanel.Controls.Add(new ResultControl(report.Results["Aortic valve annulus"], showNotFoundError, this, GestAgeControl)); AVAnnulusPanel2.Controls.Add(new ResultControl(report.Results["Aortic valve annulus"], showNotFoundError, this, GestAgeControl)); AVVelocityPanel.Controls.Add(new ResultControl(report.Results["Aortic valve peak velocity"], showNotFoundError, this, GestAgeControl)); AVVelocityPanel2.Controls.Add(new ResultControl(report.Results["Aortic valve peak velocity"], showNotFoundError, this, GestAgeControl)); AortaVSDPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.AortaVSDOvveride)); LossSinotubularPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.LossSinotubularJunction)); PV1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.PulmonaryValve1)); PV2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.PulmonaryValve2)); PV3Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.PulmonaryValve3)); PVAnnulusPanel.Controls.Add(new ResultControl(report.Results["Pulmonary valve annulus"], showNotFoundError, this, GestAgeControl)); PVAnnulusPanel2.Controls.Add(new ResultControl(report.Results["Pulmonary valve annulus"], showNotFoundError, this, GestAgeControl)); PVVelocityPanel.Controls.Add(new ResultControl(report.Results["Pulmonary valve peak velocity"], showNotFoundError, this, GestAgeControl)); PVVelocityPanel2.Controls.Add(new ResultControl(report.Results["Pulmonary valve peak velocity"], showNotFoundError, this, GestAgeControl)); #endregion // Great Arteries #region LeftAorticArch1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.LeftAorticArch1)); LeftAorticArch2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.LeftAorticArch2)); AscendingAortaPanel.Controls.Add(new ResultControl(report.Results["Ascending aorta"], showNotFoundError, this, GestAgeControl)); AscendingAortaPanel2.Controls.Add(new ResultControl(report.Results["Ascending aorta"], showNotFoundError, this, GestAgeControl)); AorticIsthmus3VVPanel.Controls.Add(new ResultControl(report.Results["Aortic isthmus 3VV"], showNotFoundError, this, GestAgeControl)); AorticIsthmus3VVPanel2.Controls.Add(new ResultControl(report.Results["Aortic isthmus 3VV"], showNotFoundError, this, GestAgeControl)); AorticIsthmusSaggitalPanel.Controls.Add(new ResultControl(report.Results["Aortic isthmus sagittal"], showNotFoundError, this, GestAgeControl)); AorticIsthmusSaggitalPanel2.Controls.Add(new ResultControl(report.Results["Aortic isthmus sagittal"], showNotFoundError, this, GestAgeControl)); RightAorticArch1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.RightAorticArch1)); RightAorticArch2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.RightAorticArch2)); BranchPulmArteryPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.BranchPulmonaryArteries)); MainPulmArteryPanel.Controls.Add(new ResultControl(report.Results["Main pulmonary artery"], showNotFoundError, this, GestAgeControl)); MainPulmArteryPanel2.Controls.Add(new ResultControl(report.Results["Main pulmonary artery"], showNotFoundError, this, GestAgeControl)); RightPulmArteryPanel.Controls.Add(new ResultControl(report.Results["Right pulmonary artery"], showNotFoundError, this, GestAgeControl)); RightPulmArteryPanel2.Controls.Add(new ResultControl(report.Results["Right pulmonary artery"], showNotFoundError, this, GestAgeControl)); LeftPulmArteryPanel.Controls.Add(new ResultControl(report.Results["Left pulmonary artery"], showNotFoundError, this, GestAgeControl)); LeftPulmArteryPanel2.Controls.Add(new ResultControl(report.Results["Left pulmonary artery"], showNotFoundError, this, GestAgeControl)); DuctusArteriosus1Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.DuctusArteriosus1)); DuctusArteriosus2Panel.Controls.Add(new StringDropDownControl(report.ReportingOptions.DuctusArteriosus2)); DuctusArteriosus3VVPanel.Controls.Add(new ResultControl(report.Results["Ductus arteriosus 3VV"], showNotFoundError, this, GestAgeControl)); DuctusArteriosus3VVPanel2.Controls.Add(new ResultControl(report.Results["Ductus arteriosus 3VV"], showNotFoundError, this, GestAgeControl)); DuctusArteriosusSaggitalPanel.Controls.Add(new ResultControl(report.Results["Ductus arteriosus sagittal"], showNotFoundError, this, GestAgeControl)); DuctusArteriosusSaggitalPanel2.Controls.Add(new ResultControl(report.Results["Ductus arteriosus sagittal"], showNotFoundError, this, GestAgeControl)); DuctusArteriosusVelPanel.Controls.Add(new ResultControl(report.Results["Ductus arteriosus peak velocity"], showNotFoundError, this, GestAgeControl)); DuctusArteriosusVelPanel2.Controls.Add(new ResultControl(report.Results["Ductus arteriosus peak velocity"], showNotFoundError, this, GestAgeControl)); DescendingAortaPanel.Controls.Add(new ResultControl(report.Results["Descending aorta"], showNotFoundError, this, GestAgeControl)); DescendingAortaPanel2.Controls.Add(new ResultControl(report.Results["Descending aorta"], showNotFoundError, this, GestAgeControl)); #endregion // Pulmonary Veins #region PulmonaryVeinsPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.PulmonaryVeins)); #endregion // Other #region NoPerciardialEffusionPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.NoPerciardialEffusion)); PerciardialEffusionPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.PerciardialEffusion)); FetalHydropsPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.NoFetalHydrops)); PleuralEffusionPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.PleuralEffusion)); AscitesPanel.Controls.Add(new BoolCheckControl(report.ReportingOptions.Ascites)); #endregion // Conclusion #region ConclusionPanel.Controls.Add(new StringDropDownControl(report.ReportingOptions.Conclusion)); #endregion panel3.AutoScrollPosition = new Point(0, 0); panel3.Visible = true; }
//public ResultControl(string name, string unitShortHand, double value = 0, bool showNotFoundError = true, Action OnUpdate = null) : this(new Result(name, unitShortHand, value: value), showNotFoundError, OnUpdate) { //} public ResultControl(Result result, bool showNotFoundError, MainForm form = null, ResultControl hook = null) { InitializeComponent(); FLorGABox.Items.AddRange(new[] { "GA", "FL" }); if (result.Formula != null) { FLorGABox.SelectedIndex = 0; FLorGABox.Visible = result.Formula.HasFLGASwitch(); } else { FLorGABox.Visible = false; } FLorGABox.Enabled = FLorGABox.Visible; if (hook != null) { hook.OnUpdate += UpdateValue; } this.Result = result; this.Form = form; if (result.AltName.Length != 0) { ResultTitleLabel.Text = result.AltName; } else { ResultTitleLabel.Text = result.Name; } ResultUnitLabel.Text = result.UnitShorthand; ZScoreLabel.Text = ""; Anomaly.Text = ""; if (Form.ResultControls.TryGetValue(Result.Name, out var x)) { x.Add(this); } else { Form.ResultControls.Add(Result.Name, new List <ResultControl>() { this }); } UpdateValue(result.Value); }