private void OnContextMenu(object sender, MouseEventArgs e)
{
if ((_ribbonColorButton != null) && (_ribbonColorButton.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));
_checkedMenu = new ToolStripMenuItem("Checked", null, new EventHandler(OnChecked));
_typePushMenu = new ToolStripMenuItem("Push", null, new EventHandler(OnTypePush));
_typeCheckMenu = new ToolStripMenuItem("Check", null, new EventHandler(OnTypeCheck));
_typeDropDownMenu = new ToolStripMenuItem("DropDown", null, new EventHandler(OnTypeDropDown));
_typeSplitMenu = new ToolStripMenuItem("Split", null, new EventHandler(OnTypeSplit));
_typeMenu = new ToolStripMenuItem("Type");
_typeMenu.DropDownItems.AddRange(new ToolStripItem[] { _typePushMenu, _typeCheckMenu, _typeDropDownMenu, _typeSplitMenu });
_moveFirstMenu = new ToolStripMenuItem("Move Color Button First", ComponentFactory.Krypton.Design.Properties.Resources.MoveFirst, new EventHandler(OnMoveFirst));
_movePreviousMenu = new ToolStripMenuItem("Move Color Button Previous", ComponentFactory.Krypton.Design.Properties.Resources.MovePrevious, new EventHandler(OnMovePrevious));
_moveNextMenu = new ToolStripMenuItem("Move Color Button Next", ComponentFactory.Krypton.Design.Properties.Resources.MoveNext, new EventHandler(OnMoveNext));
_moveLastMenu = new ToolStripMenuItem("Move Color Button Last", ComponentFactory.Krypton.Design.Properties.Resources.MoveLast, new EventHandler(OnMoveLast));
_deleteButtonMenu = new ToolStripMenuItem("Delete Color Button", ComponentFactory.Krypton.Design.Properties.Resources.delete2, new EventHandler(OnDeleteButton));
_cms.Items.AddRange(new ToolStripItem[] { _toggleHelpersMenu, new ToolStripSeparator(),
_visibleMenu, _enabledMenu, _checkedMenu, _typeMenu, new ToolStripSeparator(),
_moveFirstMenu, _movePreviousMenu, _moveNextMenu, _moveLastMenu, new ToolStripSeparator(),
_deleteButtonMenu });
}
// Update verbs to work out correct enable states
UpdateVerbStatus();
// Update menu items state from versb
_toggleHelpersMenu.Checked = _ribbonColorButton.Ribbon.InDesignHelperMode;
_visibleMenu.Checked = _ribbonColorButton.Visible;
_enabledMenu.Checked = _ribbonColorButton.Enabled;
_checkedMenu.Checked = _ribbonColorButton.Checked;
_typePushMenu.Checked = (_ribbonColorButton.ButtonType == GroupButtonType.Push);
_typeCheckMenu.Checked = (_ribbonColorButton.ButtonType == GroupButtonType.Check);
_typeDropDownMenu.Checked = (_ribbonColorButton.ButtonType == GroupButtonType.DropDown);
_typeSplitMenu.Checked = (_ribbonColorButton.ButtonType == GroupButtonType.Split);
_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 = _ribbonColorButton.Ribbon.ViewRectangleToPoint(_ribbonColorButton.ColorButtonView);
VisualPopupManager.Singleton.ShowContextMenuStrip(_cms, screenPt);
}
}
}