Package com.smartgwt.client.widgets.form.fields

# Class ButtonItem

java.lang.Object
com.smartgwt.client.core.JsObject
com.smartgwt.client.core.DataClass
com.smartgwt.client.core.RefDataClass
com.smartgwt.client.data.Field
com.smartgwt.client.widgets.form.fields.FormItem
com.smartgwt.client.widgets.form.fields.CanvasItem
com.smartgwt.client.widgets.form.fields.ButtonItem

All Implemented Interfaces:
  `HasHandlers`, `HasBlurHandlers`, `HasCanEditChangedHandlers`, `HasChangedHandlers`, `HasChangeHandlers`, `HasClickHandlers`, `HasDoubleClickHandlers`, `HasEditorEnterHandlers`, `HasEditorExitHandlers`, `HasFocusHandlers`, `HasIconClickHandlers`, `HasIconKeyPressHandlers`, `HasItemHoverHandlers`, `HasKeyDownHandlers`, `HasKeyPressHandlers`, `HasKeyUpHandlers`, `HasPendingStatusChangedHandlers`, `HasPickerIconClickHandlers`, `HasReadOnlyDisplayChangedHandlers`, `HasShowContextMenuHandlers`, `HasShowValueHandlers`, `HasTitleClickHandlers`, `HasTitleDoubleClickHandlers`, `HasTitleHoverHandlers`, `HasValueHoverHandlers`, `HasValueIconClickHandlers`

Direct Known Subclasses:
  `CancelItem`, `ResetItem`, `SubmitItem`

public class ButtonItem extends CanvasItem implements HasClickHandlers
FormItem for adding a Button to a form.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class com.smartgwt.client.widgets.form.fields.FormItem

  `FormItem.CustomStateGetter, FormItem.StateCustomizer`

