com.smartgwt.client.widgets

## Class IconButton

- 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.IconButton

- All Implemented Interfaces:
    HasAttachHandlers, HasHandlers, EventListener, HasVisibility, 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, HasMenuIconClickHandlers
  Direct Known Subclasses:
    IconMenuButton

      public class IconButton
      extends Button
      implements HasMenuIconClickHandlers

  A Button subclass that displays an `icon`, `title` and optional `menuIcon` and is capable of horizontal and vertical `orientation`.

- - ### 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 and Description
    `IconButton()`
    `IconButton(JavaScriptObject jsObj)`
    `IconButton(java.lang.String title)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `HandlerRegistration` | `addMenuIconClickHandler(MenuIconClickHandler handler)` Add a menuIconClick handler.
    `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`.
    `java.lang.Boolean` | `click()` Notification method fired when a user clicks anywhere on this button.
    `protected JavaScriptObject` | `create()`
    `Alignment` | `getAlign()` Horizontal alignment of this button's content.
    `java.lang.String` | `getBaseStyle()` Default CSS class for this button.
    `java.lang.String` | `getIcon()` Icon to show to the left of or above the title, according to the button's `Orientation`.
    `java.lang.String` | `getIconAlign()` This attribute is not supported in this subclass.
    `java.lang.String` | `getIconOrientation()` This attribute is not supported in this subclass.
    `java.lang.String` | `getLargeIcon()` Icon to show above the title when `Orientation` is "vertical".
    `int` | `getLargeIconSize()` The size of the large icon for this button.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `getLogicalStructure()` Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `int` | `getMenuIconHeight()` The height of the icon for this button.
    `java.lang.String` | `getMenuIconSrc()` Base URL for an Image that shows a `menu` when clicked.
    `int` | `getMenuIconWidth()` The width of the icon for this button.
    `static IconButton` | `getOrCreateRef(JavaScriptObject jsObj)`
    `java.lang.String` | `getOrientation()` The orientation of this IconButton.
    `int` | `getRowSpan()` When used in a `RibbonBar`, the number of rows this button should occupy in a single `column`.
    `java.lang.Boolean` | `getShowButtonTitle()` Whether to show the title-text for this IconButton.
    `java.lang.Boolean` | `getShowIcon()` Whether to show an Icon in this IconButton.
    `java.lang.Boolean` | `getShowMenuIcon()` Whether to show the `menu-icon` which fires the `IconButton.menuIconClick()` notification method when clicked.
    `java.lang.Boolean` | `getShowMenuIconDisabled()` Whether to show a Disabled version of the `menuIcon`.
    `java.lang.Boolean` | `getShowMenuIconOver()` Whether to show an Over version of the `menuIcon`.
    `java.lang.Boolean` | `getShowMenuOnClick()` If set to true, shows this button's `menu` when a user clicks anywhere in the button, rather than specifically on the `menuIcon`.
    `java.lang.Boolean` | `getShowTitle()` showTitle is not applicable to this class - use `showButtonTitle` instead.
    `VerticalAlignment` | `getValign()` Vertical alignment of this button's content.
    `java.lang.Boolean` | `iconClick()` Notification method fired when a user clicks on the `icon` in this IconButton.
    `void` | `setAlign(Alignment align)` Horizontal alignment of this button's content.
    `void` | `setBaseStyle(java.lang.String baseStyle)` Default CSS class for this button.
    `static void` | `setDefaultProperties(IconButton iconButtonProperties)` Class level method to set the default properties of this class.
    `void` | `setIcon(java.lang.String icon)` Icon to show to the left of or above the title, according to the button's `Orientation`.
    `void` | `setIconAlign(java.lang.String iconAlign)` This attribute is not supported in this subclass.
    `void` | `setIconOrientation(java.lang.String iconOrientation)` This attribute is not supported in this subclass.
    `void` | `setLargeIcon(java.lang.String largeIcon)` Icon to show above the title when `Orientation` is "vertical".
    `void` | `setLargeIconSize(int largeIconSize)` The size of the large icon for this button.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `setLogicalStructure(com.smartgwt.logicalstructure.widgets.IconButtonLogicalStructure s)` Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `void` | `setMenuIconHeight(int menuIconHeight)` The height of the icon for this button.
    `void` | `setMenuIconSrc(java.lang.String menuIconSrc)` Base URL for an Image that shows a `menu` when clicked.
    `void` | `setMenuIconWidth(int menuIconWidth)` The width of the icon for this button.
    `void` | `setOrientation(java.lang.String orientation)` The orientation of this IconButton.
    `void` | `setRowSpan(int rowSpan)` When used in a `RibbonBar`, the number of rows this button should occupy in a single `column`.
    `void` | `setShowButtonTitle(java.lang.Boolean showButtonTitle)` Whether to show the title-text for this IconButton.
    `void` | `setShowIcon(java.lang.Boolean showIcon)` Whether to show an Icon in this IconButton.
    `void` | `setShowMenuIcon(java.lang.Boolean showMenuIcon)` Whether to show the `menu-icon` which fires the `IconButton.menuIconClick()` notification method when clicked.
    `void` | `setShowMenuIconDisabled(java.lang.Boolean showMenuIconDisabled)` Whether to show a Disabled version of the `menuIcon`.
    `void` | `setShowMenuIconOver(java.lang.Boolean showMenuIconOver)` Whether to show an Over version of the `menuIcon`.
    `void` | `setShowMenuOnClick(java.lang.Boolean showMenuOnClick)` If set to true, shows this button's `menu` when a user clicks anywhere in the button, rather than specifically on the `menuIcon`.
    `void` | `setShowTitle(java.lang.Boolean showTitle)` showTitle is not applicable to this class - use `showButtonTitle` instead.
    `void` | `setValign(VerticalAlignment valign)` Vertical alignment of this button's content.

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

      `action, addIconClickHandler, addTitleHoverHandler, addToRadioGroup, deselect, getActionType, getAutoFit, getDisabledIconCursor, getHiliteAccessKey, getIconCursor, getIconHeight, getIconSize, getIconStyle, getIconWidth, getRadioGroup, getSelected, getShowClippedTitleOnHover, getShowDisabled, getShowDisabledIcon, getShowDown, getShowDownIcon, getShowFocused, getShowFocusedIcon, getShowRollOver, getShowRollOverIcon, getShowSelectedIcon, getState, getTitle, getWrap, isSelected, removeFromRadioGroup, removeFromRadioGroup, select, setActionType, setAutoFit, setDefaultProperties, setDisabledIconCursor, setHiliteAccessKey, setIconCursor, setIconHeight, setIconSize, setIconStyle, setIconWidth, setLogicalStructure, setRadioGroup, setSelected, setShowClippedTitleOnHover, setShowDisabled, setShowDisabledIcon, setShowDown, setShowDownIcon, setShowFocused, setShowFocusedIcon, setShowRollOver, setShowRollOverIcon, setShowSelectedIcon, setState, setTitle, setTitleHoverFormatter, setWrap, titleClipped, titleHoverHTML`

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

      `getEditProxyConstructor, getIgnoreRTL, getOverCanvas, getOverCanvasConstructor, getRedrawOnStateChange, getShowFocusedAsOver, getShowOverCanvas, getShowRTLIcon, getStateSuffix, setDefaultProperties, setEditProxyConstructor, setIgnoreRTL, setLogicalStructure, setOverCanvasConstructor, setRedrawOnStateChange, setShowFocusedAsOver, setShowOverCanvas, setShowRTLIcon, 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, 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, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsFocus, containsPoint, containsPoint, deparent, depeer, disable, enable, encloses, focus, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaRole, getAutoDraw, getAutoMaskComponents, 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, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContextMenu, getCursor, getDataPath, getDefaultHeight, getDefaultWidth, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragType, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getElement, getElement, 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, getHtmlElement, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getKeepInParentRect, getLayoutAlign, getLeavePageSpace, getLeft, getLeftAsString, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMaxHeight, getMaxWidth, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getNextZIndex, getNoDoubleClicks, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getOverflow, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getParentCanvas, getParentElement, getPeers, getPercentBox, getPercentSource, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowDepth, getShadowImage, getShadowOffset, getShadowSoftness, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSkinImgDir, getSnapAxis, getSnapEdge, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapResizeToGrid, getSnapTo, getSnapToGrid, getSnapVDirection, getSnapVGap, getStyleName, getTabIndex, getTestInstance, getTooltip, getTop, getTopAsString, getTopElement, getUseBackMask, getUseDragMask, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWidth, getVSnapOrigin, getVSnapOrigin, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, intersects, isDirty, isDisabled, isDrawn, isFocused, 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, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoDraw, setAutoHeight, setAutoMaskComponents, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBottom, setCanAcceptDrop, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContextMenu, setCursor, setDataPath, setDefaultHeight, setDefaultPageSpace, setDefaultProperties, setDefaultWidth, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragType, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setElement, setExtraSpace, setFacetId, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverDelay, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeavePageSpace, setLeft, setLeft, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLogicalStructure, setMargin, setMatchElement, setMaxHeight, setMaxWidth, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setNeverUseFilters, setNoDoubleClicks, setOpacity, setOverflow, setPadding, setPageLeft, setPageTop, setParentCanvas, setParentElement, setPeers, setPercentBox, setPercentSource, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setRect, setRect, setRedrawOnResize, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setScrollbarConstructor, setScrollbarSize, setShadowDepth, setShadowImage, setShadowOffset, setShadowSoftness, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSkinImgDir, setSmoothFade, setSnapAxis, setSnapEdge, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToGrid, setSnapTo, setSnapToGrid, setSnapVDirection, setSnapVGap, setStyleName, setTabIndex, setTooltip, setTop, setTop, setUseBackMask, setUseDragMask, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setVisibility, setVisible, setWidth, setWidth, setWidth, setWidth100, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, updateEditNode, updateHover, updateHover, updateShadow, visibleAtPoint, willAcceptDrop`

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

      `addDrawHandler, applyFactoryProperties, 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, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, 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, setConfig, setConfigOnly, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, 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

    - #### IconButton

          public IconButton()

    - #### IconButton

          public IconButton(JavaScriptObject jsObj)

    - #### IconButton

          public IconButton(java.lang.String title)

  - ### Method Detail

    - #### getOrCreateRef

          public static IconButton getOrCreateRef(JavaScriptObject jsObj)

    - #### 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 JavaScriptObject create()

      Overrides:
        `create` in class `Button`

    - #### setAlign

          public void setAlign(Alignment align)

      Horizontal alignment of this button's content. If unset, `vertical buttons` are center-aligned and horizontal buttons left-aligned by default.
      Overrides:
        `setAlign` in class `Button`
      Parameters:
        `align` - Default value is null
      See Also:
        `Appearance overview and related methods`

    - #### getAlign

          public Alignment getAlign()

      Horizontal alignment of this button's content. If unset, `vertical buttons` are center-aligned and horizontal buttons left-aligned by default.
      Overrides:
        `getAlign` in class `Button`
      Returns:
        Alignment
      See Also:
        `Appearance overview and related methods`

    - #### setBaseStyle

          public void setBaseStyle(java.lang.String baseStyle)

      Default CSS class for this button.
      Overrides:
        `setBaseStyle` in class `Button`
      Parameters:
        `baseStyle` - See `CSSClassName` . Default value is "iconButton"

    - #### getBaseStyle

          public java.lang.String getBaseStyle()

      Default CSS class for this button.
      Overrides:
        `getBaseStyle` in class `Button`
      Returns:
        See `CSSClassName`

    - #### setIcon

          public void setIcon(java.lang.String icon)

      Icon to show to the left of or above the title, according to the button's `Orientation`.

      When specifying `titleOrientation = "vertical"`, this icon will be stretched to the `largeIconSize` unless a `largeIcon` is specified.
      If this method is called after the component has been drawn/initialized: Sets a new Icon for this button after initialization.

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

    - #### getIcon

          public java.lang.String getIcon()

      Icon to show to the left of or above the title, according to the button's `Orientation`.

      When specifying `titleOrientation = "vertical"`, this icon will be stretched to the `largeIconSize` unless a `largeIcon` is specified.

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

    - #### setIconAlign

          public void setIconAlign(java.lang.String iconAlign)

      This attribute is not supported in this subclass. However, RTL mode is still supported.
      Overrides:
        `setIconAlign` in class `Button`
      Parameters:
        `iconAlign` - Default value is null
      See Also:
        `ButtonIcon overview and related methods`

    - #### getIconAlign

          public java.lang.String getIconAlign()

      This attribute is not supported in this subclass. However, RTL mode is still supported.
      Overrides:
        `getIconAlign` in class `Button`
      Returns:
        String
      See Also:
        `ButtonIcon overview and related methods`

    - #### setIconOrientation

          public void setIconOrientation(java.lang.String iconOrientation)

      This attribute is not supported in this subclass. However, RTL mode is still supported.
      Overrides:
        `setIconOrientation` in class `Button`
      Parameters:
        `iconOrientation` - Default value is null
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### getIconOrientation

          public java.lang.String getIconOrientation()

      This attribute is not supported in this subclass. However, RTL mode is still supported.
      Overrides:
        `getIconOrientation` in class `Button`
      Returns:
        String
      See Also:
        `ButtonIcon overview and related methods`, Icons Example

    - #### setLargeIcon

          public void setLargeIcon(java.lang.String largeIcon)

      Icon to show above the title when `Orientation` is "vertical".

      If a largeIcon is not specified, the `normal icon` will be stretched to the `largeIconSize`.
      If this method is called after the component has been drawn/initialized: Sets a new Large-Icon for vertical buttons after initialization - synonymous with `setIcon` for normal horizontal buttons.

      Parameters:
        `largeIcon` - See `SCImgURL` . Default value is null

    - #### getLargeIcon

          public java.lang.String getLargeIcon()

      Icon to show above the title when `Orientation` is "vertical".

      If a largeIcon is not specified, the `normal icon` will be stretched to the `largeIconSize`.

      Returns:
        See `SCImgURL`

    - #### setLargeIconSize

          public void setLargeIconSize(int largeIconSize)

      The size of the large icon for this button. If `largeIcon` is not specified, the `normal icon` will be stretched to this size.
      Parameters:
        `largeIconSize` - Default value is 32

    - #### getLargeIconSize

          public int getLargeIconSize()

      The size of the large icon for this button. If `largeIcon` is not specified, the `normal icon` will be stretched to this size.
      Returns:
        int

    - #### setMenuIconHeight

          public void setMenuIconHeight(int menuIconHeight)

      The height of the icon for this button.
      Parameters:
        `menuIconHeight` - Default value is 13

    - #### getMenuIconHeight

          public int getMenuIconHeight()

      The height of the icon for this button.
      Returns:
        int

    - #### setMenuIconSrc

          public void setMenuIconSrc(java.lang.String menuIconSrc)

      Base URL for an Image that shows a `menu` when clicked. See also `showMenuIconDisabled` and `showMenuIconOver`.
      Parameters:
        `menuIconSrc` - See `SCImgURL` . Default value is "[SKINIMG]/Menu/submenu_down.png"

    - #### getMenuIconSrc

          public java.lang.String getMenuIconSrc()

      Base URL for an Image that shows a `menu` when clicked. See also `showMenuIconDisabled` and `showMenuIconOver`.
      Returns:
        See `SCImgURL`

    - #### setMenuIconWidth

          public void setMenuIconWidth(int menuIconWidth)

      The width of the icon for this button.
      Parameters:
        `menuIconWidth` - Default value is 14

    - #### getMenuIconWidth

          public int getMenuIconWidth()

      The width of the icon for this button.
      Returns:
        int

    - #### setOrientation

          public void setOrientation(java.lang.String orientation)

      The orientation of this IconButton. The default value, "horizontal", renders `icon`, `title` and potentially `menuIcon`, from left to right: "vertical" does the same from top to bottom.
      Parameters:
        `orientation` - Default value is "horizontal"

    - #### getOrientation

          public java.lang.String getOrientation()

      The orientation of this IconButton. The default value, "horizontal", renders `icon`, `title` and potentially `menuIcon`, from left to right: "vertical" does the same from top to bottom.
      Returns:
        String

    - #### setRowSpan

          public void setRowSpan(int rowSpan)

      When used in a `RibbonBar`, the number of rows this button should occupy in a single `column`.
      Parameters:
        `rowSpan` - Default value is 1

    - #### getRowSpan

          public int getRowSpan()

      When used in a `RibbonBar`, the number of rows this button should occupy in a single `column`.
      Returns:
        int

    - #### setShowButtonTitle

          public void setShowButtonTitle(java.lang.Boolean showButtonTitle)

      Whether to show the title-text for this IconButton. If set to false, title-text is omitted altogether and just the icon is displayed.
      Parameters:
        `showButtonTitle` - Default value is true

    - #### getShowButtonTitle

          public java.lang.Boolean getShowButtonTitle()

      Whether to show the title-text for this IconButton. If set to false, title-text is omitted altogether and just the icon is displayed.
      Returns:
        Boolean

    - #### setShowIcon

          public void setShowIcon(java.lang.Boolean showIcon)

      Whether to show an Icon in this IconButton. Set to false to render a text-only button.
      Parameters:
        `showIcon` - Default value is null

    - #### getShowIcon

          public java.lang.Boolean getShowIcon()

      Whether to show an Icon in this IconButton. Set to false to render a text-only button.
      Returns:
        Boolean

    - #### setShowMenuIcon

          public void setShowMenuIcon(java.lang.Boolean showMenuIcon)

      Whether to show the `menu-icon` which fires the `IconButton.menuIconClick()` notification method when clicked.
      Parameters:
        `showMenuIcon` - Default value is false

    - #### getShowMenuIcon

          public java.lang.Boolean getShowMenuIcon()

      Whether to show the `menu-icon` which fires the `IconButton.menuIconClick()` notification method when clicked.
      Returns:
        Boolean

    - #### setShowMenuIconDisabled

          public void setShowMenuIconDisabled(java.lang.Boolean showMenuIconDisabled)

      Whether to show a Disabled version of the `menuIcon`.
      Parameters:
        `showMenuIconDisabled` - Default value is true

    - #### getShowMenuIconDisabled

          public java.lang.Boolean getShowMenuIconDisabled()

      Whether to show a Disabled version of the `menuIcon`.
      Returns:
        Boolean

    - #### setShowMenuIconOver

          public void setShowMenuIconOver(java.lang.Boolean showMenuIconOver)

      Whether to show an Over version of the `menuIcon`.
      Parameters:
        `showMenuIconOver` - Default value is true

    - #### getShowMenuIconOver

          public java.lang.Boolean getShowMenuIconOver()

      Whether to show an Over version of the `menuIcon`.
      Returns:
        Boolean

    - #### setShowMenuOnClick

          public void setShowMenuOnClick(java.lang.Boolean showMenuOnClick)

      If set to true, shows this button's `menu` when a user clicks anywhere in the button, rather than specifically on the `menuIcon`.
      Parameters:
        `showMenuOnClick` - Default value is null

    - #### getShowMenuOnClick

          public java.lang.Boolean getShowMenuOnClick()

      If set to true, shows this button's `menu` when a user clicks anywhere in the button, rather than specifically on the `menuIcon`.
      Returns:
        Boolean

    - #### setShowTitle

          public void setShowTitle(java.lang.Boolean showTitle)

      showTitle is not applicable to this class - use `showButtonTitle` instead.
      Parameters:
        `showTitle` - Default value is null

    - #### getShowTitle

          public java.lang.Boolean getShowTitle()

      showTitle is not applicable to this class - use `showButtonTitle` instead.
      Returns:
        Boolean

    - #### setValign

          public void setValign(VerticalAlignment valign)

      Vertical alignment of this button's content. If unset, `vertical buttons` are top-aligned and horizontal buttons center-aligned by default.
      Overrides:
        `setValign` in class `Button`
      Parameters:
        `valign` - Default value is null
      See Also:
        `Appearance overview and related methods`

    - #### getValign

          public VerticalAlignment getValign()

      Vertical alignment of this button's content. If unset, `vertical buttons` are top-aligned and horizontal buttons center-aligned by default.
      Overrides:
        `getValign` in class `Button`
      Returns:
        VerticalAlignment
      See Also:
        `Appearance overview and related methods`

    - #### click

          public java.lang.Boolean click()

      Notification method fired when a user clicks anywhere on this button. If the click occurred directly on the `icon` or the `menuIcon`, the related notifications `iconClick` and `menuIconClick` are fired first and must return false to prevent this notification from firing.

      If a `menu` is installed then, by default, it is only displayed when a user clicks on the `menuIcon`. This can be altered via `showMenuOnClick`.

      Returns:
        return false to cancel event-bubbling

    - #### iconClick

          public java.lang.Boolean iconClick()

      Notification method fired when a user clicks on the `icon` in this IconButton. call `event.cancel()` to suppress the standard click handling code.
      Returns:
        return false to cancel event-bubbling

    - #### addMenuIconClickHandler

          public HandlerRegistration addMenuIconClickHandler(MenuIconClickHandler handler)

      Add a menuIconClick handler.

      Notification method fired when a user clicks on the menuIcon on this IconButton. call `event.cancel()` to suppress the standard click handling code.

      Specified by:
        `addMenuIconClickHandler` in interface `HasMenuIconClickHandlers`
      Parameters:
        `handler` - the menuIconClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### setDefaultProperties

          public static void setDefaultProperties(IconButton iconButtonProperties)

      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:
        `iconButtonProperties` - properties that should be used as new defaults when instances of this class are created

    - #### setLogicalStructure

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

      Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

    - #### getLogicalStructure

          public com.smartgwt.logicalstructure.core.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`