private void removePeakGraphMenuItem_DropDownOpening(object sender, EventArgs e) { ToolStripMenuItem menu = removePeakGraphMenuItem; if (menu.DropDownItems.Count == 0) return; var nodeGroupTree = SequenceTree.GetNodeOfType<TransitionGroupTreeNode>(); TransitionGroupDocNode nodeGroup = nodeGroupTree.DocNode; IdentityPath pathGroup = nodeGroupTree.Path; var nodeTranTree = (TransitionTreeNode) SelectedNode; var nodeTran = nodeTranTree.DocNode; menu.DropDownItems.Clear(); if (nodeGroup.TransitionCount > 1) { var handler = new RemovePeakHandler(this, pathGroup, nodeGroup, null); var item = new ToolStripMenuItem(Resources.SkylineWindow_removePeaksGraphMenuItem_DropDownOpening_All, null, handler.menuItem_Click); menu.DropDownItems.Insert(0, item); } var chromInfo = GetTransitionChromInfo(nodeTran, SequenceTree.ResultsIndex); if (chromInfo != null && !chromInfo.IsEmpty) { var handler = new RemovePeakHandler(this, pathGroup, nodeGroup, nodeTran); var item = new ToolStripMenuItem(ChromGraphItem.GetTitle(nodeTran), null, handler.menuItem_Click); menu.DropDownItems.Insert(0, item); } }
private void removePeakMenuItem_DropDownOpening(object sender, EventArgs e) { SkylineWindow.EditMenu.CanApplyOrRemovePeak(null, null, out _, out var canRemove); if (!canRemove) { return; } if (!(sender is ToolStripMenuItem menu) || !menu.DropDownItems.OfType <object>().Any()) { return; } var nodeGroupTree = SequenceTree.GetNodeOfType <TransitionGroupTreeNode>(); if (nodeGroupTree != null) { var nodeGroup = nodeGroupTree.DocNode; var pathGroup = nodeGroupTree.Path; var nodeTranTree = (TransitionTreeNode)SelectedNode; var nodeTran = nodeTranTree.DocNode; menu.DropDownItems.Clear(); if (nodeGroup.TransitionCount > 1) { var handler = new RemovePeakHandler(SkylineWindow, pathGroup, nodeGroup, null); var item = new ToolStripMenuItem( Resources.SkylineWindow_removePeaksGraphMenuItem_DropDownOpening_All, null, handler.menuItem_Click); menu.DropDownItems.Insert(0, item); } var chromInfo = nodeTran.GetChromInfo(SequenceTree.ResultsIndex, GetSelectedChromFileId()); if (chromInfo != null && !chromInfo.IsEmpty) { var handler = new RemovePeakHandler(SkylineWindow, pathGroup, nodeGroup, nodeTran); var item = new ToolStripMenuItem(ChromGraphItem.GetTitle(nodeTran), null, handler.menuItem_Click); menu.DropDownItems.Insert(0, item); } return; } var nodePepTree = SequenceTree.GetNodeOfType <PeptideTreeNode>(); if (nodePepTree != null) { var placeholder = menu.DropDownItems.OfType <object>().FirstOrDefault() as ToolStripMenuItem; if (placeholder == null) { return; } var isotopeLabelType = placeholder.Tag as IsotopeLabelType; if (isotopeLabelType == null) { return; } menu.DropDownItems.Clear(); var transitionGroupDocNode = nodePepTree.DocNode.TransitionGroups.FirstOrDefault(transitionGroup => Equals(transitionGroup.TransitionGroup.LabelType, isotopeLabelType)); if (transitionGroupDocNode == null) { return; } var item = new ToolStripMenuItem(Resources.SkylineWindow_removePeaksGraphMenuItem_DropDownOpening_All, null, removePeakMenuItem_Click); menu.DropDownItems.Insert(0, item); var handler = new RemovePeakHandler(SkylineWindow, new IdentityPath(nodePepTree.Path, transitionGroupDocNode.Id), transitionGroupDocNode, null); item = new ToolStripMenuItem(isotopeLabelType.Title, null, handler.menuItem_Click); menu.DropDownItems.Insert(0, item); } }