public NeoSearchTaskWindow(NeoSearchTask task) { InitializeComponent(); TheTask = task; UpdateFieldsFromTask(TheTask); dataContextForSearchTaskWindow = new DataContextForSearchTaskWindow { ExpanderTitle = string.Join(", ", SearchModesForThisTask.Where(b => b.Use).Select(b => b.Name)) }; this.DataContext = dataContextForSearchTaskWindow; this.saveButton.Content = "Add the Search Tasks"; }
private void UpdateFieldsFromTask(NeoSearchTask task) { calibrate.IsChecked = task.NeoParameters.Calibrate; gptmd.IsChecked = task.NeoParameters.GPTMD; searchTarget.IsChecked = task.NeoParameters.TargetSearch; targetPath.Text = task.NeoParameters.TargetFilePath != null ? task.NeoParameters.TargetFilePath : ""; searchDecoy.IsChecked = task.NeoParameters.DecoySearch; decoyPath.Text = task.NeoParameters.TargetFilePath != null ? task.NeoParameters.DecoyFilePath : ""; searchN.IsChecked = task.NeoParameters.SearchNTerminus; NPath.Text = task.NeoParameters.NFilePath != null ? task.NeoParameters.NFilePath : ""; searchC.IsChecked = task.NeoParameters.SearchCTerminus; CPath.Text = task.NeoParameters.CFilePath != null ? task.NeoParameters.CFilePath : ""; maxMissedConsecutiveTextBox.Text = task.NeoParameters.MaxMissedConsecutiveCleavages.ToString(); maxMissedTextBox.Text = task.NeoParameters.MaxMissedCleavages.ToString(); maxCandidatesPerSpectrumTextBox.Text = task.NeoParameters.MaxCandidatesPerSpectrum.ToString(); minCisLengthTextBox.Text = task.NeoParameters.MinDistanceAllowed.ToString(); maxCisLengthTextBox.Text = task.NeoParameters.MaxDistanceAllowed.ToString(); searchNormalCis.IsChecked = task.NeoParameters.NormalCis; searchReverseCis.IsChecked = task.NeoParameters.ReverseCis; proteaseComboBox.SelectedItem = task.CommonParameters.DigestionParams.Protease; missedCleavagesTextBox.Text = task.CommonParameters.DigestionParams.MaxMissedCleavages.ToString(CultureInfo.InvariantCulture); txtMinPeptideLength.Text = task.CommonParameters.DigestionParams.MinPeptideLength.HasValue ? task.CommonParameters.DigestionParams.MinPeptideLength.Value.ToString(CultureInfo.InvariantCulture) : ""; txtMaxPeptideLength.Text = task.CommonParameters.DigestionParams.MaxPeptideLength.HasValue ? task.CommonParameters.DigestionParams.MaxPeptideLength.Value.ToString(CultureInfo.InvariantCulture) : ""; proteaseComboBox.SelectedItem = task.CommonParameters.DigestionParams.Protease; maxModificationIsoformsTextBox.Text = task.CommonParameters.DigestionParams.MaxModificationIsoforms.ToString(CultureInfo.InvariantCulture); txtMaxModNum.Text = task.CommonParameters.DigestionParams.MaxModsForPeptide.ToString(CultureInfo.InvariantCulture); initiatorMethionineBehaviorComboBox.SelectedIndex = (int)task.CommonParameters.DigestionParams.InitiatorMethionineBehavior; if (task.CommonParameters.ProductMassTolerance != null) { productMassToleranceTextBox.Text = task.CommonParameters.ProductMassTolerance.Value.ToString(CultureInfo.InvariantCulture); } productMassToleranceComboBox.SelectedIndex = task.CommonParameters.ProductMassTolerance is AbsoluteTolerance ? 0 : 1; if (task.CommonParameters.PrecursorMassTolerance != null) { precursorMassToleranceTextBox.Text = task.CommonParameters.PrecursorMassTolerance.Value.ToString(CultureInfo.InvariantCulture); } precursorMassToleranceComboBox.SelectedIndex = task.CommonParameters.PrecursorMassTolerance is AbsoluteTolerance ? 0 : 1; bCheckBox.IsChecked = task.CommonParameters.BIons; yCheckBox.IsChecked = task.CommonParameters.YIons; cCheckBox.IsChecked = task.CommonParameters.CIons; zdotCheckBox.IsChecked = task.CommonParameters.ZdotIons; OutputFileNameTextBox.Text = task.CommonParameters.TaskDescriptor; foreach (var mod in task.CommonParameters.ListOfModsFixed) { var theModType = fixedModTypeForTreeViewObservableCollection.FirstOrDefault(b => b.DisplayName.Equals(mod.Item1)); if (theModType != null) { var theMod = theModType.Children.FirstOrDefault(b => b.DisplayName.Equals(mod.Item2)); if (theMod != null) { theMod.Use = true; } else { theModType.Children.Add(new ModForTreeView("UNKNOWN MODIFICATION!", true, mod.Item2, true, theModType)); } } else { theModType = new ModTypeForTreeView(mod.Item1, true); fixedModTypeForTreeViewObservableCollection.Add(theModType); theModType.Children.Add(new ModForTreeView("UNKNOWN MODIFICATION!", true, mod.Item2, true, theModType)); } } foreach (var mod in task.CommonParameters.ListOfModsVariable) { var theModType = variableModTypeForTreeViewObservableCollection.FirstOrDefault(b => b.DisplayName.Equals(mod.Item1)); if (theModType != null) { var theMod = theModType.Children.FirstOrDefault(b => b.DisplayName.Equals(mod.Item2)); if (theMod != null) { theMod.Use = true; } else { theModType.Children.Add(new ModForTreeView("UNKNOWN MODIFICATION!", true, mod.Item2, true, theModType)); } } else { theModType = new ModTypeForTreeView(mod.Item1, true); variableModTypeForTreeViewObservableCollection.Add(theModType); theModType.Children.Add(new ModForTreeView("UNKNOWN MODIFICATION!", true, mod.Item2, true, theModType)); } } localizeAllCheckBox.IsChecked = task.CommonParameters.LocalizeAll; if (task.CommonParameters.LocalizeAll) { foreach (var heh in localizeModTypeForTreeViewObservableCollection) { heh.Use = true; } } else { foreach (var mod in task.CommonParameters.ListOfModTypesLocalize) { var theModType = localizeModTypeForTreeViewObservableCollection.FirstOrDefault(b => b.DisplayName.Equals(mod)); theModType.Use = true; } } foreach (var ye in variableModTypeForTreeViewObservableCollection) { ye.VerifyCheckState(); } foreach (var ye in fixedModTypeForTreeViewObservableCollection) { ye.VerifyCheckState(); } foreach (var ye in localizeModTypeForTreeViewObservableCollection) { ye.VerifyCheckState(); } }