ComponentFactory.Krypton.Ribbon.KryptonRibbonGroupClusterButtonDesigner.OnContextMenu C# (CSharp) Method

OnContextMenu() private method

private OnContextMenu ( object sender, MouseEventArgs e ) : void
sender object
e MouseEventArgs
return void
        private void OnContextMenu(object sender, MouseEventArgs e)
        {
            if ((_ribbonButton != null) && (_ribbonButton.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 Cluster Button First", ComponentFactory.Krypton.Design.Properties.Resources.MoveFirst, new EventHandler(OnMoveFirst));
                    _movePreviousMenu = new ToolStripMenuItem("Move Cluster Button Previous", ComponentFactory.Krypton.Design.Properties.Resources.MovePrevious, new EventHandler(OnMovePrevious));
                    _moveNextMenu = new ToolStripMenuItem("Move Cluster Button Next", ComponentFactory.Krypton.Design.Properties.Resources.MoveNext, new EventHandler(OnMoveNext));
                    _moveLastMenu = new ToolStripMenuItem("Move Cluster Button Last", ComponentFactory.Krypton.Design.Properties.Resources.MoveLast, new EventHandler(OnMoveLast));
                    _deleteButtonMenu = new ToolStripMenuItem("Delete Cluster 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 = _ribbonButton.Ribbon.InDesignHelperMode;
                _visibleMenu.Checked = _ribbonButton.Visible;
                _enabledMenu.Checked = _ribbonButton.Enabled;
                _checkedMenu.Checked = _ribbonButton.Checked;
                _typePushMenu.Checked = (_ribbonButton.ButtonType == GroupButtonType.Push);
                _typeCheckMenu.Checked = (_ribbonButton.ButtonType == GroupButtonType.Check);
                _typeDropDownMenu.Checked = (_ribbonButton.ButtonType == GroupButtonType.DropDown);
                _typeSplitMenu.Checked = (_ribbonButton.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 = _ribbonButton.Ribbon.ViewRectangleToPoint(_ribbonButton.ClusterButtonView);
                    VisualPopupManager.Singleton.ShowContextMenuStrip(_cms, screenPt);
                }
            }
        }