- ## Field Summary

  ### Fields inherited from class com.smartgwt.client.widgets.form.fields.FormItem

  `configOnly, scClassName, warnOnEditorTypeConversion, warnOnEditorTypeConversionDefault`

  ### Fields inherited from class com.smartgwt.client.core.RefDataClass

  `id`

  ### Fields inherited from class com.smartgwt.client.core.DataClass

  `factoryCreated, factoryProperties`

  ### Fields inherited from class com.smartgwt.client.core.JsObject

  `jsObj`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ButtonItem()`
  `ButtonItem(JavaScriptObject jsObj)`
  `ButtonItem(String name)`
  `ButtonItem(String name, String title)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `HandlerRegistration`
  `addClickHandler(ClickHandler handler)`
  Add a click handler.
  `static void`
  `changeAutoChildDefaults(String autoChildName, Canvas defaults)`
  Changes the defaults for Canvas AutoChildren named `autoChildName`.
  `static void`
  `changeAutoChildDefaults(String autoChildName, FormItem defaults)`
  Changes the defaults for FormItem AutoChildren named `autoChildName`.
  `static void`
  `changePickerIconDefaults(FormItemIcon defaults)`
  `Boolean`
  `getAutoFit()`
  Should the button auto fit to its title.
  `String`
  `getBaseStyle()`
  Optional `baseStyle` will be applied to the button.
  `Canvas`
  `getButton()`
  This item is an autoChild generated `Canvas` displayed by the ButtonItem and is an instance of `Button` by defaut, cuztomizeable via the `buttonConstructor` attribute.
  `Alignment`
  `getButtonTitleAlign()`
  The (horizontal) alignment of this button's title.
  `Canvas`
  `getCanvas()`
  The canvas that will be displayed inside this item.
  `String`
  `getEditProxyConstructor()`
  Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
  `AdvancedCriteria`
  `getEnableWhen()`
  Criteria to be evaluated to determine whether this item should be enabled.
  `Boolean`
  `getEndRow()`
  These items are in a row by themselves by default
  `String`
  `getIcon()`
  Optional icon image to display on the button for this item.
  `static ButtonItem`
  `getOrCreateRef(JavaScriptObject jsObj)`
  `ReadOnlyDisplayAppearance`
  `getReadOnlyDisplay()`
  If this item is `read-only`, how should this item be displayed to the user? If set, overrides the form-level `DynamicForm.readOnlyDisplay` default.
  `Boolean`
  `getShowFocusedAsOver()`
  This property governs whether `showFocusedAsOver` is true on the automatically created `Button` for this item.
  `Boolean`
  `getShowTitle()`
  Buttons do not show a title by default.
  `Boolean`
  `getStartRow()`
  These items are in a row by themselves by default
  `ButtonItem`
  `setAutoFit(Boolean autoFit)`
  Should the button auto fit to its title.
  `ButtonItem`
  `setBaseStyle(String baseStyle)`
  Optional `baseStyle` will be applied to the button.
  `void`
  `setButtonProperties(Button buttonProperties)`
  Custom Properties to apply to the button item.
  `ButtonItem`
  `setButtonTitleAlign(Alignment buttonTitleAlign)`
  The (horizontal) alignment of this button's title.
  `static void`
  `setDefaultProperties(ButtonItem buttonItemProperties)`
  Class level method to set the default properties of this class.
  `ButtonItem`
  `setEditProxyConstructor(String editProxyConstructor)`
  Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
  `ButtonItem`
  `setEnableWhen(AdvancedCriteria enableWhen)`
  Criteria to be evaluated to determine whether this item should be enabled.
  `ButtonItem`
  `setEndRow(Boolean endRow)`
  These items are in a row by themselves by default
  `ButtonItem`
  `setIcon(String icon)`
  Optional icon image to display on the button for this item.
  `ButtonItem`
  `setReadOnlyDisplay(ReadOnlyDisplayAppearance readOnlyDisplay)`
  If this item is `read-only`, how should this item be displayed to the user? If set, overrides the form-level `DynamicForm.readOnlyDisplay` default.
  `ButtonItem`
  `setShowFocusedAsOver(Boolean showFocusedAsOver)`
  This property governs whether `showFocusedAsOver` is true on the automatically created `Button` for this item.
  `ButtonItem`
  `setShowTitle(Boolean showTitle)`
  Buttons do not show a title by default.
  `ButtonItem`
  `setStartRow(Boolean startRow)`
  These items are in a row by themselves by default

  ### Methods inherited from class com.smartgwt.client.widgets.form.fields.CanvasItem

  `addCanEditChangedHandler, addReadOnlyDisplayChangedHandler, addShowValueHandler, createCanvas, getApplyPromptToCanvas, getAutoDestroy, getEditCriteriaInInnerForm, getHeight, getHeightAsString, getMaxHeight, getMinHeight, getMultiple, getOverflow, getPrompt, getShouldSaveValue, hasAdvancedCriteria, isFocused, setApplyPromptToCanvas, setAutoDestroy, setCanEditCriterionPredicate, setCanvas, setCriterionGetter, setCriterionSetter, setDefaultProperties, setEditCriteriaInInnerForm, setHeight, setHeight, setMaxHeight, setMinHeight, setMultiple, setOverflow, setPrompt, setShouldDisableCanvasCustomizer, setShouldSaveValue, setupCanvasConstructor, storeValue, storeValue, storeValue, updateCanvasTabPosition`

  ### Methods inherited from class com.smartgwt.client.widgets.form.fields.FormItem

  `_getValue, addBlurHandler, addChangedHandler, addChangeHandler, addDoubleClickHandler, addEditorEnterHandler, addEditorExitHandler, addFocusHandler, addIcon, addIcon, addIconClickHandler, addIconKeyPressHandler, addItemHoverHandler, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addPendingStatusChangedHandler, addPickerIconClickHandler, addShowContextMenuHandler, addTitleClickHandler, addTitleDoubleClickHandler, addTitleHoverHandler, addValueHoverHandler, addValueIconClickHandler, applyFormula, asSGWTComponent, blurItem, canEditCriterion, checkFormItemType, clearErrors, clearValue, disable, disableIcon, enable, enableIcon, error, error, errorIfNotCreated, focusAfterItem, focusInItem, getAccessKey, getAlign, getAllowExpressions, getAlwaysFetchMissingValues, getAlwaysShowControlBox, getApplyAlignToText, getApplyHeightToTextBox, getAriaRole, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsObject, getAttributeAsString, getAutoComplete, getAutoCompleteKeywords, getBrowserInputType, getBrowserSpellCheck, getCanEdit, getCanEditOpaqueValues, getCanFocus, getCanHover, getCanSelectText, getCanTabToIcons, getCanvasAutoChild, getCellHeight, getCellStyle, getChangeOnKeypress, getClassName, getClipStaticValue, getClipTitle, getConfig, getContainerWidget, getControlStyle, getCriteriaField, getCriterion, getCriterion, getCursorPosition, getCustomState, getDataPath, getDateFormatter, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDefaultOperator, getDefaultValue, getDestroyed, getDisabled, getDisabledHover, getDisableIconsOnReadOnly, getDisplayField, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEmptyDisplayValue, getEmptyValueIcon, getErrorIconHeight, getErrorIconProperties, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getErrors, getEscapeHTML, getExportFormat, getExtraControlTableCSS, getExtraTextBoxCSS, getFetchMissingValues, getFieldName, getFilterLocally, getForeignDisplayField, getForm, getFormat, getFormItemAutoChild, getFormula, getFullDataPath, getGlobalTabIndex, getGridColNum, getGridRowNum, getHidden, getHint, getHintStyle, getHoverAlign, getHoverDelay, getHoverFocusKey, getHoverHeight, getHoverHeightAsString, getHoverOpacity, getHoverPersist, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWidthAsString, getIcon, getIconBaseStyle, getIconHeight, getIconHSpace, getIconPageRect, getIconPrompt, getIconRect, getIcons, getIconTabPosition, getIconVAlign, getIconWidth, getID, getImageURLPrefix, getImageURLSuffix, getImplicitSave, getImplicitSaveOnBlur, getInputFormat, getLeft, getLinearColSpan, getLinearColSpanAsString, getLinearEndRow, getLinearEndRowAsString, getLinearStartRow, getLinearStartRowAsString, getLinearWidth, getLinearWidthAsString, getListGrid, getLoadingDisplayValue, getLocateItemBy, getMinHintWidth, getMultipleValueSeparator, getName, getNullOriginalValueText, getOperator, getOptionCriteria, getOptionDataSource, getOptionDataSourceAsString, getOptionFilterContext, getOptionOperationId, getOptionTextMatchStyle, getOriginalValueMessage, getPageLeft, getPageRect, getPageTop, getPaletteDefaults, getPicker, getPickerIcon, getPickerIcon, getPickerIconHeight, getPickerIconName, getPickerIconPrompt, getPickerIconProperties, getPickerIconSrc, getPickerIconStyle, getPickerIconTabPosition, getPickerIconWidth, getPixelHeight, getPixelWidth, getPrintReadOnlyTextBoxStyle, getPrintTextBoxStyle, getPrintTitleStyle, getReadOnlyCanSelectText, getReadOnlyControlStyle, getReadOnlyHover, getReadOnlyTextBoxStyle, getReadOnlyWhen, getRect, getRedrawOnChange, getRejectInvalidValueOnChange, getRequired, getRequiredMessage, getRequiredWhen, getRowSpan, getSaveOnEnter, getScClassName, getSelectedRecord, getSelectOnClick, getSelectOnFocus, getShowClippedTitleOnHover, getShowClippedValueOnHover, getShowDeletions, getShowDisabled, getShowDisabledIconsOnFocus, getShowDisabledPickerIconOnFocus, getShowErrorIcon, getShowErrorIconInline, getShowErrorStyle, getShowErrorText, getShowFocused, getShowFocusedErrorState, getShowFocusedIcons, getShowFocusedPickerIcon, getShowHint, getShowIcons, getShowIconsOnFocus, getShowImageAsURL, getShowOldValueInHover, getShowOver, getShowOverIcons, getShowPending, getShowPickerIcon, getShowPickerIconOnFocus, getShowRTL, getShowValueIconOnly, getStaticHeight, getStopOnError, getStoreDisplayValues, getSupportsCutPasteEvents, getSuppressValueIcon, getSynchronousValidation, getTabIndex, getTextAlign, getTextBoxStyle, getTextFormula, getTimeFormatter, getTitle, getTitleAlign, getTitleColSpan, getTitleOrientation, getTitleStyle, getTitleVAlign, getTooltip, getTop, getType, getUpdateControlOnOver, getUpdatePickerIconOnOver, getUpdateTextBoxOnOver, getUseAdvancedCriteria, getUseDisabledHintStyleForReadOnly, getUseLocalDisplayFieldValue, getValidateOnChange, getValidateOnExit, getValidOperators, getVAlign, getValue, getValueAsFloat, getValueAsInteger, getValueAsLong, getValueAsRecordList, getValueDeselectedCSSText, getValueField, getValueFieldName, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getValueMap, getValueMapAsArray, getVisible, getVisibleHeight, getVisibleTitleWidth, getVisibleWhen, getVisibleWidth, getWarnOnEditorTypeConversion, getWarnOnEditorTypeConversionDefault, getWidth, getWidthAsString, getWrapHintText, getWrapStaticValue, getWrapTitle, handleWarnOnEditorTypeConversion, hasErrors, hide, hideIcon, invalidateDisplayValueCache, isAssignableFrom, isConfigOnly, isCreated, isCutEvent, isDisabled, isDrawn, isInGrid, isPasteEvent, isVisible, linkToInstanceUponCreate, mapDisplayToValue, mapValueToDisplay, mapValueToDisplay, mapValueToDisplay, redraw, redraw, removeIcon, selectedRecordChanged, setAccessKey, setAlign, setAllowExpressions, setAlwaysFetchMissingValues, setAlwaysShowControlBox, setApplyAlignToText, setApplyHeightToTextBox, setAriaRole, setAriaState, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoComplete, setAutoCompleteKeywords, setBrowserInputType, setBrowserSpellCheck, setCanEdit, setCanEditOpaqueValues, setCanFocus, setCanHover, setCanSelectText, setCanTabToIcons, setCellHeight, setCellStyle, setChangeOnKeypress, setClipStaticValue, setClipTitle, setColSpan, setColSpan, setConfigOnly, setControlStyle, setCriteriaField, setCriterion, setCustomStateGetter, setDataPath, setDateFormatter, setDecimalPad, setDecimalPrecision, setDefaultIconSrc, setDefaultOperator, setDefaultProperties, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDisabled, setDisabledHover, setDisableIconsOnReadOnly, setDisplayField, setDisplayFormat, setDisplayFormat, setEditorProperties, setEditorType, setEditorType, setEditorType, setEditorValueFormatter, setEditorValueParser, setEditPendingCSSText, setEmptyDisplayValue, setEmptyValueIcon, setErrorFormatter, setErrorIconHeight, setErrorIconProperties, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setErrors, setErrors, setEscapeHTML, setExportFormat, setExtraControlTableCSS, setExtraTextBoxCSS, setFetchMissingValues, setFilterLocally, setForeignDisplayField, setFormat, setFormula, setGlobalTabIndex, setHidden, setHint, setHintStyle, setHoverAlign, setHoverDelay, setHoverFocusKey, setHoverHeight, setHoverHeight, setHoverOpacity, setHoverPersist, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWidth, setIconBaseStyle, setIconDisabled, setIconHeight, setIconHSpace, setIconPrompt, setIcons, setIconShowOnFocus, setIconVAlign, setIconWidth, setID, setImageURLPrefix, setImageURLSuffix, setImplicitSave, setImplicitSaveOnBlur, setInitHandler, setInputFormat, setInputTransformer, setItemHoverFormatter, setItemTitleHoverFormatter, setItemValueHoverFormatter, setJavaScriptObject, setLeft, setLinearColSpan, setLinearColSpan, setLinearEndRow, setLinearEndRow, setLinearStartRow, setLinearStartRow, setLinearWidth, setLinearWidth, setLoadingDisplayValue, setLocateItemBy, setMinHintWidth, setMultipleValueSeparator, setName, setNullOriginalValueText, setNullProperty, setOperator, setOptionCriteria, setOptionDataSource, setOptionDataSource, setOptionFilterContext, setOptionOperationId, setOptionTextMatchStyle, setOriginalValueMessage, setPickerIconHeight, setPickerIconName, setPickerIconPrompt, setPickerIconProperties, setPickerIconSrc, setPickerIconStyle, setPickerIconWidth, setPrintReadOnlyTextBoxStyle, setPrintTextBoxStyle, setPrintTitleStyle, setProperty, setProperty, setProperty, setProperty, setProperty, setReadOnlyCanSelectText, setReadOnlyControlStyle, setReadOnlyHover, setReadOnlyTextBoxStyle, setReadOnlyWhen, setRedrawOnChange, setRejectInvalidValueOnChange, setRequired, setRequiredMessage, setRequiredWhen, setRowSpan, setSaveOnEnter, setScClassName, setSelectOnClick, setSelectOnFocus, setShowClippedTitleOnHover, setShowClippedValueOnHover, setShowDeletions, setShowDisabled, setShowDisabledIconsOnFocus, setShowDisabledPickerIconOnFocus, setShowErrorIcon, setShowErrorIconInline, setShowErrorStyle, setShowErrorText, setShowFocused, setShowFocusedErrorState, setShowFocusedIcons, setShowFocusedPickerIcon, setShowHint, setShowIcons, setShowIconsOnFocus, setShowIfCondition, setShowImageAsURL, setShowOldValueInHover, setShowOver, setShowOverIcons, setShowPending, setShowPickerIcon, setShowPickerIconOnFocus, setShowRTL, setShowValueIconOnly, setStateCustomizer, setStaticHeight, setStopOnError, setStoreDisplayValues, setSupportsCutPasteEvents, setSuppressValueIcon, setSynchronousValidation, setTabIndex, setTextAlign, setTextBoxStyle, setTextFormula, setTimeFormatter, setTitle, setTitleAlign, setTitleColSpan, setTitleHoverFormatter, setTitleOrientation, setTitleStyle, setTitleVAlign, setTooltip, setTop, setType, setUpdateControlOnOver, setUpdatePickerIconOnOver, setUpdateTextBoxOnOver, setUseAdvancedCriteria, setUseDisabledHintStyleForReadOnly, setUseLocalDisplayFieldValue, setUseObjectFactoryForTypeFallback, setValidateOnChange, setValidateOnExit, setValidators, setValidOperators, setVAlign, setValue, setValue, setValue, setValue, setValue, setValue, setValueDeselectedCSSText, setValueField, setValueFormatter, setValueHoverFormatter, setValueIconHeight, setValueIconLeftPadding, setValueIconMapper, setValueIconRightPadding, setValueIcons, setValueIconSize, setValueIconWidth, setValueMap, setValueMap, setVisible, setVisibleWhen, setWarnOnEditorTypeConversion, setWarnOnEditorTypeConversionDefault, setWidth, setWidth, setWrapHintText, setWrapStaticValue, setWrapTitle, shouldApplyHeightToTextBox, shouldFetchMissingValue, shouldSaveOnEnter, shouldStopKeyPressBubbling, show, showIcon, showPicker, stopHover, storeValue, updateState, validate, valueClipped`

  ### Methods inherited from class com.smartgwt.client.data.Field

  `getCanExport, getExportTitle, getPrimaryKey, getSortByField, setCanExport, setExportTitle, setPrimaryKey, setSortByField`

  ### Methods inherited from class com.smartgwt.client.core.RefDataClass

  `getRef, getRef, internalSetID`

  ### Methods inherited from class com.smartgwt.client.core.DataClass

  `applyFactoryProperties, doAddHandler, fireEvent, getAttributeAsDoubleArray, getAttributeAsElement, getAttributeAsIntArray, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated`

  ### Methods inherited from class com.smartgwt.client.core.JsObject

  `equals, getJsObj, hashCode, setJsObj`

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

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

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

  `fireEvent`

