Package com.smartgwt.client.widgets.menu

# Class MenuButton

java.lang.Object
com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.Widget
com.smartgwt.client.widgets.BaseWidget
com.smartgwt.client.widgets.Canvas
com.smartgwt.client.widgets.StatefulCanvas
com.smartgwt.client.widgets.Button
com.smartgwt.client.widgets.menu.MenuButton

All Implemented Interfaces:
  `HasAttachHandlers`, `HasHandlers`, `EventListener`, `HasVisibility`, `IsWidget`, `LogicalStructure`, `HasClearHandlers`, `HasClickHandlers`, `HasDoubleClickHandlers`, `HasDragMoveHandlers`, `HasDragRepositionMoveHandlers`, `HasDragRepositionStartHandlers`, `HasDragRepositionStopHandlers`, `HasDragResizeMoveHandlers`, `HasDragResizeStartHandlers`, `HasDragResizeStopHandlers`, `HasDragStartHandlers`, `HasDragStopHandlers`, `HasDropHandlers`, `HasDropMoveHandlers`, `HasDropOutHandlers`, `HasDropOverHandlers`, `HasFocusChangedHandlers`, `HasHoverHandlers`, `HasHoverHiddenHandlers`, `HasIconClickHandlers`, `HasKeyDownHandlers`, `HasKeyPressHandlers`, `HasMouseDownHandlers`, `HasMouseMoveHandlers`, `HasMouseOutHandlers`, `HasMouseOverHandlers`, `HasMouseStillDownHandlers`, `HasMouseUpHandlers`, `HasMouseWheelHandlers`, `HasMovedHandlers`, `HasParentMovedHandlers`, `HasResizedHandlers`, `HasRightMouseDownHandlers`, `HasRuleContextChangedHandlers`, `HasScrolledHandlers`, `HasShowContextMenuHandlers`, `HasTitleHoverHandlers`, `HasVisibilityChangedHandlers`

Direct Known Subclasses:
  `TreeMenuButton`

