private void OnContextMenu(object sender, MouseEventArgs e)
{
if ((_ribbonTab != null) &&
(_ribbonTab.Ribbon != null) &&
_ribbonTab.Ribbon.RibbonTabs.Contains(_ribbonTab))
{
// Create the menu strip the first time around
if (_cms == null)
{
_cms = new ContextMenuStrip();
_toggleHelpersMenu = new ToolStripMenuItem("Design Helpers", null, new EventHandler(OnToggleHelpers));
_visibleMenu = new ToolStripMenuItem("Visible", null, new EventHandler(OnVisible));
_moveFirstMenu = new ToolStripMenuItem("Move First", ComponentFactory.Krypton.Design.Properties.Resources.MoveFirst, new EventHandler(OnMoveFirst));
_movePreviousMenu = new ToolStripMenuItem("Move Previous", ComponentFactory.Krypton.Design.Properties.Resources.MovePrevious, new EventHandler(OnMovePrevious));
_moveNextMenu = new ToolStripMenuItem("Move Next", ComponentFactory.Krypton.Design.Properties.Resources.MoveNext, new EventHandler(OnMoveNext));
_moveLastMenu = new ToolStripMenuItem("Move Last", ComponentFactory.Krypton.Design.Properties.Resources.MoveLast, new EventHandler(OnMoveLast));
_addGroupMenu = new ToolStripMenuItem("Add Group", ComponentFactory.Krypton.Design.Properties.Resources.KryptonRibbonGroup, new EventHandler(OnAddGroup));
_clearGroupsMenu = new ToolStripMenuItem("Clear Groups", null, new EventHandler(OnClearGroups));
_deleteTabMenu = new ToolStripMenuItem("Delete Tab", ComponentFactory.Krypton.Design.Properties.Resources.delete2, new EventHandler(OnDeleteTab));
_cms.Items.AddRange(new ToolStripItem[] { _toggleHelpersMenu, new ToolStripSeparator(),
_visibleMenu, new ToolStripSeparator(),
_moveFirstMenu, _movePreviousMenu, _moveNextMenu, _moveLastMenu, new ToolStripSeparator(),
_addGroupMenu, new ToolStripSeparator(),
_clearGroupsMenu, new ToolStripSeparator(),
_deleteTabMenu });
_addGroupMenu.ImageTransparentColor = Color.Magenta;
}
// Update verbs to work out correct enable states
UpdateVerbStatus();
// Update menu items state from versb
_toggleHelpersMenu.Checked = _ribbonTab.Ribbon.InDesignHelperMode;
_visibleMenu.Checked = _ribbonTab.Visible;
_moveFirstMenu.Enabled = _moveFirstVerb.Enabled;
_movePreviousMenu.Enabled = _movePrevVerb.Enabled;
_moveNextMenu.Enabled = _moveNextVerb.Enabled;
_moveLastMenu.Enabled = _moveLastVerb.Enabled;
_clearGroupsMenu.Enabled = _clearGroupsVerb.Enabled;
// Convert from ribbon to screen coordinates
if (CommonHelper.ValidContextMenuStrip(_cms))
{
Point screenPt = _ribbonTab.Ribbon.ViewRectangleToPoint(_ribbonTab.TabView);
VisualPopupManager.Singleton.ShowContextMenuStrip(_cms, screenPt);
}
}
}