public EditDriftTimePredictorDlg(IEnumerable <IonMobilityPredictor> existing) { _existing = existing; _showRegressions = true; InitializeComponent(); foreach (eIonMobilityUnits units in Enum.GetValues(typeof(eIonMobilityUnits))) { if (units != eIonMobilityUnits.none) // Don't present "none" as an option { comboBoxIonMobilityUnits.Items.Add(IonMobilityFilter.IonMobilityUnitsL10NString(units)); } } _smallMoleculeUI = Program.MainWindow.Document.HasSmallMolecules || Program.MainWindow.ModeUI != SrmDocument.DOCUMENT_TYPE.proteomic; if (_smallMoleculeUI) { gridMeasuredDriftTimes.Columns[COLUMN_SEQUENCE].HeaderText = Resources.EditDriftTimePredictorDlg_EditDriftTimePredictorDlg_Molecule; gridMeasuredDriftTimes.Columns[COLUMN_CHARGE].HeaderText = Resources.EditDriftTimePredictorDlg_EditDriftTimePredictorDlg_Adduct; } var targetResolver = TargetResolver.MakeTargetResolver(Program.ActiveDocumentUI); MeasuredDriftTimeSequence.TargetResolver = targetResolver; // TODO: ion mobility libraries are more complex than initially thought - leave these conversions to the mass spec vendors for now labelIonMobilityLibrary.Visible = comboLibrary.Visible = false; Icon = Resources.Skyline; _driverIonMobilityLibraryListComboDriver = new SettingsListComboDriver <IonMobilityLibrarySpec>(comboLibrary, Settings.Default.IonMobilityLibraryList); _driverIonMobilityLibraryListComboDriver.LoadList(null); UpdateControls(); }
public void UseResults() { CheckDisposed(); var document = Program.ActiveDocumentUI; if (!document.Settings.HasResults) { MessageDlg.Show(this, Resources.CalibrateIrtDlg_UseResults_The_document_must_contain_results_to_calibrate_a_standard); return; } var targetResolver = TargetResolver.MakeTargetResolver(document); calibratePeptides.TargetResolver = targetResolver; int count = document.Molecules.Count(nodePep => nodePep.SchedulingTime.HasValue); if (count > 20) { using (var dlg = new AddIrtStandardsDlg(count)) { if (dlg.ShowDialog(this) != DialogResult.OK) { return; } count = dlg.StandardCount; } } _gridViewDriver.Recalculate(document, count); }
private bool SetCalibrationPeptides(ICollection <PeptideDocNode> exclude) { CheckDisposed(); var document = Program.ActiveDocumentUI; if (!document.Settings.HasResults) { MessageDlg.Show(this, Resources.CalibrateIrtDlg_UseResults_The_document_must_contain_results_to_calibrate_a_standard); return(false); } var targetResolver = TargetResolver.MakeTargetResolver(document); _gridViewDriver.TargetResolver = targetResolver; var peptides = document.Molecules.Where(nodePep => nodePep.SchedulingTime.HasValue).ToArray(); var count = peptides.Length; if (exclude != null && exclude.Count > 0) { peptides = peptides.Where(nodePep => !exclude.Contains(nodePep)).ToArray(); count = peptides.Length; if (count < MIN_STANDARD_PEPTIDES) { MessageDlg.Show(this, ModeUIAwareStringFormat( Resources.CalibrateIrtDlg_SetCalibrationPeptides_The_document_contains_results_for__0__peptide_s__not_in_this_standard__which_is_less_than_the_minimum_requirement_of__1__to_calibrate_a_standard_, count, MIN_STANDARD_PEPTIDES)); return(false); } else if (count < MIN_SUGGESTED_STANDARD_PEPTIDES) { if (MultiButtonMsgDlg.Show(this, ModeUIAwareStringFormat( Resources.CalibrateIrtDlg_SetCalibrationPeptides_The_document_only_contains_results_for__0__peptide_s__not_in_this_standard__It_is_recommended_to_use_at_least__1__peptides_to_calibrate_a_standard__Are_you_sure_you_wish_to_continue_, count, MIN_SUGGESTED_STANDARD_PEPTIDES), MultiButtonMsgDlg.BUTTON_YES, MultiButtonMsgDlg.BUTTON_NO, false) != DialogResult.Yes) { return(false); } } } if (count > 20) { using (var dlg = new AddIrtStandardsDlg(count, exclude != null && exclude.Count > 0)) { if (dlg.ShowDialog(this) != DialogResult.OK) { return(false); } count = dlg.StandardCount; } } _gridViewDriver.Recalculate(document, count, exclude); return(true); }
protected override void DoTest() { var documentPath = TestFilesDir.GetTestPath("TargetResolverTest.sky"); TargetResolver resolver; RunUI(() => { SkylineWindow.OpenFile(documentPath); resolver = TargetResolver.MakeTargetResolver(SkylineWindow.DocumentUI); var target = resolver.ResolveTarget("Glc(04)"); // Find by name Assert.AreEqual("Glc(04)", target.DisplayName); target = resolver.ResolveTarget("ZXPLRDFHBYIQOX-BTBVOZEKSA-N"); // Find by InChiKey Assert.AreEqual("Glc(04)", target.DisplayName); target = resolver.ResolveTarget("PEPTIDER"); // Find by sequence Assert.AreEqual("PEPTIDER", target.DisplayName); }); }
public bool SetCalibrationPeptides() { CheckDisposed(); var document = Program.ActiveDocumentUI; if (!document.Settings.HasResults) { MessageDlg.Show(this, Resources.CalibrateIrtDlg_UseResults_The_document_must_contain_results_to_calibrate_a_standard); return(false); } var targetResolver = TargetResolver.MakeTargetResolver(document); _gridViewDriver.TargetResolver = targetResolver; var docTargets = document.Molecules.Where(nodePep => nodePep.SchedulingTime.HasValue).Select(nodePep => nodePep.ModifiedTarget).Distinct().ToArray(); var count = docTargets.Length; // If calibrating against another standard, exclude peptides in that standard var excludePeps = SelectedRegressionOption?.MatchedRegressionPeptides?.Select(match => match.Item2.ModifiedTarget).ToHashSet(); var exclude = excludePeps != null && excludePeps.Count > 0; if (exclude) { docTargets = docTargets.Where(target => !excludePeps.Contains(target)).ToArray(); count = docTargets.Length; } if (count < MIN_STANDARD_PEPTIDES) { MessageDlg.Show(this, ModeUIAwareStringFormat(!exclude ? Resources.CalibrateIrtDlg_UseResults_The_document_contains_results_for__0__peptides__which_is_less_than_the_minimum_requirement_of__1__to_calibrate_a_standard_ : Resources.CalibrateIrtDlg_SetCalibrationPeptides_The_document_contains_results_for__0__peptide_s__not_in_this_standard__which_is_less_than_the_minimum_requirement_of__1__to_calibrate_a_standard_, count, MIN_STANDARD_PEPTIDES)); return(false); } else if (count < MIN_SUGGESTED_STANDARD_PEPTIDES) { if (MultiButtonMsgDlg.Show(this, ModeUIAwareStringFormat(!exclude ? Resources.CalibrateIrtDlg_UseResults_The_document_contains_results_for__0__peptides__but_using_fewer_than__1__standard_peptides_is_not_recommended__Are_you_sure_you_want_to_continue_ : Resources.CalibrateIrtDlg_UseResults_The_document_contains_results_for__0__peptides_not_in_this_standard__but_using_fewer_than__1__standard_peptides_is_not_recommended__Are_you_sure_you_want_to_continue_, count, MIN_SUGGESTED_STANDARD_PEPTIDES), MultiButtonMsgDlg.BUTTON_YES, MultiButtonMsgDlg.BUTTON_NO, false) != DialogResult.Yes) { return(false); } } else if (count > 20) { using (var dlg = new AddIrtStandardsDlg(count, excludePeps != null && excludePeps.Count > 0)) { if (dlg.ShowDialog(this) != DialogResult.OK) { return(false); } count = dlg.StandardCount; } } _gridViewDriver.Recalculate(document, count, SelectedRegressionOption, excludePeps); return(true); }