com.smartgwt.client.widgets.form.fields

## Class FormItemIcon

- java.lang.Object
- - com.smartgwt.client.core.JsObject
  - - com.smartgwt.client.core.DataClass
    - - com.smartgwt.client.widgets.form.fields.FormItemIcon

- All Implemented Interfaces:
    com.google.gwt.event.shared.HasHandlers, HasFormItemClickHandlers
  Direct Known Subclasses:
    PickerIcon

      public class FormItemIcon
      extends DataClass
      implements HasFormItemClickHandlers

  Form item icon descriptor objects used by Form Items to specify the appearance and behavior of icons displayed after the item in the page flow.
  See Also:
    `FormItem.getIcons()`

- - ### Field Summary

    - ### 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 and Description
    `FormItemIcon()`
    `FormItemIcon(com.google.gwt.core.client.JavaScriptObject jsObj)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.google.gwt.event.shared.HandlerRegistration` | `addFormItemClickHandler(FormItemClickHandler handler)` Add a formItemClick handler.
    `boolean` | `equals(java.lang.Object o)`
    `java.lang.String` | `getBaseStyle()` Base CSS style.
    `java.lang.Boolean` | `getCanFocus()` Set to false to suppress all focus features for this icon.
    `Cursor` | `getCursor()` Specifies the cursor image to display when the mouse pointer is over this icon.
    `java.lang.Boolean` | `getDisabled()` Whether this icon is disabled.
    `Cursor` | `getDisabledCursor()` Specifies the cursor image to display when the mouse pointer is over this icon if this icon is disabled.
    `java.lang.Boolean` | `getDisableOnReadOnly()` If `FormItem.canEdit` is set to false, should this icon be disabled.
    `AdvancedCriteria` | `getEnableWhen()` Criteria to be evaluated to determine whether this icon should appear enabled.
    `java.lang.Integer` | `getHeight()` If set, this property determines the height of this icon in px.
    `java.lang.Integer` | `getHspace()` If set, this property determines the number of pixels space to be displayed on the left of this form item icon, or for `inline` icons whose `inlineIconAlign` is `Alignment.LEFT`, on the right of this form item icon.
    `PickListItemIconPlacement` | `getIconPlacement()` For PickList items with `PickListItemIconPlacement` set such that the pickList does not render near-origin, should this icon be rendered inline within the formItem itself, or within the `ComboBoxItem.pickerNavigationBar`.
    `java.lang.Boolean` | `getInline()` When set, this icon is rendered inside the `textBox` area of the `FormItem` (where input occurs in a `TextItem`, `TextAreaItem` or `ComboBoxItem`) as opposed to as a trailing icon.
    `Alignment` | `getInlineIconAlign()` Horizontal alignment for icons marked `inline`.
    `java.lang.String` | `getName()` Identifier for this form item icon.
    `java.lang.Boolean` | `getNeverDisable()` If `icon.neverDisable` is true, when this form item is disabled, the icon will remain enabled.
    `static FormItemIcon` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `java.lang.String` | `getPrompt()` If set, this property will be displayed as a prompt (and tooltip text) for this form item icon.
    `java.lang.Boolean` | `getShowDisabledOnFocus()` If show-on-focus behavior is enabled for this icon via `showOnFocus` or related properties at the item level, and this icon is marked as disabled, should it be shown on focus? If unset, will be derived from the `FormItem.showDisabledIconsOnFocus` or `FormItem.showDisabledPickerIconOnFocus` settings.
    `java.lang.Boolean` | `getShowFocused()` Should this icon's image and/or `baseStyle` switch to the appropriate "Focused" value when the user puts focus on the form item or icon?
    `java.lang.Boolean` | `getShowFocusedWithItem()` If this icon will be updated to show focus (see `showFocused`, `FormItem.showFocusedIcons`), this property governs whether the focused state should be shown when the item as a whole receives focus or just if the icon receives focus.
    `java.lang.Boolean` | `getShowOnFocus()` Show this icon when its item gets focus, and hide it when it loses focus.
    `java.lang.Boolean` | `getShowOver()` Should this icon's image and/or `baseStyle` switch to the appropriate "Over" value when the user rolls over or focuses on the icon?
    `IconOverTrigger` | `getShowOverWhen()` If `showOver` or `FormItem.showOverIcons` is true, this property may be set to customize when the 'over' styling is applied to the item.
    `java.lang.Boolean` | `getShowRTL()` Should this icon's `src` and/or `baseStyle` switch to the appropriate RTL value when the FormItem is in RTL mode? If true, then the image URL for all states will have "_rtl" added before the extension.
    `java.lang.String` | `getSrc()` If set, this property determines this icon's image source.
    `java.lang.Integer` | `getTabIndex()` TabIndex for this formItemIcon.
    `java.lang.String` | `getText()` As an alternative to displaying an image, an `inline` `FormItemIcon` can display a string of HTML where the icon's image would have appeared.
    `AdvancedCriteria` | `getVisibleWhen()` Criteria to be evaluated to determine whether this icon should be visible.
    `java.lang.Integer` | `getWidth()` If set, this property determines the width of this icon in px.
    `int` | `hashCode()`
    `void` | `keyPress(java.lang.String keyName, char character, DynamicForm form, FormItem item, FormItemIcon icon)` StringMethod action to fire when this icon has focus and receives a keypress event.
    `void` | `setBaseStyle(java.lang.String baseStyle)` Base CSS style.
    `void` | `setCanFocus(java.lang.Boolean canFocus)` Set to false to suppress all focus features for this icon.
    `void` | `setCursor(Cursor cursor)` Specifies the cursor image to display when the mouse pointer is over this icon.
    `void` | `setDisabled(java.lang.Boolean disabled)` Whether this icon is disabled.
    `void` | `setDisabledCursor(Cursor disabledCursor)` Specifies the cursor image to display when the mouse pointer is over this icon if this icon is disabled.
    `void` | `setDisableOnReadOnly(java.lang.Boolean disableOnReadOnly)` If `FormItem.canEdit` is set to false, should this icon be disabled.
    `void` | `setEnableWhen(AdvancedCriteria enableWhen)` Criteria to be evaluated to determine whether this icon should appear enabled.
    `void` | `setHeight(java.lang.Integer height)` If set, this property determines the height of this icon in px.
    `void` | `setHspace(java.lang.Integer hspace)` If set, this property determines the number of pixels space to be displayed on the left of this form item icon, or for `inline` icons whose `inlineIconAlign` is `Alignment.LEFT`, on the right of this form item icon.
    `void` | `setIconPlacement(PickListItemIconPlacement iconPlacement)` For PickList items with `PickListItemIconPlacement` set such that the pickList does not render near-origin, should this icon be rendered inline within the formItem itself, or within the `ComboBoxItem.pickerNavigationBar`.
    `void` | `setInline(java.lang.Boolean inline)` When set, this icon is rendered inside the `textBox` area of the `FormItem` (where input occurs in a `TextItem`, `TextAreaItem` or `ComboBoxItem`) as opposed to as a trailing icon.
    `void` | `setInlineIconAlign(Alignment inlineIconAlign)` Horizontal alignment for icons marked `inline`.
    `void` | `setName(java.lang.String name)` Identifier for this form item icon.
    `void` | `setNeverDisable(java.lang.Boolean neverDisable)` If `icon.neverDisable` is true, when this form item is disabled, the icon will remain enabled.
    `void` | `setPrompt(java.lang.String prompt)` If set, this property will be displayed as a prompt (and tooltip text) for this form item icon.
    `void` | `setShowDisabledOnFocus(java.lang.Boolean showDisabledOnFocus)` If show-on-focus behavior is enabled for this icon via `showOnFocus` or related properties at the item level, and this icon is marked as disabled, should it be shown on focus? If unset, will be derived from the `FormItem.showDisabledIconsOnFocus` or `FormItem.showDisabledPickerIconOnFocus` settings.
    `void` | `setShowFocused(java.lang.Boolean showFocused)` Should this icon's image and/or `baseStyle` switch to the appropriate "Focused" value when the user puts focus on the form item or icon?
    `void` | `setShowFocusedWithItem(java.lang.Boolean showFocusedWithItem)` If this icon will be updated to show focus (see `showFocused`, `FormItem.showFocusedIcons`), this property governs whether the focused state should be shown when the item as a whole receives focus or just if the icon receives focus.
    `void` | `setShowIfCondition(FormItemIfFunction showIf)` Set showIf condition.
    `void` | `setShowOnFocus(java.lang.Boolean showOnFocus)` Show this icon when its item gets focus, and hide it when it loses focus.
    `void` | `setShowOver(java.lang.Boolean showOver)` Should this icon's image and/or `baseStyle` switch to the appropriate "Over" value when the user rolls over or focuses on the icon?
    `void` | `setShowOverWhen(IconOverTrigger showOverWhen)` If `showOver` or `FormItem.showOverIcons` is true, this property may be set to customize when the 'over' styling is applied to the item.
    `void` | `setShowRTL(java.lang.Boolean showRTL)` Should this icon's `src` and/or `baseStyle` switch to the appropriate RTL value when the FormItem is in RTL mode? If true, then the image URL for all states will have "_rtl" added before the extension.
    `void` | `setSrc(java.lang.String src)` If set, this property determines this icon's image source.
    `void` | `setTabIndex(java.lang.Integer tabIndex)` TabIndex for this formItemIcon.
    `void` | `setText(java.lang.String text)` As an alternative to displaying an image, an `inline` `FormItemIcon` can display a string of HTML where the icon's image would have appeared.
    `void` | `setVisibleWhen(AdvancedCriteria visibleWhen)` Criteria to be evaluated to determine whether this icon should be visible.
    `void` | `setWidth(java.lang.Integer width)` If set, this property determines the width of this icon in px.

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

      `applyFactoryProperties, doAddHandler, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsDoubleArray, getAttributeAsFloat, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated`

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

      `getJsObj, isCreated, setJavaScriptObject, 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 Detail

    - #### FormItemIcon

          public FormItemIcon()

    - #### FormItemIcon

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

  - ### Method Detail

    - #### getOrCreateRef

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

    - #### setBaseStyle

          public void setBaseStyle(java.lang.String baseStyle)

      Base CSS style. If set, as the component changes state and/or is focused, suffixes will be added to the base style. Possible suffixes include "Over" if the user mouses over the icon and `this.showOver` is true, "Disabled" if the icon is disabled, and "Focused". In addition, if `showRTL` is enabled, then an "RTL" suffix will be added.

      Note : This is an advanced setting

      Parameters:
        `baseStyle` - New baseStyle value. Default value is null
      See Also:
        `CSSStyleName`

    - #### getBaseStyle

          public java.lang.String getBaseStyle()

      Base CSS style. If set, as the component changes state and/or is focused, suffixes will be added to the base style. Possible suffixes include "Over" if the user mouses over the icon and `this.showOver` is true, "Disabled" if the icon is disabled, and "Focused". In addition, if `showRTL` is enabled, then an "RTL" suffix will be added.
      Returns:
        Current baseStyle value. Default value is null
      See Also:
        `CSSStyleName`

    - #### setCanFocus

          public void setCanFocus(java.lang.Boolean canFocus)

      Set to false to suppress all focus features for this icon. Clicking the icon will not apply focus to the icon or to the form item.

      Note : This is an advanced setting

      Parameters:
        `canFocus` - New canFocus value. Default value is null

    - #### getCanFocus

          public java.lang.Boolean getCanFocus()

      Set to false to suppress all focus features for this icon. Clicking the icon will not apply focus to the icon or to the form item.
      Returns:
        Current canFocus value. Default value is null

    - #### setCursor

          public void setCursor(Cursor cursor)

      Specifies the cursor image to display when the mouse pointer is over this icon. It corresponds to the CSS cursor attribute. See Cursor type for different cursors.

      See also `disabledCursor`.

      Note : This is an advanced setting

      Parameters:
        `cursor` - New cursor value. Default value is Canvas.POINTER
      See Also:
        `Cues overview and related methods`

    - #### getCursor

          public Cursor getCursor()

      Specifies the cursor image to display when the mouse pointer is over this icon. It corresponds to the CSS cursor attribute. See Cursor type for different cursors.

      See also `disabledCursor`.

      Returns:
        Current cursor value. Default value is Canvas.POINTER
      See Also:
        `Cues overview and related methods`

    - #### setDisabled

          public void setDisabled(java.lang.Boolean disabled)

      Whether this icon is disabled. Can be updated at runtime via the `FormItem.setIconDisabled()` method. Note that if the formItem containing this icon is disabled, the icon will behave in a disabled manner regardless of the setting of the icon.disabled property.
      Parameters:
        `disabled` - New disabled value. Default value is null
      See Also:
        `FormItem.setIconDisabled(java.lang.String, boolean)`, `Appearance overview and related methods`

    - #### getDisabled

          public java.lang.Boolean getDisabled()

      Whether this icon is disabled. Can be updated at runtime via the `FormItem.setIconDisabled()` method. Note that if the formItem containing this icon is disabled, the icon will behave in a disabled manner regardless of the setting of the icon.disabled property.
      Returns:
        Current disabled value. Default value is null
      See Also:
        `FormItem.setIconDisabled(java.lang.String, boolean)`, `Appearance overview and related methods`

    - #### setDisabledCursor

          public void setDisabledCursor(Cursor disabledCursor)

      Specifies the cursor image to display when the mouse pointer is over this icon if this icon is disabled. It corresponds to the CSS cursor attribute. See Cursor type for different cursors.

      Note : This is an advanced setting

      Parameters:
        `disabledCursor` - New disabledCursor value. Default value is Canvas.DEFAULT
      See Also:
        `Cues overview and related methods`

    - #### getDisabledCursor

          public Cursor getDisabledCursor()

      Specifies the cursor image to display when the mouse pointer is over this icon if this icon is disabled. It corresponds to the CSS cursor attribute. See Cursor type for different cursors.
      Returns:
        Current disabledCursor value. Default value is Canvas.DEFAULT
      See Also:
        `Cues overview and related methods`

    - #### setDisableOnReadOnly

          public void setDisableOnReadOnly(java.lang.Boolean disableOnReadOnly)

      If `FormItem.canEdit` is set to false, should this icon be disabled. If unset this is determined by `FormItem.disableIconsOnReadOnly`. Note that if `neverDisable` is set to true, the icons will be rendered enabled regardless of this setting and whether the item is editable.

      Note : This is an advanced setting

      Parameters:
        `disableOnReadOnly` - New disableOnReadOnly value. Default value is null

    - #### getDisableOnReadOnly

          public java.lang.Boolean getDisableOnReadOnly()

      If `FormItem.canEdit` is set to false, should this icon be disabled. If unset this is determined by `FormItem.disableIconsOnReadOnly`. Note that if `neverDisable` is set to true, the icons will be rendered enabled regardless of this setting and whether the item is editable.
      Returns:
        Current disableOnReadOnly value. Default value is null

    - #### setEnableWhen

          public void setEnableWhen(AdvancedCriteria enableWhen)

      Criteria to be evaluated to determine whether this icon should appear enabled.

      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 FormItemIcon using enableWhen must have a `name` defined on its FormItem.

      Parameters:
        `enableWhen` - New enableWhen value. Default value is null
      See Also:
        `RuleCriteria overview and related methods`

    - #### getEnableWhen

          public AdvancedCriteria getEnableWhen()

      Criteria to be evaluated to determine whether this icon should appear enabled.

      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 FormItemIcon using enableWhen must have a `name` defined on its FormItem.

      Returns:
        Current enableWhen value. Default value is null
      See Also:
        `RuleCriteria overview and related methods`

    - #### setHeight

          public void setHeight(java.lang.Integer height)

      If set, this property determines the height of this icon in px. If unset the form item's `iconHeight` property will be used instead.
      Parameters:
        `height` - New height value. Default value is null
      See Also:
        `FormItem.setIconHeight(int)`

    - #### getHeight

          public java.lang.Integer getHeight()

      If set, this property determines the height of this icon in px. If unset the form item's `iconHeight` property will be used instead.
      Returns:
        Current height value. Default value is null
      See Also:
        `FormItem.getIconHeight()`

    - #### setHspace

          public void setHspace(java.lang.Integer hspace)

      If set, this property determines the number of pixels space to be displayed on the left of this form item icon, or for `inline` icons whose `inlineIconAlign` is `Alignment.LEFT`, on the right of this form item icon. Must be non-negative. If unset, the form item's `iconHSpace` will be used instead.
      Parameters:
        `hspace` - New hspace value. Default value is null

    - #### getHspace

          public java.lang.Integer getHspace()

      If set, this property determines the number of pixels space to be displayed on the left of this form item icon, or for `inline` icons whose `inlineIconAlign` is `Alignment.LEFT`, on the right of this form item icon. Must be non-negative. If unset, the form item's `iconHSpace` will be used instead.
      Returns:
        Current hspace value. Default value is null

    - #### setIconPlacement

          public void setIconPlacement(PickListItemIconPlacement iconPlacement)

      For PickList items with `PickListItemIconPlacement` set such that the pickList does not render near-origin, should this icon be rendered inline within the formItem itself, or within the `ComboBoxItem.pickerNavigationBar`.

      If not explicitly specified at the icon level, this will be picked up from PickList.iconPlacement.

      For mobile browsing with limited available screen space, icons rendered in the navigation bar may be easier for the user to interact with.

      Parameters:
        `iconPlacement` - New iconPlacement value. Default value is null

    - #### getIconPlacement

          public PickListItemIconPlacement getIconPlacement()

      For PickList items with `PickListItemIconPlacement` set such that the pickList does not render near-origin, should this icon be rendered inline within the formItem itself, or within the `ComboBoxItem.pickerNavigationBar`.

      If not explicitly specified at the icon level, this will be picked up from PickList.iconPlacement.

      For mobile browsing with limited available screen space, icons rendered in the navigation bar may be easier for the user to interact with.

      Returns:
        Current iconPlacement value. Default value is null

    - #### setInline

          public void setInline(java.lang.Boolean inline)

      When set, this icon is rendered inside the `textBox` area of the `FormItem` (where input occurs in a `TextItem`, `TextAreaItem` or `ComboBoxItem`) as opposed to as a trailing icon.

      Use `inlineIconAlign` to control alignment of the icon. Multiple icons can be inlined on both the left and right side of the `textBox` area. `hspace` is honored for spacing between multiple adjacent icons.

      Inline icons are not supported in Internet Explorer 6, or when the `FormItem` is not a `TextItem`, `TextAreaItem` or `ComboBoxItem`. When unsupported, the icon will fall back to non-inline mode.

      The `picker icon`, if any, cannot be inlined.

      As an alternative to displaying an image, an inline icon may display a string of HTML instead. See `text`.

      Parameters:
        `inline` - New inline value. Default value is false

    - #### getInline

          public java.lang.Boolean getInline()

      When set, this icon is rendered inside the `textBox` area of the `FormItem` (where input occurs in a `TextItem`, `TextAreaItem` or `ComboBoxItem`) as opposed to as a trailing icon.

      Use `inlineIconAlign` to control alignment of the icon. Multiple icons can be inlined on both the left and right side of the `textBox` area. `hspace` is honored for spacing between multiple adjacent icons.

      Inline icons are not supported in Internet Explorer 6, or when the `FormItem` is not a `TextItem`, `TextAreaItem` or `ComboBoxItem`. When unsupported, the icon will fall back to non-inline mode.

      The `picker icon`, if any, cannot be inlined.

      As an alternative to displaying an image, an inline icon may display a string of HTML instead. See `text`.

      Returns:
        Current inline value. Default value is false

    - #### setInlineIconAlign

          public void setInlineIconAlign(Alignment inlineIconAlign)

      Horizontal alignment for icons marked `inline`.

      By default, the first icon that specifies inline is aligned left, and the second and all subsequent icons to the right. `"center"` alignment is invalid and will be ignored.

      In RTL mode, the alignment is automatically mirrored; `inlineIconAlign:"left"` results in the icon being placed on the right and `inlineIconAlign:"right"` results in the icon being placed on the left.

      Parameters:
        `inlineIconAlign` - New inlineIconAlign value. Default value is null

    - #### getInlineIconAlign

          public Alignment getInlineIconAlign()

      Horizontal alignment for icons marked `inline`.

      By default, the first icon that specifies inline is aligned left, and the second and all subsequent icons to the right. `"center"` alignment is invalid and will be ignored.

      In RTL mode, the alignment is automatically mirrored; `inlineIconAlign:"left"` results in the icon being placed on the right and `inlineIconAlign:"right"` results in the icon being placed on the left.

      Returns:
        Current inlineIconAlign value. Default value is null

    - #### setName

          public void setName(java.lang.String name)

      Identifier for this form item icon. This identifier (if set) should be unique within this form item and may be used to get a pointer to the icon object via `FormItem.getIcon()`.
      Parameters:
        `name` - New name value. Default value is null
      See Also:
        `Identifier`

    - #### getName

          public java.lang.String getName()

      Identifier for this form item icon. This identifier (if set) should be unique within this form item and may be used to get a pointer to the icon object via `FormItem.getIcon()`.
      Returns:
        Current name value. Default value is null
      See Also:
        `Identifier`

    - #### setNeverDisable

          public void setNeverDisable(java.lang.Boolean neverDisable)

      If `icon.neverDisable` is true, when this form item is disabled, the icon will remain enabled. Note that disabling the entire form will disable all items, together with their icons including those marked as neverDisable - this property only has an effect if the form is enabled and a specific item is disabled within it.

      If this property is true, the icons will also remain enabled if a form item is marked as `canEdit:false`. For finer grained control over whether icons are enabled for read-only icons see `FormItem.disableIconsOnReadOnly` and `disableOnReadOnly`

      Note : This is an advanced setting

      Parameters:
        `neverDisable` - New neverDisable value. Default value is null

    - #### getNeverDisable

          public java.lang.Boolean getNeverDisable()

      If `icon.neverDisable` is true, when this form item is disabled, the icon will remain enabled. Note that disabling the entire form will disable all items, together with their icons including those marked as neverDisable - this property only has an effect if the form is enabled and a specific item is disabled within it.

      If this property is true, the icons will also remain enabled if a form item is marked as `canEdit:false`. For finer grained control over whether icons are enabled for read-only icons see `FormItem.disableIconsOnReadOnly` and `disableOnReadOnly`

      Returns:
        Current neverDisable value. Default value is null

    - #### setPrompt

          public void setPrompt(java.lang.String prompt)

      If set, this property will be displayed as a prompt (and tooltip text) for this form item icon.

      If unset the form item's `iconPrompt` property will be used instead.

      Note : This is an advanced setting

      Parameters:
        `prompt` - New prompt value. Default value is null
      See Also:
        `FormItem.setIconPrompt(java.lang.String)`, `HTMLString`

    - #### getPrompt

          public java.lang.String getPrompt()

      If set, this property will be displayed as a prompt (and tooltip text) for this form item icon.

      If unset the form item's `iconPrompt` property will be used instead.

      Returns:
        Current prompt value. Default value is null
      See Also:
        `FormItem.getIconPrompt()`, `HTMLString`

    - #### setShowDisabledOnFocus

          public void setShowDisabledOnFocus(java.lang.Boolean showDisabledOnFocus)

      If show-on-focus behavior is enabled for this icon via `showOnFocus` or related properties at the item level, and this icon is marked as disabled, should it be shown on focus? If unset, will be derived from the `FormItem.showDisabledIconsOnFocus` or `FormItem.showDisabledPickerIconOnFocus` settings.

      Note : This is an advanced setting

      Parameters:
        `showDisabledOnFocus` - New showDisabledOnFocus value. Default value is null

    - #### getShowDisabledOnFocus

          public java.lang.Boolean getShowDisabledOnFocus()

      If show-on-focus behavior is enabled for this icon via `showOnFocus` or related properties at the item level, and this icon is marked as disabled, should it be shown on focus? If unset, will be derived from the `FormItem.showDisabledIconsOnFocus` or `FormItem.showDisabledPickerIconOnFocus` settings.
      Returns:
        Current showDisabledOnFocus value. Default value is null

    - #### setShowFocused

          public void setShowFocused(java.lang.Boolean showFocused)

      Should this icon's image and/or `baseStyle` switch to the appropriate "Focused" value when the user puts focus on the form item or icon?

      Note : This is an advanced setting

      Parameters:
        `showFocused` - New showFocused value. Default value is null
      See Also:
        `FormItem.setShowFocusedIcons(java.lang.Boolean)`, `setShowFocusedWithItem(java.lang.Boolean)`

    - #### getShowFocused

          public java.lang.Boolean getShowFocused()

      Should this icon's image and/or `baseStyle` switch to the appropriate "Focused" value when the user puts focus on the form item or icon?
      Returns:
        Current showFocused value. Default value is null
      See Also:
        `FormItem.getShowFocusedIcons()`, `getShowFocusedWithItem()`

    - #### setShowFocusedWithItem

          public void setShowFocusedWithItem(java.lang.Boolean showFocusedWithItem)

      If this icon will be updated to show focus (see `showFocused`, `FormItem.showFocusedIcons`), this property governs whether the focused state should be shown when the item as a whole receives focus or just if the icon receives focus. If this property is unset, default behavior is to show focused state when the item receives focus.

      Note : This is an advanced setting

      Parameters:
        `showFocusedWithItem` - New showFocusedWithItem value. Default value is null
      See Also:
        `FormItem.setShowFocusedIcons(java.lang.Boolean)`, `setShowFocused(java.lang.Boolean)`

    - #### getShowFocusedWithItem

          public java.lang.Boolean getShowFocusedWithItem()

      If this icon will be updated to show focus (see `showFocused`, `FormItem.showFocusedIcons`), this property governs whether the focused state should be shown when the item as a whole receives focus or just if the icon receives focus. If this property is unset, default behavior is to show focused state when the item receives focus.
      Returns:
        Current showFocusedWithItem value. Default value is null
      See Also:
        `FormItem.getShowFocusedIcons()`, `getShowFocused()`

    - #### setShowOnFocus

          public void setShowOnFocus(java.lang.Boolean showOnFocus)

      Show this icon when its item gets focus, and hide it when it loses focus. If non-null, overrides the default behavior specified by `FormItem.showIconsOnFocus` or `FormItem.showPickerIconOnFocus`, as appropriate. This feature allows space to be saved in the form for items not being interacted with, and helps draw attention to the item currently in focus.

      Note : This is an advanced setting

      Parameters:
        `showOnFocus` - New showOnFocus value. Default value is null
      See Also:
        `FormItem.setIconShowOnFocus(java.lang.String, java.lang.Boolean)`

    - #### getShowOnFocus

          public java.lang.Boolean getShowOnFocus()

      Show this icon when its item gets focus, and hide it when it loses focus. If non-null, overrides the default behavior specified by `FormItem.showIconsOnFocus` or `FormItem.showPickerIconOnFocus`, as appropriate. This feature allows space to be saved in the form for items not being interacted with, and helps draw attention to the item currently in focus.
      Returns:
        Current showOnFocus value. Default value is null
      See Also:
        `FormItem.setIconShowOnFocus(java.lang.String, java.lang.Boolean)`

    - #### setShowOver

          public void setShowOver(java.lang.Boolean showOver)

      Should this icon's image and/or `baseStyle` switch to the appropriate "Over" value when the user rolls over or focuses on the icon?

      Note if `FormItem.showOver` is true and `showOverWhen` is set to "textBox", this icon will show over state when the user rolls over the text box (or control table, if visible) for the item. This is most commonly used for `inline` icons.

      Note : This is an advanced setting

      Parameters:
        `showOver` - New showOver value. Default value is null
      See Also:
        `FormItem.setShowOverIcons(java.lang.Boolean)`

    - #### getShowOver

          public java.lang.Boolean getShowOver()

      Should this icon's image and/or `baseStyle` switch to the appropriate "Over" value when the user rolls over or focuses on the icon?

      Note if `FormItem.showOver` is true and `showOverWhen` is set to "textBox", this icon will show over state when the user rolls over the text box (or control table, if visible) for the item. This is most commonly used for `inline` icons.

      Returns:
        Current showOver value. Default value is null
      See Also:
        `FormItem.getShowOverIcons()`

    - #### setShowOverWhen

          public void setShowOverWhen(IconOverTrigger showOverWhen)

      If `showOver` or `FormItem.showOverIcons` is true, this property may be set to customize when the 'over' styling is applied to the item. If unset, rollover styling will be applied when the user is over the icon only.

      Note : This is an advanced setting

      Parameters:
        `showOverWhen` - New showOverWhen value. Default value is null

    - #### getShowOverWhen

          public IconOverTrigger getShowOverWhen()

      If `showOver` or `FormItem.showOverIcons` is true, this property may be set to customize when the 'over' styling is applied to the item. If unset, rollover styling will be applied when the user is over the icon only.
      Returns:
        Current showOverWhen value. Default value is null

    - #### setShowRTL

          public void setShowRTL(java.lang.Boolean showRTL)

      Should this icon's `src` and/or `baseStyle` switch to the appropriate RTL value when the FormItem is in RTL mode? If true, then the image URL for all states will have "_rtl" added before the extension. Also, if baseStyle is set, all style names will have an "RTL" suffix. This should only be enabled if RTL media is available.

      For example, if an icon's src is "[SKINIMG]formItemIcons/myFormIcon.png" and the baseStyle is "myFormIcon", then in the "Down" state, Smart GWT will use "[SKINIMG]formItemIcons/myFormIcon_Down_rtl.png" for the image source and "myFormIconDownRTL" for the style name.

      Note : This is an advanced setting

      Parameters:
        `showRTL` - New showRTL value. Default value is null

    - #### getShowRTL

          public java.lang.Boolean getShowRTL()

      Should this icon's `src` and/or `baseStyle` switch to the appropriate RTL value when the FormItem is in RTL mode? If true, then the image URL for all states will have "_rtl" added before the extension. Also, if baseStyle is set, all style names will have an "RTL" suffix. This should only be enabled if RTL media is available.

      For example, if an icon's src is "[SKINIMG]formItemIcons/myFormIcon.png" and the baseStyle is "myFormIcon", then in the "Down" state, Smart GWT will use "[SKINIMG]formItemIcons/myFormIcon_Down_rtl.png" for the image source and "myFormIconDownRTL" for the style name.

      Returns:
        Current showRTL value. Default value is null

    - #### setSrc

          public void setSrc(java.lang.String src)

      If set, this property determines this icon's image source. If unset the form item's `defaultIconSrc` property will be used instead.
      As with `defaultIconSrc` this URL will be modified by adding "_Over" or "_Disabled" if appropriate to show the icon's over or disabled state. If `showRTL` is enabled, then "_rtl" will be added to the source URL before the extension.

      The special value "blank" means that no image will be shown for this icon. This is particularly useful together with `baseStyle` to implement spriting of the different icon states.

      For an `inline` `FormItemIcon`, `text` may be specified to show a string of HTML instead of an image.

      `Spriting` can be used for this image, by setting this property to a `SCSpriteConfig` formatted string.

      Parameters:
        `src` - New src value. Default value is null
      See Also:
        `FormItem.setDefaultIconSrc(java.lang.String)`, `SCImgURL`, Icons Example

    - #### getSrc

          public java.lang.String getSrc()

      If set, this property determines this icon's image source. If unset the form item's `defaultIconSrc` property will be used instead.
      As with `defaultIconSrc` this URL will be modified by adding "_Over" or "_Disabled" if appropriate to show the icon's over or disabled state. If `showRTL` is enabled, then "_rtl" will be added to the source URL before the extension.

      The special value "blank" means that no image will be shown for this icon. This is particularly useful together with `baseStyle` to implement spriting of the different icon states.

      For an `inline` `FormItemIcon`, `text` may be specified to show a string of HTML instead of an image.

      `Spriting` can be used for this image, by setting this property to a `SCSpriteConfig` formatted string.

      Returns:
        Current src value. Default value is null
      See Also:
        `FormItem.getDefaultIconSrc()`, `SCImgURL`, Icons Example

    - #### setTabIndex

          public void setTabIndex(java.lang.Integer tabIndex)

      TabIndex for this formItemIcon.

      Set to -1 to remove the icon from the tab order, but be cautious doing so: if the icon triggers important application functionality that cannot otherwise be accessed via the keyboard, it would be a violation of accessibility standard to remove the icon from the tab order.

      Any usage other than setting to -1 is extremely advanced in the same way as using `FormItem.globalTabIndex`.

      Note : This is an advanced setting

      Parameters:
        `tabIndex` - New tabIndex value. Default value is null

    - #### getTabIndex

          public java.lang.Integer getTabIndex()

      TabIndex for this formItemIcon.

      Set to -1 to remove the icon from the tab order, but be cautious doing so: if the icon triggers important application functionality that cannot otherwise be accessed via the keyboard, it would be a violation of accessibility standard to remove the icon from the tab order.

      Any usage other than setting to -1 is extremely advanced in the same way as using `FormItem.globalTabIndex`.

      Returns:
        Current tabIndex value. Default value is null

    - #### setText

          public void setText(java.lang.String text)

      As an alternative to displaying an image, an `inline` `FormItemIcon` can display a string of HTML where the icon's image would have appeared. This enables advanced customizations such as using text, icon font symbols, Unicode dingbats and emoji, and/or SVG in place of an image.

      Setting an inline icon's text property will cause the HTML to be used instead of an image, as long as the browser and form item support inline icons.

      This property only has an effect on inline icons. If the inline property is false, or the browser or form item does not support inline icons, then the image specified by `src` (or the form item's `defaultIconSrc`) will be used.

      Typically, the HTML is styled via `baseStyle`.

      Auto-sizing of the HTML is not supported; the HTML will be clipped to the icon's `width` and `height`.

      Note : This is an advanced setting

      Parameters:
        `text` - New text value. Default value is null
      See Also:
        `HTMLString`, Text Icons Example

    - #### getText

          public java.lang.String getText()

      As an alternative to displaying an image, an `inline` `FormItemIcon` can display a string of HTML where the icon's image would have appeared. This enables advanced customizations such as using text, icon font symbols, Unicode dingbats and emoji, and/or SVG in place of an image.

      Setting an inline icon's text property will cause the HTML to be used instead of an image, as long as the browser and form item support inline icons.

      This property only has an effect on inline icons. If the inline property is false, or the browser or form item does not support inline icons, then the image specified by `src` (or the form item's `defaultIconSrc`) will be used.

      Typically, the HTML is styled via `baseStyle`.

      Auto-sizing of the HTML is not supported; the HTML will be clipped to the icon's `width` and `height`.

      Returns:
        Current text value. Default value is null
      See Also:
        `HTMLString`, Text Icons Example

    - #### setVisibleWhen

          public void setVisibleWhen(AdvancedCriteria visibleWhen)

      Criteria to be evaluated to determine whether this icon should be visible.

      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 FormItemIcon using visibleWhen must have a `name` defined on its FormItem.

      Parameters:
        `visibleWhen` - New visibleWhen value. Default value is null
      See Also:
        `RuleCriteria overview and related methods`

    - #### getVisibleWhen

          public AdvancedCriteria getVisibleWhen()

      Criteria to be evaluated to determine whether this icon should be visible.

      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 FormItemIcon using visibleWhen must have a `name` defined on its FormItem.

      Returns:
        Current visibleWhen value. Default value is null
      See Also:
        `RuleCriteria overview and related methods`

    - #### setWidth

          public void setWidth(java.lang.Integer width)

      If set, this property determines the width of this icon in px. If unset the form item's `iconWidth` property will be used instead.
      Parameters:
        `width` - New width value. Default value is null
      See Also:
        `FormItem.setIconWidth(int)`

    - #### getWidth

          public java.lang.Integer getWidth()

      If set, this property determines the width of this icon in px. If unset the form item's `iconWidth` property will be used instead.
      Returns:
        Current width value. Default value is null
      See Also:
        `FormItem.getIconWidth()`

    - #### addFormItemClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addFormItemClickHandler(FormItemClickHandler handler)

      Add a formItemClick handler.

      Click handler for this icon.

      This event may be cancelled. If this event is not cancelled by the icon-level click handler, it may also be handled at the FormItem level via `FormItem.pickerIconClick()` [for the picker icon only], and then `FormItem.iconClick()`

      Specified by:
        `addFormItemClickHandler` in interface `HasFormItemClickHandlers`
      Parameters:
        `handler` - the formItemClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### keyPress

          public void keyPress(java.lang.String keyName,
                               char character,
                               DynamicForm form,
                               FormItem item,
                               FormItemIcon icon)

      StringMethod action to fire when this icon has focus and receives a keypress event. If unset the form item's `iconKeyPress` method will be fired instead (if specified).
      Parameters:
        `keyName` - Name of the key pressed. See `KeyName`
        `character` - character produced by the keypress
        `form` - The Dynamic Form to which this icon's item belongs.
        `item` - The Form Item containing this icon
        `icon` - A pointer to the form item icon

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `JsObject`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `JsObject`

    - #### setShowIfCondition

          public void setShowIfCondition(FormItemIfFunction showIf)

      Set showIf condition.

      If specified, `icon.showIf` will be evaluated when the form item is drawn or redrawn. Return true if the icon should be visible, or false if it should be hidden. Note that if `FormItem.showIcon` or `FormItem.hideIcon` is called, this method will be overridden.

      Parameters:
        `handler` - the showIf handler