IVsMenuEditor Interface

Exposes the shared menu editor to form designers. You can get an instance of the interface from the IVsMenuEditorFactory interface.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)

public interface IVsMenuEditor

The IVsMenuEditor type exposes the following members.

Public methodAddMenuItem
Public methodDeleteMenuItem
Public methodFilterAllows the Menu designer to process a few selected messages that are required to correctly position, paint, and activate the menus.
Public methodGetHeightCan be used by the site to change the size of the host when the user wants to remove the menu. This allows the site an easy way to determine how much to decrease the size of the host.
Public methodGetItemRectCalled to obtain the bounding rectangle for a specific menu item (pmi != NULL) or the bounding rectangle for all currently displayed menu windows (pmi == NULL). fForScrolling = true if it is getting an item rectangle for the purposes of scrolling it into view. In this case, the Designer includes the items Popup rectangle and next item rectangle since these items may not yet be known by the Site, and thus there is no way to obtain their rectangles to make them visible.
Public methodGetUIStateReturns the current UI state of the Menu Editor, giving the site a mechanism to know if the Menu Editor has any UI operations in progress.
Public methodIsActive
Public methodOnChangeMust be called by IMenuEditorSite if any property known by IVsMenuEditor changes on any menu item.
Public methodSelectionChangeCalled whenever the selection changes. If pIMI is NULL, no menu item is selected. If it is non null, it points to the item to be selected. Only one item can be selected at a time from outside MenuDesigner. This method does not set focus to the item; see the SetFocus method below for that behavior.
Public methodSelectionChangeFocusSame as SelectionChange, except this method also sets focus to the selected item.
Public methodTranslateAcceleratorAllows the edit control to catch keystrokes just like an ActiveX control.

Community Additions