- ## Constructor Details

  - ### ButtonItem

    public ButtonItem()

  - ### ButtonItem

    public ButtonItem(JavaScriptObject jsObj)

  - ### ButtonItem

    public ButtonItem(String name)

  - ### ButtonItem

    public ButtonItem(String name, String title)

- ## Method Details

  - ### getOrCreateRef

    public static ButtonItem getOrCreateRef(JavaScriptObject jsObj)

  - ### changeAutoChildDefaults

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

  - ### changeAutoChildDefaults

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

  - ### changePickerIconDefaults

    public static void changePickerIconDefaults(FormItemIcon defaults)

  - ### setAutoFit

    public ButtonItem setAutoFit(Boolean autoFit)
    Should the button auto fit to its title. Maps to `Button.autoFit` attribute. Note that if an explicit width or height is specified for this item, it will be respected, disabling autoFit behavior
    Parameters:
      `autoFit` - New autoFit value. Default value is true
    Returns:
      `ButtonItem` instance, for chaining setter calls

  - ### getAutoFit

    public Boolean getAutoFit()
    Should the button auto fit to its title. Maps to `Button.autoFit` attribute. Note that if an explicit width or height is specified for this item, it will be respected, disabling autoFit behavior
    Returns:
      Current autoFit value. Default value is true

  - ### setBaseStyle

    public ButtonItem setBaseStyle(String baseStyle)
    Optional `baseStyle` will be applied to the button.
    Parameters:
      `baseStyle` - New baseStyle value. Default value is null
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `CSSStyleName`
      - `Appearance overview and related methods`

  - ### getBaseStyle

    public String getBaseStyle()
    Optional `baseStyle` will be applied to the button.
    Returns:
      Current baseStyle value. Default value is null
    See Also:
      - `CSSStyleName`
      - `Appearance overview and related methods`

  - ### getButton

    public Canvas getButton()
    This item is an autoChild generated `Canvas` displayed by the ButtonItem and is an instance of `Button` by defaut, cuztomizeable via the `buttonConstructor` attribute.

    This component is an AutoChild named "button". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

    Returns:
      Current button value. Default value is null

  - ### setButtonTitleAlign

    public ButtonItem setButtonTitleAlign(Alignment buttonTitleAlign)
    The (horizontal) alignment of this button's title.
    If this method is called after the component has been drawn/initialized: Sets the (horizontal) alignment of this button's title.
    Parameters:
      `buttonTitleAlign` - new title alignment. Default value is "center"
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `Positioning overview and related methods`

  - ### getButtonTitleAlign

    public Alignment getButtonTitleAlign()
    The (horizontal) alignment of this button's title.
    Returns:
      Current buttonTitleAlign value. Default value is "center"
    See Also:
      - `Positioning overview and related methods`

  - ### setEditProxyConstructor

    public ButtonItem setEditProxyConstructor(String editProxyConstructor)
    Default class used to construct the `EditProxy` for this component when the component is `first placed into edit mode`.
    Overrides:
      `setEditProxyConstructor` in class `FormItem`
    Parameters:
      `editProxyConstructor` - New editProxyConstructor value. Default value is "ButtonItemEditProxy"
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `SCClassName`

  - ### getEditProxyConstructor

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

  - ### setEnableWhen

    public ButtonItem setEnableWhen(AdvancedCriteria enableWhen)
    Criteria to be evaluated to determine whether this item should be enabled. This property is incompatible with `readOnlyWhen` and any setting you provide for the latter will be ignored if this property is set.

    Criteria are evaluated against the `form's current values` as well as the current `rule context`. Criteria are re-evaluated every time form values or the rule context changes, whether by end user action or by programmatic calls.

    A basic criteria uses textMatchStyle:"exact". When specified in `Component XML` this property allows `shorthand formats` for defining criteria.

    Note: A ButtonItem using enableWhen must have a `name` defined. `shouldSaveValue` can be set to `false` to prevent the field from storing its value into the form's values.

    Parameters:
      `enableWhen` - New enableWhen value. Default value is null
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `Dynamic Rules`

  - ### getEnableWhen

    public AdvancedCriteria getEnableWhen()
    Criteria to be evaluated to determine whether this item should be enabled. This property is incompatible with `readOnlyWhen` and any setting you provide for the latter will be ignored if this property is set.

    Criteria are evaluated against the `form's current values` as well as the current `rule context`. Criteria are re-evaluated every time form values or the rule context changes, whether by end user action or by programmatic calls.

    A basic criteria uses textMatchStyle:"exact". When specified in `Component XML` this property allows `shorthand formats` for defining criteria.

    Note: A ButtonItem using enableWhen must have a `name` defined. `shouldSaveValue` can be set to `false` to prevent the field from storing its value into the form's values.

    Returns:
      Current enableWhen value. Default value is null
    See Also:
      - `Dynamic Rules`

  - ### setEndRow

    public ButtonItem setEndRow(Boolean endRow)
    These items are in a row by themselves by default
    Overrides:
      `setEndRow` in class `FormItem`
    Parameters:
      `endRow` - New endRow value. Default value is true
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `Form Layout`

  - ### getEndRow

    public Boolean getEndRow()
    These items are in a row by themselves by default
    Overrides:
      `getEndRow` in class `FormItem`
    Returns:
      Current endRow value. Default value is true
    See Also:
      - `Form Layout`

  - ### setIcon

    public ButtonItem setIcon(String icon)
    Optional icon image to display on the button for this item. See `Button.icon`.
    Parameters:
      `icon` - New icon value. Default value is null
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `SCImgURL`
      - `Appearance overview and related methods`

  - ### getIcon

    public String getIcon()
    Optional icon image to display on the button for this item. See `Button.icon`.
    Returns:
      Current icon value. Default value is null
    See Also:
      - `SCImgURL`
      - `Appearance overview and related methods`

  - ### setReadOnlyDisplay

    public ButtonItem setReadOnlyDisplay(ReadOnlyDisplayAppearance readOnlyDisplay)
    If this item is `read-only`, how should this item be displayed to the user? If set, overrides the form-level `DynamicForm.readOnlyDisplay` default.
    Overrides:
      `setReadOnlyDisplay` in class `FormItem`
    Parameters:
      `readOnlyDisplay` - New readOnlyDisplay value. Default value is "disabled"
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `DynamicForm.setReadOnlyDisplay(com.smartgwt.client.types.ReadOnlyDisplayAppearance)`
      - `Appearance overview and related methods`

  - ### getReadOnlyDisplay

    public ReadOnlyDisplayAppearance getReadOnlyDisplay()
    If this item is `read-only`, how should this item be displayed to the user? If set, overrides the form-level `DynamicForm.readOnlyDisplay` default.
    Overrides:
      `getReadOnlyDisplay` in class `FormItem`
    Returns:
      Current readOnlyDisplay value. Default value is "disabled"
    See Also:
      - `DynamicForm.getReadOnlyDisplay()`
      - `Appearance overview and related methods`

  - ### setShowFocusedAsOver

    public ButtonItem setShowFocusedAsOver(Boolean showFocusedAsOver)
    This property governs whether `showFocusedAsOver` is true on the automatically created `Button` for this item.
    If this method is called after the component has been drawn/initialized: Sets showFocusedAsOver.
    Parameters:
      `showFocusedAsOver` - New showFocusedAsOver value. Default value is null
    Returns:
      `ButtonItem` instance, for chaining setter calls

  - ### getShowFocusedAsOver

    public Boolean getShowFocusedAsOver()
    This property governs whether `showFocusedAsOver` is true on the automatically created `Button` for this item.
    Returns:
      Current showFocusedAsOver value. Default value is null

  - ### setShowTitle

    public ButtonItem setShowTitle(Boolean showTitle)
    Buttons do not show a title by default.
    Overrides:
      `setShowTitle` in class `FormItem`
    Parameters:
      `showTitle` - New showTitle value. Default value is false
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `Appearance overview and related methods`

  - ### getShowTitle

    public Boolean getShowTitle()
    Buttons do not show a title by default.
    Overrides:
      `getShowTitle` in class `FormItem`
    Returns:
      Current showTitle value. Default value is false
    See Also:
      - `Appearance overview and related methods`

  - ### setStartRow

    public ButtonItem setStartRow(Boolean startRow)
    These items are in a row by themselves by default
    Overrides:
      `setStartRow` in class `FormItem`
    Parameters:
      `startRow` - New startRow value. Default value is true
    Returns:
      `ButtonItem` instance, for chaining setter calls
    See Also:
      - `Form Layout`

  - ### getStartRow

    public Boolean getStartRow()
    These items are in a row by themselves by default
    Overrides:
      `getStartRow` in class `FormItem`
    Returns:
      Current startRow value. Default value is true
    See Also:
      - `Form Layout`

  - ### addClickHandler

    public HandlerRegistration addClickHandler(ClickHandler handler)
    Add a click handler.

    Called when a ButtonItem is clicked on.

    Specified by:
      `addClickHandler` in interface `HasClickHandlers`
    Overrides:
      `addClickHandler` in class `FormItem`
    Parameters:
      `handler` - the click handler
    Returns:
      `HandlerRegistration` used to remove this handler

  - ### setDefaultProperties

    public static void setDefaultProperties(ButtonItem buttonItemProperties)
    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 of the class instance passed to this function. 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:
      `buttonItemProperties` - properties that should be used as new defaults when instances of this class are created
    See Also:
      - `SGWTProperties`

  - ### getCanvas

    public Canvas getCanvas()
    Description copied from class: `CanvasItem`
    The canvas that will be displayed inside this item. You can pass an instance you've already created, or its global ID as a String.

    If a `canvas` hasn't been specified via `setCanvas()`, the canvas for this item will be auto-created as configured by the methods `setAutoChildProperties()` and `setAutoChildConstructor()`.

    Note that subclasses of `CanvasItem` may use a different AutoChild name than just "canvas". For example, `SliderItem` uses "slider", and in that case, you need to use the specific APIs provided by the subclass.

    Note that `Canvas.canvasItem` will be set on the canvas to point back to this item.

    This component is an AutoChild named "canvas". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

    Overrides:
      `getCanvas` in class `CanvasItem`
    Returns:
      Current canvas value. Default value is null

  - ### setButtonProperties

    public void setButtonProperties(Button buttonProperties)
    Custom Properties to apply to the button item.
    Parameters:
      `buttonProperties` - properties to apply to the button item.