IVsMenuEditor Methods

Include Protected Members
Include Inherited Members

The IVsMenuEditor type exposes the following members.


  Name Description
Public method AddMenuItem
Public method DeleteMenuItem
Public method Filter Allows the Menu designer to process a few selected messages that are required to correctly position, paint, and activate the menus.
Public method GetHeight Can 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 method GetItemRect Called 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 method GetUIState Returns 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 method IsActive
Public method OnChange Must be called by IMenuEditorSite if any property known by IVsMenuEditor changes on any menu item.
Public method SelectionChange Called whenever the selection changes. If pIMI is NULL, no menu item is selected. If it is non nulla null reference (Nothing in Visual Basic), 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 method SelectionChangeFocus Same as SelectionChange, except this method also sets focus to the selected item.
Public method TranslateAccelerator Allows the edit control to catch keystrokes just like an ActiveX control.


See Also


IVsMenuEditor Interface

Microsoft.VisualStudio.Shell.Interop Namespace