public class MenuButton extends Button
Simple subclass of button associated with a menu widget (gets shown below the button).

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

  `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

- ## Field Summary

  ### Fields inherited from class com.smartgwt.client.widgets.BaseWidget

  `config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName`

  ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

  `DEBUG_ID_PREFIX`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MenuButton()`
  `MenuButton(JavaScriptObject jsObj)`
  `MenuButton(String title)`
  `MenuButton(String title, Menu menu)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static void`
  `changeAutoChildDefaults(String autoChildName, Canvas defaults)`
  Changes the defaults for Canvas AutoChildren named `autoChildName`.
  `static void`
  `changeAutoChildDefaults(String autoChildName, FormItem defaults)`
  Changes the defaults for FormItem AutoChildren named `autoChildName`.
  `protected JavaScriptObject`
  `create()`
  `Boolean`
  `getAutoDestroyMenu()`
  If this menuButton is `destroyed`, should it also destroy its `menu`?
  `String`
  `getEditProxyConstructor()`
  Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
  `Boolean`
  `getHiliteAccessKey()`
  If this MenuButton has a specified `accessKey`, underline it in the title of the button by default
  `String`
  `getIcon()`
  This property corresponds to the inherited `Button.icon` property, which is used to display the menuButtonImage, so anything you attempt to set there would be clobbered by the internal usage.
  `LogicalStructureObject`
  `getLogicalStructure()`
  Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
  `Menu`
  `getMenu()`
  The menu to show.
  `Alignment`
  `getMenuAlign()`
  The horizontal alignment of this button's menu, in relation to the button.
  `String`
  `getMenuAnimationEffect()`
  Allows you to specify an animation effect to apply to the menu when it is being shown.
  `String`
  `getMenuButtonImage()`
  Image for menu button indicating that the button expands a menu.
  `String`
  `getMenuButtonImageUp()`
  Image for menu button indicating that the button expands a menu.
  `static MenuButton`
  `getOrCreateRef(JavaScriptObject jsObj)`
  `int`
  `getRollOverMenuHideDelay()`
  When `showMenuOnRollOver` is true, this is the delay in milliseconds before the menu is automatically hidden following mouseOut.
  `Boolean`
  `getShowMenuBelow()`
  The menu drops down below the menu button.
  `Boolean`
  `getShowMenuButtonImage()`
  Show menu button image (up / down arrowhead) for this menu button.
  `Boolean`
  `getShowMenuOnRollOver()`
  Should the menu be shown automatically when the mouse moves over the button?
  `String`
  `getTitle()`
  Default title for the button.
  `MenuButton`
  `setAutoDestroyMenu(Boolean autoDestroyMenu)`
  If this menuButton is `destroyed`, should it also destroy its `menu`?
  `static void`
  `setDefaultProperties(MenuButton menuButtonProperties)`
  Class level method to set the default properties of this class.
  `MenuButton`
  `setEditProxyConstructor(String editProxyConstructor)`
  Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
  `MenuButton`
  `setHiliteAccessKey(Boolean hiliteAccessKey)`
  If this MenuButton has a specified `accessKey`, underline it in the title of the button by default
  `MenuButton`
  `setIcon(String icon)`
  This property corresponds to the inherited `Button.icon` property, which is used to display the menuButtonImage, so anything you attempt to set there would be clobbered by the internal usage.
  `LogicalStructureObject`
  `setLogicalStructure(MenuButtonLogicalStructure s)`
  Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
  `MenuButton`
  `setMenu(Menu menu)`
  The menu to show.
  `MenuButton`
  `setMenuAlign(Alignment menuAlign)`
  The horizontal alignment of this button's menu, in relation to the button.
  `MenuButton`
  `setMenuAnimationEffect(String menuAnimationEffect)`
  Allows you to specify an animation effect to apply to the menu when it is being shown.
  `MenuButton`
  `setMenuButtonImage(String menuButtonImage)`
  Image for menu button indicating that the button expands a menu.
  `MenuButton`
  `setMenuButtonImageUp(String menuButtonImageUp)`
  Image for menu button indicating that the button expands a menu.
  `MenuButton`
  `setRollOverMenuHideDelay(int rollOverMenuHideDelay)`
  When `showMenuOnRollOver` is true, this is the delay in milliseconds before the menu is automatically hidden following mouseOut.
  `MenuButton`
  `setShowMenuBelow(Boolean showMenuBelow)`
  The menu drops down below the menu button.
  `MenuButton`
  `setShowMenuButtonImage(Boolean showMenuButtonImage)`
  Show menu button image (up / down arrowhead) for this menu button.
  `MenuButton`
  `setShowMenuOnRollOver(Boolean showMenuOnRollOver)`
  Should the menu be shown automatically when the mouse moves over the button?
  `void`
  `setTitle(String title)`
  Default title for the button.
  `void`
  `showMenu()`
  Programmatically forces this MenuButton to show it's menu.

  ### Methods inherited from class com.smartgwt.client.widgets.Button

  `action, addIconClickHandler, addTitleHoverHandler, addToRadioGroup, assertIsButton, deselect, getActionType, getAdaptWidthShowIconOnly, getAlign, getAutoFit, getBaseStyle, getCanAdaptWidth, getDefiningProperty, getDisabledIconCursor, getHeight, getHeightAsString, getIconAlign, getIconCursor, getIconHeight, getIconOnlyBaseStyle, getIconOrientation, getIconSize, getIconSpacing, getIconStyle, getIconWidth, getOverflow, getRadioGroup, getShowClippedTitleOnHover, getShowDisabled, getShowDisabledIcon, getShowDown, getShowDownIcon, getShowFocused, getShowFocusedIcon, getShowRollOver, getShowRollOverIcon, getShowSelectedIcon, getState, getStyleName, getUseSpan, getValign, getWidth, getWidthAsString, getWrap, removeFromRadioGroup, removeFromRadioGroup, select, setActionType, setAdaptWidthShowIconOnly, setAlign, setAutoFit, setBaseStyle, setCanAdaptWidth, setDefaultProperties, setDefiningProperty, setDisabledIconCursor, setHeight, setHeight, setIconAlign, setIconCursor, setIconHeight, setIconOnlyBaseStyle, setIconOrientation, setIconSize, setIconSpacing, setIconStyle, setIconWidth, setLogicalStructure, setOverflow, setRadioGroup, setShowClippedTitleOnHover, setShowDisabled, setShowDisabledIcon, setShowDown, setShowDownIcon, setShowFocused, setShowFocusedIcon, setShowRollOver, setShowRollOverIcon, setShowSelectedIcon, setState, setStyleName, setTitleHoverFormatter, setUseSpan, setValign, setWidth, setWidth, setWrap, titleClipped, titleHoverHTML`

  ### Methods inherited from class com.smartgwt.client.widgets.StatefulCanvas

  `getAriaLabel, getAriaStateDefaults, getIgnoreRTL, getLabelHPad, getLabelVPad, getOverCanvas, getOverCanvasConstructor, getRedrawOnStateChange, getSelected, getShowFocusedAsOver, getShowMenuOnClick, getShowOverCanvas, getShowRTLIcon, getStateSuffix, getVIconStyle, isSelected, setAriaLabel, setDefaultProperties, setIgnoreRTL, setLabelHPad, setLabelVPad, setLogicalStructure, setOverCanvasConstructor, setRedrawOnStateChange, setSelected, setShowFocusedAsOver, setShowMenuOnClick, setShowOverCanvas, setShowRTLIcon, setTitleFormatter, setTitleStyle, setVIconStyle`

  ### Methods inherited from class com.smartgwt.client.widgets.Canvas

  `addChild, addChild, addChild, addChild, addChild, addClearHandler, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addRuleContextChangedHandler, addScrolledHandler, addShowContextMenuHandler, addSnapAlignCandidate, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clearExplicitTabIndex, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsEventTarget, containsFocus, containsPoint, containsPoint, contentsComponentConnected, dataContextChanged, deparent, depeer, disable, doValueDictation, doVoiceCommand, enable, encloses, focus, focusAfterGroup, focusAtEnd, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAdaptiveHeightPriority, getAdaptiveWidthPriority, getAllCanvases, getAllCanvases, getAllCanvases, getAlwaysManageFocusNavigation, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideEffect, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeLayoutMode, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaHandleID, getAriaRole, getAutoMaskComponents, getAutoParent, getAutoPopulateData, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBorderRadius, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanAdaptHeight, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanDropContent, getCanDropFiles, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenAsStringArray, getChildrenResizeSnapAlign, getChildrenSnapAlign, getChildrenSnapCenterAlign, getChildrenSnapEdgeAlign, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getChildTabPosition, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContentsComponentDefaults, getContextMenu, getCorrectZoomOverflow, getCursor, getDataContext, getDataPath, getDefaultHeight, getDefaultWidth, getDeferActionConversion, getDefiningPropertyName, getDefiningPropertyNameOptions, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragMaxHeight, getDragMaxWidth, getDragMinHeight, getDragMinWidth, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragTargetAsString, getDragType, getDropTarget, getDropTargetAsString, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getElement, getElement, getEnableWhen, getEndLine, getEventEdge, getEventEdge, getEvents, getExtraSpace, getFacetId, getFloatingScrollbars, getFormItemAutoChild, getForwardSVGeventsToObject, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupPadding, getGroupTitle, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverAutoFitMaxWidth, getHoverAutoFitMaxWidthAsString, getHoverAutoFitWidth, getHoverComponent, getHoverDelay, getHoverFocusKey, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverPersist, getHoverScreen, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlElementAsString, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getIsPrinting, getIsRuleScope, getIsSnapAlignCandidate, getKeepInParentRect, getLayoutAlign, getLeaveGroupLabelSpace, getLeavePageSpace, getLeft, getLeftAsString, getLocalId, getLocateByIDOnly, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getLocatorName, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMatchElementHeight, getMatchElementWidth, getMaxHeight, getMaxWidth, getMaxZoomOverflowError, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getName, getNativeAutoHideScrollbars, getNextZIndex, getNoDoubleClicks, getNoDropCursor, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getPaletteDefaults, getPanelContainer, getParentCanvas, getParentCanvasAsString, getParentElement, getParentElementAsString, getPeers, getPendingMarkerStyle, getPendingMarkerVisible, getPercentBox, getPercentSource, getPersistentMatchElement, getPointerSettings, getPointerTarget, getPointerTargetAsString, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrintStyleName, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getReceiveScrollbarEvents, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getRuleContext, getRuleContext, getRuleScope, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowColor, getShadowDepth, getShadowHOffset, getShadowImage, getShadowOffset, getShadowSoftness, getShadowSpread, getShadowVOffset, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowFocusOutline, getShowHover, getShowHoverComponents, getShowPointer, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSingleDiv, getSizeMayChangeOnRedraw, getSkinImgDir, getSnapAlignCandidates, getSnapAlignCenterLineStyle, getSnapAlignEdgeLineStyle, getSnapAxis, getSnapEdge, getSnapGridLineProperties, getSnapGridStyle, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapPosition, getSnapPosition, getSnapResizeToAlign, getSnapResizeToGrid, getSnapTo, getSnapToAlign, getSnapToCenterAlign, getSnapToEdgeAlign, getSnapToGrid, getSnapVDirection, getSnapVGap, getStartLine, getTabIndex, getTestDataContext, getTestInstance, getTooltip, getTop, getTopAsString, getTopElement, getTopLevelComponents, getUpdateTabPositionOnDraw, getUpdateTabPositionOnReparent, getUseBackMask, getUseCSSShadow, getUseDragMask, getUseGeneratedStyles, getUseImageForSVG, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getValuesManagerAsString, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWhen, getVisibleWidth, getVSnapPosition, getVSnapPosition, getWorkflows, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, initComplete, intersects, isDirty, isDisabled, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, onInit, pageScrollDown, pageScrollUp, parentResized, placeNear, placeNear, placeNear, print, print, print, print, printComponents, provideRuleContext, provideRuleContext, redraw, redraw, registerFontScaledPaddingStyles, removeChild, removeChild, removePeer, removePeer, removeRuleContext, removeSnapAlignCandidate, resizeAutoChildAttributes, resizeBy, resizeControls, resizeControlsTo, resizeFonts, resizeFonts, resizeFonts, resizeFontsTo, resizeIcons, resizePadding, resizePadding, resizeTo, resizeTo, resolveContentsComponent, revealChild, revealChild, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAdaptHeightByCustomizer, setAdaptiveHeightPriority, setAdaptiveWidthPriority, setAdaptWidthByCustomizer, setAllowExternalFilters, setAlwaysManageFocusNavigation, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideEffect, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeLayoutMode, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoHeight, setAutoMaskComponents, setAutoParent, setAutoPopulateData, setAutoResizeAutoChildAttributes, setAutoResizeIcons, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBorderRadius, setBottom, setCanAcceptDrop, setCanAdaptHeight, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanDropContent, setCanDropFiles, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenResizeSnapAlign, setChildrenSnapAlign, setChildrenSnapCenterAlign, setChildrenSnapEdgeAlign, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContentsComponentDefaults, setContextMenu, setCorrectZoomOverflow, setCursor, setDataContext, setDataPath, setDefaultHeight, setDefaultNativeAutoHideScrollbars, setDefaultPageSpace, setDefaultProperties, setDefaultShowCustomScrollbars, setDefaultWidth, setDeferActionConversion, setDefiningPropertyNameOptions, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragMaxHeight, setDragMaxWidth, setDragMinHeight, setDragMinWidth, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragTarget, setDragType, setDropTarget, setDropTarget, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setElement, setEnableWhen, setEndLine, setExtraSpace, setFacetId, setFloatingScrollbars, setForwardSVGeventsToObject, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupPadding, setGroupTitle, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverAutoFitMaxWidth, setHoverAutoFitMaxWidth, setHoverAutoFitWidth, setHoverDelay, setHoverFocusKey, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverPersist, setHoverScreen, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setIsRuleScope, setIsSnapAlignCandidate, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeaveGroupLabelSpace, setLeavePageSpace, setLeft, setLeft, setLocateByIDOnly, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLocatorName, setLocatorParent, setLocatorParent, setLogicalStructure, setMargin, setMatchElement, setMatchElementHeight, setMatchElementWidth, setMaxHeight, setMaxWidth, setMaxZoomOverflowError, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setName, setNativeAutoHideScrollbars, setNeverUseFilters, setNoDoubleClicks, setNoDropCursor, setOpacity, setPadding, setPageLeft, setPageTop, setPanelContainer, setParentCanvas, setParentCanvas, setParentElement, setParentElement, setPeers, setPendingMarkerStyle, setPendingMarkerVisible, setPercentBox, setPercentSource, setPersistentMatchElement, setPointerSettings, setPointerTarget, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrintStyleName, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setReceiveScrollbarEvents, setRect, setRect, setRedrawOnResize, setRelativeTabPosition, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setRuleScope, setScrollbarConstructor, setScrollbarSize, setShadowColor, setShadowDepth, setShadowHOffset, setShadowImage, setShadowOffset, setShadowSoftness, setShadowSpread, setShadowVOffset, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowFocusOutline, setShowHover, setShowHoverComponents, setShowPointer, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSingleDiv, setSizeMayChangeOnRedraw, setSkinImgDir, setSmoothFade, setSnapAlignCandidates, setSnapAlignCenterLineStyle, setSnapAlignEdgeLineStyle, setSnapAxis, setSnapEdge, setSnapGridLineProperties, setSnapGridStyle, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToAlign, setSnapResizeToGrid, setSnapTo, setSnapToAlign, setSnapToCenterAlign, setSnapToEdgeAlign, setSnapToGrid, setSnapVDirection, setSnapVGap, setStartLine, setTabIndex, setTestDataContext, setTooltip, setTop, setTop, setUpdateTabPositionOnDraw, setUpdateTabPositionOnReparent, setUseBackMask, setUseCSSShadow, setUseDragMask, setUseGeneratedStyles, setUseImageForSVG, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setValuesManager, setVisibility, setVisible, setVisibleWhen, setWidth, setWidth100, setWorkflows, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPendingMarker, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, startDebuggingOverflow, stopDebuggingOverflow, supportsValueDictation, supportsVoiceCommands, updateChildTabPosition, updateChildTabPositions, updateEditNode, updateHover, updateHover, updateShadow, updateTabPositionForDraw, visibleAtPoint, willAcceptDrop`

  ### Methods inherited from class com.smartgwt.client.widgets.BaseWidget

  `addDrawHandler, addDynamicProperty, addDynamicProperty, addDynamicProperty, addDynamicProperty, applyFactoryProperties, clearDynamicProperty, completeCreation, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getAutoDraw, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hasDynamicProperty, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isDrawn, isFactoryCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAutoDraw, setConfig, setConfigOnly, setDefaultProperties, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString`

  ### Methods inherited from class com.google.gwt.user.client.ui.Widget

  `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents`

  ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

  `addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

  `fireEvent`

- ## Constructor Details

  - ### MenuButton

    public MenuButton()

  - ### MenuButton

    public MenuButton(JavaScriptObject jsObj)

  - ### MenuButton

    public MenuButton(String title)

  - ### MenuButton

    public MenuButton(String title, Menu menu)

- ## Method Details

  - ### getOrCreateRef

    public static MenuButton getOrCreateRef(JavaScriptObject jsObj)

  - ### changeAutoChildDefaults

    public static void changeAutoChildDefaults(String autoChildName, Canvas defaults)
    Changes the defaults for Canvas AutoChildren named `autoChildName`.
    Parameters:
      `autoChildName` - name of an AutoChild to customize the defaults for.
      `defaults` - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
    See Also:
      - `AutoChildUsage`

  - ### changeAutoChildDefaults

    public static void changeAutoChildDefaults(String autoChildName, FormItem defaults)
    Changes the defaults for FormItem AutoChildren named `autoChildName`.
    Parameters:
      `autoChildName` - name of an AutoChild to customize the defaults for.
      `defaults` - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
    See Also:
      - `AutoChildUsage`

  - ### create

    protected JavaScriptObject create()
    Overrides:
      `create` in class `Button`

  - ### setAutoDestroyMenu

    public MenuButton setAutoDestroyMenu(Boolean autoDestroyMenu)
    If this menuButton is `destroyed`, should it also destroy its `menu`?
    Parameters:
      `autoDestroyMenu` - New autoDestroyMenu value. Default value is true
    Returns:
      `MenuButton` instance, for chaining setter calls

  - ### getAutoDestroyMenu

    public Boolean getAutoDestroyMenu()
    If this menuButton is `destroyed`, should it also destroy its `menu`?
    Returns:
      Current autoDestroyMenu value. Default value is true

  - ### setEditProxyConstructor

    public MenuButton setEditProxyConstructor(String editProxyConstructor) throws IllegalStateException
    Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
    Overrides:
      `setEditProxyConstructor` in class `StatefulCanvas`
    Parameters:
      `editProxyConstructor` - New editProxyConstructor value. Default value is "MenuEditProxy"
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created
    See Also:
      - `SCClassName`

  - ### getEditProxyConstructor

    public String getEditProxyConstructor()
    Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
    Overrides:
      `getEditProxyConstructor` in class `StatefulCanvas`
    Returns:
      Current editProxyConstructor value. Default value is "MenuEditProxy"
    See Also:
      - `SCClassName`

  - ### setHiliteAccessKey

    public MenuButton setHiliteAccessKey(Boolean hiliteAccessKey) throws IllegalStateException
    If this MenuButton has a specified `accessKey`, underline it in the title of the button by default
    Overrides:
      `setHiliteAccessKey` in class `Button`
    Parameters:
      `hiliteAccessKey` - New hiliteAccessKey value. Default value is true
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created

  - ### getHiliteAccessKey

    public Boolean getHiliteAccessKey()
    If this MenuButton has a specified `accessKey`, underline it in the title of the button by default
    Overrides:
      `getHiliteAccessKey` in class `Button`
    Returns:
      Current hiliteAccessKey value. Default value is true

  - ### setIcon

    public MenuButton setIcon(String icon)
    This property corresponds to the inherited `Button.icon` property, which is used to display the menuButtonImage, so anything you attempt to set there would be clobbered by the internal usage.

    You could add an icon via the `title` property, by using `Canvas.imgHTML()` to generate an appropriate <img> tag and pre-pending it to your title.

    Overrides:
      `setIcon` in class `Button`
    Parameters:
      `icon` - New icon value. Default value is null
    Returns:
      `MenuButton` instance, for chaining setter calls
    See Also:
      - `SCImgURL`
      - `Button Icon`
      - Icons Example

  - ### getIcon

    public String getIcon()
    This property corresponds to the inherited `Button.icon` property, which is used to display the menuButtonImage, so anything you attempt to set there would be clobbered by the internal usage.

    You could add an icon via the `title` property, by using `Canvas.imgHTML()` to generate an appropriate <img> tag and pre-pending it to your title.

    Overrides:
      `getIcon` in class `Button`
    Returns:
      Current icon value. Default value is null
    See Also:
      - `SCImgURL`
      - `Button Icon`
      - Icons Example

  - ### setMenu

    public MenuButton setMenu(Menu menu)
    The menu to show.

    For a menu button with no menu (menu: null) the up/down arrow image can be suppressed by setting `showMenuButtonImage`: `false`.

    Parameters:
      `menu` - New menu value. Default value is null
    Returns:
      `MenuButton` instance, for chaining setter calls

  - ### getMenu

    public Menu getMenu()
    The menu to show.

    For a menu button with no menu (menu: null) the up/down arrow image can be suppressed by setting `showMenuButtonImage`: `false`.

    Returns:
      Current menu value. Default value is null

  - ### setMenuAlign

    public MenuButton setMenuAlign(Alignment menuAlign) throws IllegalStateException
    The horizontal alignment of this button's menu, in relation to the button. When unset, default behavior is to align the right edges of button and menu if the page is in RTL mode, and the left edges otherwise.
    Parameters:
      `menuAlign` - New menuAlign value. Default value is null
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created

  - ### getMenuAlign

    public Alignment getMenuAlign()
    The horizontal alignment of this button's menu, in relation to the button. When unset, default behavior is to align the right edges of button and menu if the page is in RTL mode, and the left edges otherwise.
    Returns:
      Current menuAlign value. Default value is null

  - ### setMenuAnimationEffect

    public MenuButton setMenuAnimationEffect(String menuAnimationEffect)
    Allows you to specify an animation effect to apply to the menu when it is being shown. Valid options are "none" (no animation), "fade", "slide" and "wipe". If unspecified falls through to `menu.showAnimationEffect`

    Note : This is an advanced setting

    Parameters:
      `menuAnimationEffect` - New menuAnimationEffect value. Default value is null
    Returns:
      `MenuButton` instance, for chaining setter calls

  - ### getMenuAnimationEffect

    public String getMenuAnimationEffect()
    Allows you to specify an animation effect to apply to the menu when it is being shown. Valid options are "none" (no animation), "fade", "slide" and "wipe". If unspecified falls through to `menu.showAnimationEffect`
    Returns:
      Current menuAnimationEffect value. Default value is null

  - ### setMenuButtonImage

    public MenuButton setMenuButtonImage(String menuButtonImage) throws IllegalStateException
    Image for menu button indicating that the button expands a menu. This image is shown for menus expanding down from the button. Menu direction is controlled by `showMenuBelow`.

    Note : This is an advanced setting

    Parameters:
      `menuButtonImage` - New menuButtonImage value. Default value is "[SKIN]menu_button.gif"
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created
    See Also:
      - `setMenuButtonImageUp(java.lang.String)`
      - `SCImgURL`

  - ### getMenuButtonImage

    public String getMenuButtonImage()
    Image for menu button indicating that the button expands a menu. This image is shown for menus expanding down from the button. Menu direction is controlled by `showMenuBelow`.
    Returns:
      Current menuButtonImage value. Default value is "[SKIN]menu_button.gif"
    See Also:
      - `getMenuButtonImageUp()`
      - `SCImgURL`

  - ### setMenuButtonImageUp

    public MenuButton setMenuButtonImageUp(String menuButtonImageUp) throws IllegalStateException
    Image for menu button indicating that the button expands a menu. This image is shown for menus expanding up from the button. Menu direction is controlled by `showMenuBelow`.

    Note : This is an advanced setting

    Parameters:
      `menuButtonImageUp` - New menuButtonImageUp value. Default value is "[SKIN]menu_button_up.gif"
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created
    See Also:
      - `setMenuButtonImage(java.lang.String)`
      - `SCImgURL`

  - ### getMenuButtonImageUp

    public String getMenuButtonImageUp()
    Image for menu button indicating that the button expands a menu. This image is shown for menus expanding up from the button. Menu direction is controlled by `showMenuBelow`.
    Returns:
      Current menuButtonImageUp value. Default value is "[SKIN]menu_button_up.gif"
    See Also:
      - `getMenuButtonImage()`
      - `SCImgURL`

  - ### setRollOverMenuHideDelay

    public MenuButton setRollOverMenuHideDelay(int rollOverMenuHideDelay) throws IllegalStateException
    When `showMenuOnRollOver` is true, this is the delay in milliseconds before the menu is automatically hidden following mouseOut.
    Parameters:
      `rollOverMenuHideDelay` - New rollOverMenuHideDelay value. Default value is 250
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created

  - ### getRollOverMenuHideDelay

    public int getRollOverMenuHideDelay()
    When `showMenuOnRollOver` is true, this is the delay in milliseconds before the menu is automatically hidden following mouseOut.
    Returns:
      Current rollOverMenuHideDelay value. Default value is 250

  - ### setShowMenuBelow

    public MenuButton setShowMenuBelow(Boolean showMenuBelow)
    The menu drops down below the menu button. Set to false if the menu should appear above the menu button.

    Note that this setting may be ignored if it would cause the menu to be clipped by the browser viewport.
    If this method is called after the component has been drawn/initialized: Setter for the 'showMenuButtonBelow' property - determines whether the menu will be shown above or below the `MenuButton`.

    Parameters:
      `showMenuBelow` - True if the menu should be shown below the `MenuButton`. Default value is true
    Returns:
      `MenuButton` instance, for chaining setter calls

  - ### getShowMenuBelow

    public Boolean getShowMenuBelow()
    The menu drops down below the menu button. Set to false if the menu should appear above the menu button.

    Note that this setting may be ignored if it would cause the menu to be clipped by the browser viewport.

    Returns:
      Current showMenuBelow value. Default value is true

  - ### setShowMenuButtonImage

    public MenuButton setShowMenuButtonImage(Boolean showMenuButtonImage) throws IllegalStateException
    Show menu button image (up / down arrowhead) for this menu button.
    If this method is called after the component has been drawn/initialized: Setter for the 'showMenuButtonImage' property - shows/hides the menu button image at runtime.
    Parameters:
      `showMenuButtonImage` - Should the image be shown. Default value is true
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created

  - ### getShowMenuButtonImage

    public Boolean getShowMenuButtonImage()
    Show menu button image (up / down arrowhead) for this menu button.
    Returns:
      Current showMenuButtonImage value. Default value is true

  - ### setShowMenuOnRollOver

    public MenuButton setShowMenuOnRollOver(Boolean showMenuOnRollOver) throws IllegalStateException
    Should the menu be shown automatically when the mouse moves over the button?

    When enabled, menus used with this `MenuButton` should not be used with any other component.

    Parameters:
      `showMenuOnRollOver` - New showMenuOnRollOver value. Default value is false
    Returns:
      `MenuButton` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created

  - ### getShowMenuOnRollOver

    public Boolean getShowMenuOnRollOver()
    Should the menu be shown automatically when the mouse moves over the button?

    When enabled, menus used with this `MenuButton` should not be used with any other component.

    Returns:
      Current showMenuOnRollOver value. Default value is false

  - ### setTitle

    public void setTitle(String title)
    Default title for the button.
    Overrides:
      `setTitle` in class `Button`
    Parameters:
      `title` - New title value. Default value is "Show Menu"
    See Also:
      - `HTMLString`
      - States Example

  - ### getTitle

    public String getTitle()
    Default title for the button.
    Overrides:
      `getTitle` in class `Button`
    Returns:
      Current title value. Default value is "Show Menu"
    See Also:
      - `HTMLString`
      - States Example

  - ### showMenu

    public void showMenu()
    Programmatically forces this MenuButton to show it's menu.

  - ### setDefaultProperties

    public static void setDefaultProperties(MenuButton menuButtonProperties)
    Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

    Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

    Parameters:
      `menuButtonProperties` - properties that should be used as new defaults when instances of this class are created
    See Also:
      - `SGWTProperties`

  - ### setLogicalStructure

    public LogicalStructureObject setLogicalStructure(MenuButtonLogicalStructure s)
    Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

  - ### getLogicalStructure

    public LogicalStructureObject getLogicalStructure()
    Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    Specified by:
      `getLogicalStructure` in interface `LogicalStructure`
    Overrides:
      `getLogicalStructure` in class `Button`