public static void BuildContextMenu(ZedGraphControl graphControl, ContextMenuStrip menuStrip, bool keepZoom = false) { var items = new ToolStripItem[menuStrip.Items.Count]; for (int i = 0; i < items.Length; i++) { items[i] = menuStrip.Items[i]; } // Remove some ZedGraph menu items not of interest bool seenZoom = false; foreach (var item in items) { var tag = (string)item.Tag; if (tag == @"set_default" || tag == @"show_val" || item is ToolStripSeparator) { menuStrip.Items.Remove(item); } else if (tag == @"unzoom" || tag == @"undo_all") { if (!keepZoom) { menuStrip.Items.Remove(item); } else if (!seenZoom) { menuStrip.Items.Insert(menuStrip.Items.IndexOf(item), new ToolStripSeparator()); } seenZoom = true; } } CopyEmfToolStripMenuItem.AddToContextMenu(graphControl, menuStrip); }
private void graphControl_ContextMenuBuilder(ZedGraphControl zedGraphControl, ContextMenuStrip menuStrip, Point mousePt, ZedGraphControl.ContextMenuObjectState objState) { for (int i = menuStrip.Items.Count - 1; i >= 0; i--) { string tag = (string)menuStrip.Items[i].Tag; if (tag == "unzoom") // Not L10N { menuStrip.Items.Insert(i, new ToolStripSeparator()); } if (tag == "set_default" || tag == "show_val") // Not L10N { menuStrip.Items.RemoveAt(i); } } CopyEmfToolStripMenuItem.AddToContextMenu(zedGraphControl, menuStrip); }
private void zedGraphControl_ContextMenuBuilder(ZedGraphControl sender, ContextMenuStrip menuStrip, Point mousePt, ZedGraphControl.ContextMenuObjectState objState) { CopyEmfToolStripMenuItem.AddToContextMenu(sender, menuStrip); }
public void BuildChromatogramMenu(ZedGraphControl zedGraphControl, PaneKey paneKey, ContextMenuStrip menuStrip, ChromFileInfoId chromFileInfoId) { // Store original menu items in an array, and insert a separator ToolStripItem[] items = new ToolStripItem[menuStrip.Items.Count]; int iUnzoom = -1; for (int i = 0; i < items.Length; i++) { items[i] = menuStrip.Items[i]; string tag = (string)items[i].Tag; if (tag == @"unzoom") { iUnzoom = i; } } if (iUnzoom != -1) { menuStrip.Items.Insert(iUnzoom, toolStripSeparator26); } // Insert skyline specific menus var set = Settings.Default; int iInsert = 0; var settings = DocumentUI.Settings; bool retentionPredict = (settings.PeptideSettings.Prediction.RetentionTime != null); bool peptideIdTimes = (settings.PeptideSettings.Libraries.HasLibraries && (settings.TransitionSettings.FullScan.IsEnabled || settings.PeptideSettings.Libraries.HasMidasLibrary)); AddApplyRemovePeak(menuStrip, paneKey.IsotopeLabelType, 1, ref iInsert); legendChromContextMenuItem.Checked = set.ShowChromatogramLegend; menuStrip.Items.Insert(iInsert++, legendChromContextMenuItem); var fullScan = Document.Settings.TransitionSettings.FullScan; if (ChromatogramCache.FORMAT_VERSION_CACHE > ChromatogramCache.FORMAT_VERSION_CACHE_4 && fullScan.IsEnabled && (fullScan.IsHighResPrecursor || fullScan.IsHighResProduct)) { massErrorContextMenuItem.Checked = set.ShowMassError; menuStrip.Items.Insert(iInsert++, massErrorContextMenuItem); } peakBoundariesContextMenuItem.Checked = set.ShowPeakBoundaries; menuStrip.Items.Insert(iInsert++, peakBoundariesContextMenuItem); originalPeakMenuItem.Checked = set.ShowOriginalPeak; menuStrip.Items.Insert(iInsert++, originalPeakMenuItem); menuStrip.Items.Insert(iInsert++, retentionTimesContextMenuItem); if (retentionTimesContextMenuItem.DropDownItems.Count == 0) { retentionTimesContextMenuItem.DropDownItems.AddRange(new ToolStripItem[] { allRTContextMenuItem, bestRTContextMenuItem, thresholdRTContextMenuItem, noneRTContextMenuItem, rawTimesMenuItemSplitter, rawTimesContextMenuItem }); } if (retentionPredict) { retentionTimePredContextMenuItem.Checked = set.ShowRetentionTimePred; menuStrip.Items.Insert(iInsert++, retentionTimePredContextMenuItem); } rawTimesContextMenuItem.Checked = set.ChromShowRawTimes; bool alignedTimes = settings.HasAlignedTimes(); bool unalignedTimes = settings.HasUnalignedTimes(); if (peptideIdTimes || alignedTimes || unalignedTimes) { menuStrip.Items.Insert(iInsert++, peptideIDTimesContextMenuItem); peptideIDTimesContextMenuItem.DropDownItems.Clear(); idTimesNoneContextMenuItem.Checked = false; peptideIDTimesContextMenuItem.DropDownItems.Add(idTimesNoneContextMenuItem); if (peptideIdTimes) { idTimesMatchingContextMenuItem.Checked = set.ShowPeptideIdTimes; peptideIDTimesContextMenuItem.DropDownItems.Add(idTimesMatchingContextMenuItem); } if (settings.HasAlignedTimes()) { idTimesAlignedContextMenuItem.Checked = set.ShowAlignedPeptideIdTimes; peptideIDTimesContextMenuItem.DropDownItems.Add(idTimesAlignedContextMenuItem); } if (settings.HasUnalignedTimes()) { idTimesOtherContextMenuItem.Checked = set.ShowUnalignedPeptideIdTimes; peptideIDTimesContextMenuItem.DropDownItems.Add(idTimesOtherContextMenuItem); } idTimesNoneContextMenuItem.Checked = !peptideIDTimesContextMenuItem.DropDownItems .Cast <ToolStripMenuItem>() .Any(idItem => idItem.Checked); } menuStrip.Items.Insert(iInsert++, toolStripSeparator16); AddTransitionContextMenu(menuStrip, iInsert++); menuStrip.Items.Insert(iInsert++, transformChromContextMenuItem); // Sometimes child menuitems are stripped from the parent if (transformChromContextMenuItem.DropDownItems.Count == 0) { transformChromContextMenuItem.DropDownItems.AddRange(new ToolStripItem[] { transformChromNoneContextMenuItem, transformChromInterpolatedContextMenuItem, secondDerivativeContextMenuItem, firstDerivativeContextMenuItem, smoothSGChromContextMenuItem }); } menuStrip.Items.Insert(iInsert++, toolStripSeparator17); menuStrip.Items.Insert(iInsert++, autoZoomContextMenuItem); // Sometimes child menuitems are stripped from the parent if (autoZoomContextMenuItem.DropDownItems.Count == 0) { autoZoomContextMenuItem.DropDownItems.AddRange(new ToolStripItem[] { autoZoomNoneContextMenuItem, autoZoomBestPeakContextMenuItem, autoZoomRTWindowContextMenuItem, autoZoomBothContextMenuItem }); } lockYChromContextMenuItem.Checked = set.LockYChrom; menuStrip.Items.Insert(iInsert++, lockYChromContextMenuItem); synchronizeZoomingContextMenuItem.Checked = set.AutoZoomAllChromatograms; menuStrip.Items.Insert(iInsert++, synchronizeZoomingContextMenuItem); iInsert = InsertAlignmentMenuItems(menuStrip.Items, chromFileInfoId, iInsert); menuStrip.Items.Insert(iInsert++, toolStripSeparator18); menuStrip.Items.Insert(iInsert++, chromPropsContextMenuItem); menuStrip.Items.Insert(iInsert, toolStripSeparator19); // Remove some ZedGraph menu items not of interest foreach (var item in items) { string tag = (string)item.Tag; if (tag == @"set_default" || tag == @"show_val") { menuStrip.Items.Remove(item); } } CopyEmfToolStripMenuItem.AddToContextMenu(zedGraphControl, menuStrip); }