com.smartgwt.client.widgets

## Class Button

- 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

- All Implemented Interfaces:
    com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.HasVisibility, com.google.gwt.user.client.ui.IsWidget, LogicalStructure, 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, HasScrolledHandlers, HasShowContextMenuHandlers, HasTitleHoverHandlers, HasVisibilityChangedHandlers
  Direct Known Subclasses:
    IconButton, Label, MenuButton, NavigationButton

      public class Button
      extends StatefulCanvas
      implements HasIconClickHandlers, HasTitleHoverHandlers

  The Button widget class implements interactive, style-based button widgets.

- - ### Nested Class Summary

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

      `com.google.gwt.user.client.ui.UIObject.DebugIdImpl, com.google.gwt.user.client.ui.UIObject.DebugIdImplEnabled`

  - ### Field Summary

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

      `config, configOnly, id, isElementSet, nativeObject, scClassName`

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

      `DEBUG_ID_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Button()`
    `Button(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `Button(java.lang.String title)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `action()` This property contains the default 'action' for the Button to fire when activated.
    `com.google.gwt.event.shared.HandlerRegistration` | `addIconClickHandler(IconClickHandler handler)` Add a iconClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addTitleHoverHandler(TitleHoverHandler handler)` Add a titleHover handler.
    `void` | `addToRadioGroup(java.lang.String groupID)` Add this widget to the specified mutually exclusive selection group with the ID passed in.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)` Changes the defaults for Canvas AutoChildren named `autoChildName`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)` Changes the defaults for FormItem AutoChildren named `autoChildName`.
    `protected com.google.gwt.core.client.JavaScriptObject` | `create()`
    `void` | `deselect()` Select this object.
    `SelectionType` | `getActionType()` Behavior on state changes -- BUTTON, RADIO or CHECKBOX
    `Alignment` | `getAlign()` Horizontal alignment of this component's title.
    `java.lang.Boolean` | `getAutoFit()` If true, ignore the specified size of this widget and always size just large enough to accommodate the title.
    `java.lang.String` | `getBaseStyle()` Base CSS style.
    `java.lang.Boolean` | `getHiliteAccessKey()` If set to true, if the `title` of this button contains the specified `accessKey`, when the title is displayed to the user it will be modified to include HTML to underline the accessKey. Note that this property may cause titles that include HTML (rather than simple strings) to be inappropriately modified, so should be disabled if your title string includes HTML characters.
    `java.lang.String` | `getIcon()` Optional icon to be shown with the button title text.
    `java.lang.String` | `getIconAlign()` If this button is showing an icon should it be right or left aligned?
    `java.lang.Integer` | `getIconHeight()` Height in pixels of the icon image.
    `java.lang.String` | `getIconOrientation()` If this button is showing an icon should it appear to the left or right of the title? valid options are `"left"` and `"right"`.
    `int` | `getIconSize()` Size in pixels of the icon image.
    `java.lang.Integer` | `getIconWidth()` Width in pixels of the icon image.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `getLogicalStructure()`
    `static Button` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `java.lang.String` | `getRadioGroup()` String identifier for this canvas's mutually exclusive selection group.
    `java.lang.Boolean` | `getSelected()` Whether this component is selected.
    `java.lang.Boolean` | `getShowClippedTitleOnHover()` If true and the title is clipped, then a hover containing the full title of this button is enabled.
    `java.lang.Boolean` | `getShowDisabled()` Should we visibly change state when disabled?
    `java.lang.Boolean` | `getShowDisabledIcon()` If using an icon for this button, whether to switch the icon image if the button becomes disabled.
    `java.lang.Boolean` | `getShowDown()` Should we visibly change state when the mouse goes down in this object?
    `java.lang.Boolean` | `getShowDownIcon()` If using an icon for this button, whether to switch the icon image when the mouse goes down on the button.
    `java.lang.Boolean` | `getShowFocused()` Should we visibly change state when the canvas receives focus? If `showFocusedAsOver` is `true`, the `"over"` will be used to indicate focus.
    `java.lang.Boolean` | `getShowFocusedIcon()` If using an icon for this button, whether to switch the icon image when the button receives focus.
    `java.lang.Boolean` | `getShowRollOver()` Should we visibly change state when the mouse goes over this object?
    `java.lang.Boolean` | `getShowRollOverIcon()` If using an icon for this button, whether to switch the icon image on mouse rollover.
    `java.lang.Boolean` | `getShowSelectedIcon()` If using an icon for this button, whether to switch the icon image when the button becomes selected.
    `State` | `getState()` Current "state" of this widget.
    `java.lang.String` | `getTitle()` The text title to display in this button.
    `VerticalAlignment` | `getValign()` Vertical alignment of this component's title.
    `java.lang.Boolean` | `getWrap()` A boolean indicating whether the button's title should word-wrap, if necessary.
    `java.lang.Boolean` | `isSelected()` Find out if this object is selected
    `void` | `removeFromRadioGroup()` Remove this widget from the specified mutually exclusive selection group with the ID passed in.
    `void` | `removeFromRadioGroup(java.lang.String groupID)` Remove this widget from the specified mutually exclusive selection group with the ID passed in.
    `void` | `select()` Select this object.
    `void` | `setActionType(SelectionType actionType)` Behavior on state changes -- BUTTON, RADIO or CHECKBOX If this method is called after the component has been drawn/initialized: Update the 'actionType' for this canvas (radio / checkbox / button) If the canvas is currently selected, and the passed in actionType is 'button' this method will deselect the canvas.
    `void` | `setAlign(Alignment align)` Horizontal alignment of this component's title.
    `void` | `setAutoFit(java.lang.Boolean autoFit)` If true, ignore the specified size of this widget and always size just large enough to accommodate the title.
    `void` | `setBaseStyle(java.lang.String baseStyle)` Base CSS style.
    `static void` | `setDefaultProperties(Button buttonProperties)` Class level method to set the default properties of this class.
    `void` | `setDisabled(boolean disabled)` Enable or disable this object
    `void` | `setHiliteAccessKey(java.lang.Boolean hiliteAccessKey)` If set to true, if the `title` of this button contains the specified `accessKey`, when the title is displayed to the user it will be modified to include HTML to underline the accessKey. Note that this property may cause titles that include HTML (rather than simple strings) to be inappropriately modified, so should be disabled if your title string includes HTML characters.
    `void` | `setIcon(java.lang.String icon)` Optional icon to be shown with the button title text.
    `void` | `setIconAlign(java.lang.String iconAlign)` If this button is showing an icon should it be right or left aligned?
    `void` | `setIconHeight(java.lang.Integer iconHeight)` Height in pixels of the icon image.
    `void` | `setIconOrientation(java.lang.String iconOrientation)` If this button is showing an icon should it appear to the left or right of the title? valid options are `"left"` and `"right"`.
    `void` | `setIconSize(int iconSize)` Size in pixels of the icon image.
    `void` | `setIconWidth(java.lang.Integer iconWidth)` Width in pixels of the icon image.
    `void` | `setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `setLogicalStructure(com.smartgwt.logicalstructure.widgets.ButtonLogicalStructure s)`
    `void` | `setRadioGroup(java.lang.String radioGroup)` String identifier for this canvas's mutually exclusive selection group.
    `void` | `setSelected(java.lang.Boolean selected)` Whether this component is selected.
    `void` | `setShowClippedTitleOnHover(java.lang.Boolean showClippedTitleOnHover)` If true and the title is clipped, then a hover containing the full title of this button is enabled.
    `void` | `setShowDisabled(java.lang.Boolean showDisabled)` Should we visibly change state when disabled?
    `void` | `setShowDisabledIcon(java.lang.Boolean showDisabledIcon)` If using an icon for this button, whether to switch the icon image if the button becomes disabled.
    `void` | `setShowDown(java.lang.Boolean showDown)` Should we visibly change state when the mouse goes down in this object?
    `void` | `setShowDownIcon(java.lang.Boolean showDownIcon)` If using an icon for this button, whether to switch the icon image when the mouse goes down on the button.
    `void` | `setShowFocused(java.lang.Boolean showFocused)` Should we visibly change state when the canvas receives focus? If `showFocusedAsOver` is `true`, the `"over"` will be used to indicate focus.
    `void` | `setShowFocusedIcon(java.lang.Boolean showFocusedIcon)` If using an icon for this button, whether to switch the icon image when the button receives focus.
    `void` | `setShowRollOver(java.lang.Boolean showRollOver)` Should we visibly change state when the mouse goes over this object?
    `void` | `setShowRollOverIcon(java.lang.Boolean showRollOverIcon)` If using an icon for this button, whether to switch the icon image on mouse rollover.
    `void` | `setShowSelectedIcon(java.lang.Boolean showSelectedIcon)` If using an icon for this button, whether to switch the icon image when the button becomes selected.
    `void` | `setState(State state)` Current "state" of this widget.
    `void` | `setTitle(java.lang.String title)` The text title to display in this button.
    `void` | `setTitleHoverFormatter(TitleHoverFormatter formatter)` Provide a custom implementation of `titleHoverHTML(java.lang.String)`.
    `void` | `setVAlign()` Sets the vertical alignment of this buttons content.
    `void` | `setValign(VerticalAlignment valign)` Vertical alignment of this component's title.
    `void` | `setWrap(java.lang.Boolean wrap)` A boolean indicating whether the button's title should word-wrap, if necessary.
    `boolean` | `titleClipped()` Is the title of this button clipped?
    `java.lang.String` | `titleHoverHTML(java.lang.String defaultHTML)` Returns the HTML that is displayed by the default `titleHover` handler.

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

      `getOverCanvas, getOverCanvasConstructor, getRedrawOnStateChange, getShowFocusedAsOver, getShowOverCanvas, getStateSuffix, setDefaultProperties, setLogicalStructure, setOverCanvasConstructor, setRedrawOnStateChange, setShowFocusedAsOver, setShowOverCanvas, setTitleStyle`

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

      `addChild, addChild, addChild, addChild, addChild, 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, addScrolledHandler, addShowContextMenuHandler, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsFocus, containsPoint, containsPoint, deparent, depeer, disable, enable, focus, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaRole, getAutoDraw, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getClassName, getContentElement, getContents, getContextMenu, getCursor, getDataPath, getDefaultHeight, getDefaultWidth, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragType, getDropTypes, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFormItemAutoChild, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverComponent, getHoverDelay, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapOrigin, getHSnapOrigin, getHSnapPosition, getHSnapPosition, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getKeepInParentRect, getLayoutAlign, getLeft, getLeftAsString, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getMargin, getMasterElement, getMatchElement, getMaxHeight, getMaxWidth, getMenuConstructor, getMinHeight, getMinWidth, getMouseStillDownDelay, getMouseStillDownInitialDelay, getNextZIndex, getNoDoubleClicks, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getOverflow, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getParentElement, getPeers, getPercentBox, getPercentSource, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrompt, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowDepth, getShadowImage, getShadowOffset, getShadowSoftness, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowResizeBar, getShowShadow, getSkinImgDir, getSnapAxis, getSnapEdge, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapResizeToGrid, getSnapTo, getSnapToGrid, getSnapVDirection, getSnapVGap, getStyleName, getTabIndex, getTestInstance, getTooltip, getTop, getTopAsString, getTopElement, getUseBackMask, getUseOpacityFilter, getValuesManager, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWidth, getVSnapOrigin, getVSnapOrigin, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideContextMenu, imgHTML, imgHTML, imgHTML, intersects, isDirty, isDisabled, isDrawn, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, onInit, parentResized, printComponents, redraw, redraw, removeChild, removeChild, removePeer, removePeer, resizeBy, resizeTo, resizeTo, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAllowExternalFilters, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoDraw, setAutoHeight, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBottom, setCanAcceptDrop, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setCanvasItem, setChildren, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setContents, setContextMenu, setCursor, setDataPath, setDefaultHeight, setDefaultProperties, setDefaultWidth, setDisabledCursor, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragType, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setExtraSpace, setFacetId, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupTitle, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverDelay, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlPosition, setImage, setImage, setIsGroup, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeft, setLeft, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLogicalStructure, setMargin, setMatchElement, setMaxHeight, setMaxWidth, setMenuConstructor, setMinHeight, setMinWidth, setMouseStillDownDelay, setMouseStillDownInitialDelay, setNeverUseFilters, setNoDoubleClicks, setOpacity, setOverflow, setPadding, setPageLeft, setPageTop, setParentElement, setPeers, setPercentBox, setPercentSource, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrompt, setRect, setRect, setRedrawOnResize, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setScrollbarConstructor, setScrollbarSize, setShadowDepth, setShadowImage, setShadowOffset, setShadowSoftness, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowResizeBar, setShowShadow, setSkinImgDir, setSmoothFade, setSnapAxis, setSnapEdge, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToGrid, setSnapTo, setSnapToGrid, setSnapVDirection, setSnapVGap, setStyleName, setTabIndex, setTooltip, setTop, setTop, setUseBackMask, setUseOpacityFilter, setValuesManager, setVisibility, setVisible, setWidth, setWidth, setWidth100, setZIndex, shouldDragScroll, show, showClickMask, showNextTo, showNextTo, showNextTo, showNextTo, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, updateHover, updateHover, updateShadow, visibleAtPoint, willAcceptDrop`

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

      `addDrawHandler, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getElement, getElement, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDragTracker, setElement, setHtmlElement, setID, 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`

    - ### 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, unsinkEvents`

    - ### 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 Detail

    - #### Button

          public Button()

    - #### Button

          public Button(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### Button

          public Button(java.lang.String title)

  - ### Method Detail

    - #### getOrCreateRef

          public static Button getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### setJavaScriptObject

          public void setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj)

      Overrides:
        `setJavaScriptObject` in class `StatefulCanvas`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.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.
      See Also:
        `AutoChildUsage`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.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.
      See Also:
        `AutoChildUsage`

    - #### create

          protected com.google.gwt.core.client.JavaScriptObject create()

      Overrides:
        `create` in class `StatefulCanvas`

    - #### setActionType

          public void setActionType(SelectionType actionType)

      Behavior on state changes -- BUTTON, RADIO or CHECKBOX
      If this method is called after the component has been drawn/initialized: Update the 'actionType' for this canvas (radio / checkbox / button) If the canvas is currently selected, and the passed in actionType is 'button' this method will deselect the canvas.
      Overrides:
        `setActionType` in class `StatefulCanvas`
      Parameters:
        `actionType` - actionType Default value is "button"
      See Also:
        `State overview and related methods`, Radio / Toggle Behavior Example

    - #### getActionType

          public SelectionType getActionType()

      Behavior on state changes -- BUTTON, RADIO or CHECKBOX
      Overrides:
        `getActionType` in class `StatefulCanvas`
      Returns:
        Return the 'actionType' for this canvas (radio / checkbox / button)
      See Also:
        `State overview and related methods`, Radio / Toggle Behavior Example

    - #### setAlign

          public void setAlign(Alignment align)

      Horizontal alignment of this component's title.
      If this method is called after the component has been drawn/initialized: Sets the (horizontal) alignment of this buttons content.
      Overrides:
        `setAlign` in class `StatefulCanvas`
      Parameters:
        `align` - align Default value is Canvas.CENTER
      See Also:
        `Appearance overview and related methods`

    - #### getAlign

          public Alignment getAlign()

      Horizontal alignment of this component's title.
      Overrides:
        `getAlign` in class `StatefulCanvas`
      Returns:
        Alignment
      See Also:
        `Appearance overview and related methods`

    - #### setAutoFit

          public void setAutoFit(java.lang.Boolean autoFit)

      If true, ignore the specified size of this widget and always size just large enough to accommodate the title. If `setWidth()` is explicitly called on an autoFit:true button, autoFit will be reset to `false`.

      Note that for StretchImgButton instances, autoFit will occur horizontally only, as unpredictable vertical sizing is likely to distort the media. If you do want vertical auto-fit, this can be achieved by simply setting a small height, and having overflow:"visible"
      If this method is called after the component has been drawn/initialized: Setter method for the `autoFit` property. Pass in true or false to turn autoFit on or off. When autoFit is set to `false`, canvas will be resized to it's previously specified size.

      Overrides:
        `setAutoFit` in class `StatefulCanvas`
      Parameters:
        `autoFit` - New autoFit setting.. Default value is null
      See Also:
        `Sizing overview and related methods`, Auto Fit Example

    - #### getAutoFit

          public java.lang.Boolean getAutoFit()

      If true, ignore the specified size of this widget and always size just large enough to accommodate the title. If `setWidth()` is explicitly called on an autoFit:true button, autoFit will be reset to `false`.

      Note that for StretchImgButton instances, autoFit will occur horizontally only, as unpredictable vertical sizing is likely to distort the media. If you do want vertical auto-fit, this can be achieved by simply setting a small height, and having overflow:"visible"

      Overrides:
        `getAutoFit` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `Sizing overview and related methods`, Auto Fit Example

    - #### setBaseStyle

          public void setBaseStyle(java.lang.String baseStyle)

      Base CSS style. As the component changes state and/or is selected, suffixes will be added to the base style.

      When the component changes state (eg becomes disabled), a suffix will be appended to this style name, reflecting the following states: "Over", "Down", or "Disabled".

      If the widget is selected, the suffixes will be "Selected", "SelectedOver", etc.

      If the widget has focus and `showFocused` is true, and `showFocusedAsOver` is false, the suffixes will be "Focused", "FocusedOver", etc, or if the widget is both selected and focused, "SelectedFocused", "SelectedFocusedOver", etc.

      For example, if `baseStyle` is set to "button", this component is `selected` and the mouse cursor is over this component, the style "buttonSelectedOver" will be used.
      If this method is called after the component has been drawn/initialized: Sets the base CSS style. As the component changes state and/or is selected, suffixes will be added to the base style.

      Overrides:
        `setBaseStyle` in class `StatefulCanvas`
      Parameters:
        `baseStyle` - new base style. See `CSSStyleName`. Default value is "button"

    - #### getBaseStyle

          public java.lang.String getBaseStyle()

      Base CSS style. As the component changes state and/or is selected, suffixes will be added to the base style.

      When the component changes state (eg becomes disabled), a suffix will be appended to this style name, reflecting the following states: "Over", "Down", or "Disabled".

      If the widget is selected, the suffixes will be "Selected", "SelectedOver", etc.

      If the widget has focus and `showFocused` is true, and `showFocusedAsOver` is false, the suffixes will be "Focused", "FocusedOver", etc, or if the widget is both selected and focused, "SelectedFocused", "SelectedFocusedOver", etc.

      For example, if `baseStyle` is set to "button", this component is `selected` and the mouse cursor is over this component, the style "buttonSelectedOver" will be used.

      Overrides:
        `getBaseStyle` in class `StatefulCanvas`
      Returns:
        . See `CSSStyleName`

    - #### setHiliteAccessKey

          public void setHiliteAccessKey(java.lang.Boolean hiliteAccessKey)

      If set to true, if the `title` of this button contains the specified `accessKey`, when the title is displayed to the user it will be modified to include HTML to underline the accessKey.
      Note that this property may cause titles that include HTML (rather than simple strings) to be inappropriately modified, so should be disabled if your title string includes HTML characters.
      Parameters:
        `hiliteAccessKey` - hiliteAccessKey Default value is null

    - #### getHiliteAccessKey

          public java.lang.Boolean getHiliteAccessKey()

      If set to true, if the `title` of this button contains the specified `accessKey`, when the title is displayed to the user it will be modified to include HTML to underline the accessKey.
      Note that this property may cause titles that include HTML (rather than simple strings) to be inappropriately modified, so should be disabled if your title string includes HTML characters.
      Returns:
        Boolean

    - #### setIcon

          public void setIcon(java.lang.String icon)

      Optional icon to be shown with the button title text.

      Specify as the partial URL to an image, relative to the imgDir of this component.
      If this method is called after the component has been drawn/initialized: Change the icon being shown next to the title text.

      Overrides:
        `setIcon` in class `StatefulCanvas`
      Parameters:
        `icon` - URL of new icon. See `SCImgURL`. Default value is null
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### getIcon

          public java.lang.String getIcon()

      Optional icon to be shown with the button title text.

      Specify as the partial URL to an image, relative to the imgDir of this component.

      Overrides:
        `getIcon` in class `StatefulCanvas`
      Returns:
        . See `SCImgURL`
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### setIconAlign

          public void setIconAlign(java.lang.String iconAlign)
                            throws java.lang.IllegalStateException

      If this button is showing an icon should it be right or left aligned?
      Parameters:
        `iconAlign` - . See `String`. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getIconAlign

          public java.lang.String getIconAlign()

      If this button is showing an icon should it be right or left aligned?
      Returns:
        . See `String`
      See Also:
        `ButtonIcon overview and related methods`

    - #### setIconHeight

          public void setIconHeight(java.lang.Integer iconHeight)
                             throws java.lang.IllegalStateException

      Height in pixels of the icon image.

      If unset, defaults to `iconSize`

      Overrides:
        `setIconHeight` in class `StatefulCanvas`
      Parameters:
        `iconHeight` - iconHeight Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getIconHeight

          public java.lang.Integer getIconHeight()

      Height in pixels of the icon image.

      If unset, defaults to `iconSize`

      Overrides:
        `getIconHeight` in class `StatefulCanvas`
      Returns:
        Integer
      See Also:
        `ButtonIcon overview and related methods`

    - #### setIconOrientation

          public void setIconOrientation(java.lang.String iconOrientation)
                                  throws java.lang.IllegalStateException

      If this button is showing an icon should it appear to the left or right of the title? valid options are `"left"` and `"right"`.
      If this method is called after the component has been drawn/initialized: Changes the orientation of the icon relative to the text of the button.
      Overrides:
        `setIconOrientation` in class `StatefulCanvas`
      Parameters:
        `iconOrientation` - The new orientation of the icon relative to the text of the button.. See `String`. Default value is "left"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### getIconOrientation

          public java.lang.String getIconOrientation()

      If this button is showing an icon should it appear to the left or right of the title? valid options are `"left"` and `"right"`.
      Overrides:
        `getIconOrientation` in class `StatefulCanvas`
      Returns:
        . See `String`
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### setIconSize

          public void setIconSize(int iconSize)
                           throws java.lang.IllegalStateException

      Size in pixels of the icon image.

      The `iconWidth` and `iconHeight` properties can be used to configure width and height separately.

      Overrides:
        `setIconSize` in class `StatefulCanvas`
      Parameters:
        `iconSize` - iconSize Default value is 16
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getIconSize

          public int getIconSize()

      Size in pixels of the icon image.

      The `iconWidth` and `iconHeight` properties can be used to configure width and height separately.

      Overrides:
        `getIconSize` in class `StatefulCanvas`
      Returns:
        int
      See Also:
        `ButtonIcon overview and related methods`

    - #### setIconWidth

          public void setIconWidth(java.lang.Integer iconWidth)
                            throws java.lang.IllegalStateException

      Width in pixels of the icon image.

      If unset, defaults to `iconSize`

      Overrides:
        `setIconWidth` in class `StatefulCanvas`
      Parameters:
        `iconWidth` - iconWidth Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getIconWidth

          public java.lang.Integer getIconWidth()

      Width in pixels of the icon image.

      If unset, defaults to `iconSize`

      Overrides:
        `getIconWidth` in class `StatefulCanvas`
      Returns:
        Integer
      See Also:
        `ButtonIcon overview and related methods`

    - #### setRadioGroup

          public void setRadioGroup(java.lang.String radioGroup)

      String identifier for this canvas's mutually exclusive selection group.

      Note : This is an advanced setting

      Overrides:
        `setRadioGroup` in class `StatefulCanvas`
      Parameters:
        `radioGroup` - . See `String`. Default value is null
      See Also:
        `State overview and related methods`, Radio / Toggle Behavior Example

    - #### getRadioGroup

          public java.lang.String getRadioGroup()

      String identifier for this canvas's mutually exclusive selection group.
      Overrides:
        `getRadioGroup` in class `StatefulCanvas`
      Returns:
        . See `String`
      See Also:
        `State overview and related methods`, Radio / Toggle Behavior Example

    - #### setSelected

          public void setSelected(java.lang.Boolean selected)

      Whether this component is selected. For some components, selection affects appearance.
      If this method is called after the component has been drawn/initialized: Select this object.
      Overrides:
        `setSelected` in class `StatefulCanvas`
      Parameters:
        `selected` - selected Default value is false
      See Also:
        `State overview and related methods`

    - #### getSelected

          public java.lang.Boolean getSelected()

      Whether this component is selected. For some components, selection affects appearance.
      Overrides:
        `getSelected` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `State overview and related methods`

    - #### setShowClippedTitleOnHover

          public void setShowClippedTitleOnHover(java.lang.Boolean showClippedTitleOnHover)

      If true and the title is clipped, then a hover containing the full title of this button is enabled.
      Parameters:
        `showClippedTitleOnHover` - showClippedTitleOnHover Default value is false

    - #### getShowClippedTitleOnHover

          public java.lang.Boolean getShowClippedTitleOnHover()

      If true and the title is clipped, then a hover containing the full title of this button is enabled.
      Returns:
        Boolean

    - #### setShowDisabled

          public void setShowDisabled(java.lang.Boolean showDisabled)

      Should we visibly change state when disabled?
      Overrides:
        `setShowDisabled` in class `StatefulCanvas`
      Parameters:
        `showDisabled` - showDisabled Default value is true
      See Also:
        `State overview and related methods`, States Example

    - #### getShowDisabled

          public java.lang.Boolean getShowDisabled()

      Should we visibly change state when disabled?
      Overrides:
        `getShowDisabled` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `State overview and related methods`, States Example

    - #### setShowDisabledIcon

          public void setShowDisabledIcon(java.lang.Boolean showDisabledIcon)
                                   throws java.lang.IllegalStateException

      If using an icon for this button, whether to switch the icon image if the button becomes disabled.
      Overrides:
        `setShowDisabledIcon` in class `StatefulCanvas`
      Parameters:
        `showDisabledIcon` - showDisabledIcon Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getShowDisabledIcon

          public java.lang.Boolean getShowDisabledIcon()

      If using an icon for this button, whether to switch the icon image if the button becomes disabled.
      Overrides:
        `getShowDisabledIcon` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `ButtonIcon overview and related methods`

    - #### setShowDown

          public void setShowDown(java.lang.Boolean showDown)

      Should we visibly change state when the mouse goes down in this object?
      Overrides:
        `setShowDown` in class `StatefulCanvas`
      Parameters:
        `showDown` - showDown Default value is false
      See Also:
        `State overview and related methods`, States Example

    - #### getShowDown

          public java.lang.Boolean getShowDown()

      Should we visibly change state when the mouse goes down in this object?
      Overrides:
        `getShowDown` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `State overview and related methods`, States Example

    - #### setShowDownIcon

          public void setShowDownIcon(java.lang.Boolean showDownIcon)
                               throws java.lang.IllegalStateException

      If using an icon for this button, whether to switch the icon image when the mouse goes down on the button.
      Overrides:
        `setShowDownIcon` in class `StatefulCanvas`
      Parameters:
        `showDownIcon` - showDownIcon Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### getShowDownIcon

          public java.lang.Boolean getShowDownIcon()

      If using an icon for this button, whether to switch the icon image when the mouse goes down on the button.
      Overrides:
        `getShowDownIcon` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### setShowFocused

          public void setShowFocused(java.lang.Boolean showFocused)

      Should we visibly change state when the canvas receives focus? If `showFocusedAsOver` is `true`, the `"over"` will be used to indicate focus. Otherwise a separate `"focused"` state will be used.
      Overrides:
        `setShowFocused` in class `StatefulCanvas`
      Parameters:
        `showFocused` - showFocused Default value is false
      See Also:
        `State overview and related methods`

    - #### getShowFocused

          public java.lang.Boolean getShowFocused()

      Should we visibly change state when the canvas receives focus? If `showFocusedAsOver` is `true`, the `"over"` will be used to indicate focus. Otherwise a separate `"focused"` state will be used.
      Overrides:
        `getShowFocused` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `State overview and related methods`

    - #### setShowFocusedIcon

          public void setShowFocusedIcon(java.lang.Boolean showFocusedIcon)
                                  throws java.lang.IllegalStateException

      If using an icon for this button, whether to switch the icon image when the button receives focus.

      If `showFocusedAsOver` is true, the `"Over"` icon will be displayed when the canvas has focus, otherwise a separate `"Focused"` icon will be displayed

      Overrides:
        `setShowFocusedIcon` in class `StatefulCanvas`
      Parameters:
        `showFocusedIcon` - showFocusedIcon Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getShowFocusedIcon

          public java.lang.Boolean getShowFocusedIcon()

      If using an icon for this button, whether to switch the icon image when the button receives focus.

      If `showFocusedAsOver` is true, the `"Over"` icon will be displayed when the canvas has focus, otherwise a separate `"Focused"` icon will be displayed

      Overrides:
        `getShowFocusedIcon` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `ButtonIcon overview and related methods`

    - #### setShowRollOver

          public void setShowRollOver(java.lang.Boolean showRollOver)

      Should we visibly change state when the mouse goes over this object?
      Overrides:
        `setShowRollOver` in class `StatefulCanvas`
      Parameters:
        `showRollOver` - showRollOver Default value is false
      See Also:
        `State overview and related methods`, States Example

    - #### getShowRollOver

          public java.lang.Boolean getShowRollOver()

      Should we visibly change state when the mouse goes over this object?
      Overrides:
        `getShowRollOver` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `State overview and related methods`, States Example

    - #### setShowRollOverIcon

          public void setShowRollOverIcon(java.lang.Boolean showRollOverIcon)
                                   throws java.lang.IllegalStateException

      If using an icon for this button, whether to switch the icon image on mouse rollover.
      Overrides:
        `setShowRollOverIcon` in class `StatefulCanvas`
      Parameters:
        `showRollOverIcon` - showRollOverIcon Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getShowRollOverIcon

          public java.lang.Boolean getShowRollOverIcon()

      If using an icon for this button, whether to switch the icon image on mouse rollover.
      Overrides:
        `getShowRollOverIcon` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `ButtonIcon overview and related methods`

    - #### setShowSelectedIcon

          public void setShowSelectedIcon(java.lang.Boolean showSelectedIcon)
                                   throws java.lang.IllegalStateException

      If using an icon for this button, whether to switch the icon image when the button becomes selected.
      Overrides:
        `setShowSelectedIcon` in class `StatefulCanvas`
      Parameters:
        `showSelectedIcon` - showSelectedIcon Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ButtonIcon overview and related methods`

    - #### getShowSelectedIcon

          public java.lang.Boolean getShowSelectedIcon()

      If using an icon for this button, whether to switch the icon image when the button becomes selected.
      Overrides:
        `getShowSelectedIcon` in class `StatefulCanvas`
      Returns:
        Boolean
      See Also:
        `ButtonIcon overview and related methods`

    - #### setState

          public void setState(State state)

      Current "state" of this widget. StatefulCanvases will have a different appearance based on their current state. By default this is handled by changing the css className applied to the StatefulCanvas - see `baseStyle` for a description of how this is done.

      For `Img` or `StretchImg` based subclasses of StatefulCanvas, the appearance may also be updated by changing the src of the rendered image. See `src` and `src` for a description of how the URL is modified to reflect the state of the widget in this case.
      If this method is called after the component has been drawn/initialized: Sets the `state` of this object, changing its appearance. Note: `newState` cannot be `State.STATE_DISABLED` if `this.showDisabled` is `false`.

      Note : This is an advanced setting

      Overrides:
        `setState` in class `StatefulCanvas`
      Parameters:
        `state` - the new state.. Default value is ""
      See Also:
        `State`, `State overview and related methods`

    - #### getState

          public State getState()

      Current "state" of this widget. StatefulCanvases will have a different appearance based on their current state. By default this is handled by changing the css className applied to the StatefulCanvas - see `baseStyle` for a description of how this is done.

      For `Img` or `StretchImg` based subclasses of StatefulCanvas, the appearance may also be updated by changing the src of the rendered image. See `src` and `src` for a description of how the URL is modified to reflect the state of the widget in this case.

      Overrides:
        `getState` in class `StatefulCanvas`
      Returns:
        Return the state of this StatefulCanvas
      See Also:
        `State`, `State overview and related methods`

    - #### setTitle

          public void setTitle(java.lang.String title)

      The text title to display in this button.
      If this method is called after the component has been drawn/initialized: Set the title.
      Overrides:
        `setTitle` in class `StatefulCanvas`
      Parameters:
        `title` - new title. See `String`. Default value is "Untitled Button"
      See Also:
        `Basics overview and related methods`, States Example

    - #### getTitle

          public java.lang.String getTitle()

      The text title to display in this button.
      Overrides:
        `getTitle` in class `StatefulCanvas`
      Returns:
        Return the title - text/HTML drawn inside the component.

        Default is to simply return this.title.. See `String`

      See Also:
        `Basics overview and related methods`, States Example

    - #### setValign

          public void setValign(VerticalAlignment valign)

      Vertical alignment of this component's title.
      If this method is called after the component has been drawn/initialized: Sets the vertical alignment of this buttons content.
      Overrides:
        `setValign` in class `StatefulCanvas`
      Parameters:
        `valign` - valign Default value is Canvas.CENTER
      See Also:
        `Appearance overview and related methods`

    - #### getValign

          public VerticalAlignment getValign()

      Vertical alignment of this component's title.
      Overrides:
        `getValign` in class `StatefulCanvas`
      Returns:
        VerticalAlignment
      See Also:
        `Appearance overview and related methods`

    - #### setWrap

          public void setWrap(java.lang.Boolean wrap)

      A boolean indicating whether the button's title should word-wrap, if necessary.
      If this method is called after the component has been drawn/initialized: Set whether the title of this button should be allowed to wrap if too long for the button's specified width.
      Parameters:
        `wrap` - whether to wrap the title. Default value is false
      See Also:
        `Basics overview and related methods`

    - #### getWrap

          public java.lang.Boolean getWrap()

      A boolean indicating whether the button's title should word-wrap, if necessary.
      Returns:
        Boolean
      See Also:
        `Basics overview and related methods`

    - #### action

          public void action()

      This property contains the default 'action' for the Button to fire when activated.

    - #### addToRadioGroup

          public void addToRadioGroup(java.lang.String groupID)

      Add this widget to the specified mutually exclusive selection group with the ID passed in. Selecting this widget will then deselect any other StatefulCanvases with the same radioGroup ID. StatefulCanvases can belong to only one radioGroup, so this method will remove from any other radiogroup of which this button is already a member.
      Overrides:
        `addToRadioGroup` in class `StatefulCanvas`
      Parameters:
        `groupID` - - ID of the radiogroup to which this widget should be added
      See Also:
        `State overview and related methods`

    - #### deselect

          public void deselect()

      Select this object.
      Overrides:
        `deselect` in class `StatefulCanvas`
      See Also:
        `State overview and related methods`

    - #### addIconClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addIconClickHandler(IconClickHandler handler)

      Add a iconClick handler.

      If this button is showing an `icon`, a separate click handler for the icon may be defined as `this.iconClick`. Returning false will suppress the standard button click handling code.

      Specified by:
        `addIconClickHandler` in interface `HasIconClickHandlers`
      Parameters:
        `handler` - the iconClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### removeFromRadioGroup

          public void removeFromRadioGroup()

      Remove this widget from the specified mutually exclusive selection group with the ID passed in. No-op's if this widget is not a member of the groupID passed in. If no groupID is passed in, defaults to removing from whatever radioGroup this widget is a member of.
      Overrides:
        `removeFromRadioGroup` in class `StatefulCanvas`
      See Also:
        `State overview and related methods`

    - #### removeFromRadioGroup

          public void removeFromRadioGroup(java.lang.String groupID)

      Remove this widget from the specified mutually exclusive selection group with the ID passed in. No-op's if this widget is not a member of the groupID passed in. If no groupID is passed in, defaults to removing from whatever radioGroup this widget is a member of.
      Overrides:
        `removeFromRadioGroup` in class `StatefulCanvas`
      Parameters:
        `groupID` - - optional radio group ID (to ensure the widget is removed from the appropriate group.
      See Also:
        `State overview and related methods`

    - #### select

          public void select()

      Select this object.
      Overrides:
        `select` in class `StatefulCanvas`
      See Also:
        `State overview and related methods`

    - #### setDisabled

          public void setDisabled(boolean disabled)

      Enable or disable this object
      Overrides:
        `setDisabled` in class `Canvas`
      Parameters:
        `disabled` - true if this widget is to be disabled
      See Also:
        `Enable overview and related methods`

    - #### setVAlign

          public void setVAlign()

      Sets the vertical alignment of this buttons content.
      See Also:
        `Positioning overview and related methods`

    - #### titleClipped

          public boolean titleClipped()

      Is the title of this button clipped?
      Returns:
        whether the title is clipped.

    - #### addTitleHoverHandler

          public com.google.gwt.event.shared.HandlerRegistration addTitleHoverHandler(TitleHoverHandler handler)

      Add a titleHover handler.

      Optional stringMethod to fire when the user hovers over this button and the title is clipped. If `showClippedTitleOnHover` is true, the default behavior is to show a hover canvas containing the HTML returned by `Button.titleHoverHTML`. Call `TitleHoverEvent.cancel()` from within `TitleHoverHandler.onTitleHover(com.smartgwt.client.widgets.events.TitleHoverEvent)` to suppress this default behavior.

      Specified by:
        `addTitleHoverHandler` in interface `HasTitleHoverHandlers`
      Parameters:
        `handler` - the titleHover handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### titleHoverHTML

          public java.lang.String titleHoverHTML(java.lang.String defaultHTML)

      Returns the HTML that is displayed by the default `titleHover` handler. Return null or an empty string to cancel the hover.

      Use `setTitleHoverFormatter()` to provide a custom implementation.

      Parameters:
        `defaultHTML` - the HTML that would have been displayed by default. See `HTMLString`
      Returns:
        HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.

    - #### setDefaultProperties

          public static void setDefaultProperties(Button buttonProperties)

      Class level method to set the default properties of this class. If set, then all subsequent instances of this class will automatically have the default properties that were set when this method was called. 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 effect 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.

      Parameters:
        `buttonProperties` - properties that should be used as new defaults when instances of this class are created

    - #### isSelected

          public java.lang.Boolean isSelected()

      Find out if this object is selected
      Overrides:
        `isSelected` in class `StatefulCanvas`
      Returns:
      See Also:
        `State overview and related methods`

    - #### setTitleHoverFormatter

          public void setTitleHoverFormatter(TitleHoverFormatter formatter)

      Provide a custom implementation of `titleHoverHTML(java.lang.String)`.

    - #### setLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject setLogicalStructure(com.smartgwt.logicalstructure.widgets.ButtonLogicalStructure s)

    - #### getLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject getLogicalStructure()

      Specified by:
        `getLogicalStructure` in interface `LogicalStructure`
      Overrides:
        `getLogicalStructure` in class `StatefulCanvas`