private void OnContextMenu(object sender, MouseEventArgs e)
{
if ((_ribbonLabel != null) && (_ribbonLabel.Ribbon != null))
{
// 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));
_enabledMenu = new ToolStripMenuItem("Enabled", null, new EventHandler(OnEnabled));
_moveFirstMenu = new ToolStripMenuItem("Move Label First", ComponentFactory.Krypton.Design.Properties.Resources.MoveFirst, new EventHandler(OnMoveFirst));
_movePreviousMenu = new ToolStripMenuItem("Move Label Previous", ComponentFactory.Krypton.Design.Properties.Resources.MovePrevious, new EventHandler(OnMovePrevious));
_moveNextMenu = new ToolStripMenuItem("Move Label Next", ComponentFactory.Krypton.Design.Properties.Resources.MoveNext, new EventHandler(OnMoveNext));
_moveLastMenu = new ToolStripMenuItem("Move Label Last", ComponentFactory.Krypton.Design.Properties.Resources.MoveLast, new EventHandler(OnMoveLast));
_deleteLabelMenu = new ToolStripMenuItem("Delete Label", ComponentFactory.Krypton.Design.Properties.Resources.delete2, new EventHandler(OnDeleteLabel));
_cms.Items.AddRange(new ToolStripItem[] { _toggleHelpersMenu, new ToolStripSeparator(),
_visibleMenu, _enabledMenu, new ToolStripSeparator(),
_moveFirstMenu, _movePreviousMenu, _moveNextMenu, _moveLastMenu, new ToolStripSeparator(),
_deleteLabelMenu });
}
// Update verbs to work out correct enable states
UpdateVerbStatus();
// Update menu items state from versb
_toggleHelpersMenu.Checked = _ribbonLabel.Ribbon.InDesignHelperMode;
_visibleMenu.Checked = _ribbonLabel.Visible;
_enabledMenu.Checked = _ribbonLabel.Enabled;
_moveFirstMenu.Enabled = _moveFirstVerb.Enabled;
_movePreviousMenu.Enabled = _movePrevVerb.Enabled;
_moveNextMenu.Enabled = _moveNextVerb.Enabled;
_moveLastMenu.Enabled = _moveLastVerb.Enabled;
// Show the context menu
if (CommonHelper.ValidContextMenuStrip(_cms))
{
Point screenPt = _ribbonLabel.Ribbon.ViewRectangleToPoint(_ribbonLabel.LabelView);
VisualPopupManager.Singleton.ShowContextMenuStrip(_cms, screenPt);
}
}
}