Package org.zkoss.stateless.sul

## Interface IToolbarbutton

- All Superinterfaces:
    `IAnyGroup<IToolbarbutton>`, `IButtonBase<IToolbarbutton>`, `IChildrenOfInputgroup<IToolbarbutton>`, `IComponent<IToolbarbutton>`, `IHtmlBasedComponent<IToolbarbutton>`, `ILabelElement<IToolbarbutton>`, `ILabelImageElement<IToolbarbutton>`, `IXulElement<IToolbarbutton>`

      public interface IToolbarbutton
      extends IButtonBase<IToolbarbutton>, IAnyGroup<IToolbarbutton>

  Immutable `Toolbarbutton` component

  The behavior of Toolbarbutton is similar to the button except the appearance is different. The button component uses HTML BUTTON tag, while the toolbarbutton component uses HTML DIV tag.

  A toolbarbutton could be placed outside a toolbar. However toolbarbuttons change their appearance if they are placed inside a toolbar.

  Toolbarbutton supports getHref(). If getHref() is not null, the onClick handler is ignored and this element is degenerated to HTML's A tag.

  ### Support @Action

  Name | Action Type
  --- | ---
  onCheck | ActionData: `CheckData` Denotes when toolbarbutton is checked , only available in toggle mode.

  Author:
    katherine
  See Also:
    `Toolbarbutton`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface | Description
    --- | --- | ---
    `static class` | `IToolbarbutton.Builder` | Builds instances of type `IToolbarbutton`.
    `static class` | `IToolbarbutton.Mode` | Specifies the mode with `withMode(Mode)`.
    `static class` | `IToolbarbutton.Updater` | Builds an updater of type `IToolbarbutton` for `UiAgent.smartUpdate(Locator, SmartUpdater)`.

    - ### Nested classes/interfaces inherited from interface org.zkoss.stateless.sul.IButtonBase

      `IButtonBase.Direction, IButtonBase.Orient, IButtonBase.Type`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static IToolbarbutton` | `DEFAULT` | Constant for default attributes of this immutable component.

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default java.lang.String` | `getMode()` | Returns the current mode.
    `default java.lang.String` | `getWidgetClass()` | Returns the client widget class.
    `default boolean` | `isChecked()` | Returns whether it is checked.
    `static IToolbarbutton` | `of​(java.lang.String label)` | Returns the instance with the given label.
    `static IToolbarbutton` | `of​(java.lang.String label, java.lang.String image)` | Returns the instance with the given label and image.
    `static IToolbarbutton` | `ofDir​(IButtonBase.Direction dir)` | Returns the instance with the given dir.
    `static IToolbarbutton` | `ofId​(java.lang.String id)` | Returns the instance with the given id.
    `static IToolbarbutton` | `ofImage​(java.lang.String image)` | Returns the instance with the given image.
    `static IToolbarbutton` | `ofMode​(IToolbarbutton.Mode mode)` | Returns the instance with the given mode.
    `static IToolbarbutton` | `ofOrient​(IButtonBase.Orient orient)` | Returns the instance with the given orient.
    `IToolbarbutton` | `withAction​(ActionHandler value)` | Copy the current immutable object by setting a value for the `action` attribute.
    `IToolbarbutton` | `withActions​(java.lang.Iterable<? extends ActionHandler> elements)` | Copy the current immutable object with elements that replace the content of `actions`.
    `IToolbarbutton` | `withActions​(ActionHandler... elements)` | Copy the current immutable object with elements that replace the content of `actions`.
    `IToolbarbutton` | `withAutodisable​(java.lang.String value)` | Copy the current immutable object by setting a value for the `autodisable` attribute.
    `IToolbarbutton` | `withChecked​(boolean checked)` | Returns a copy of `this` immutable component with the specified `checked`.
    `IToolbarbutton` | `withClientAction​(java.lang.String value)` | Copy the current immutable object by setting a value for the `clientAction` attribute.
    `IToolbarbutton` | `withClientAttributes​(java.util.Map<java.lang.String,​? extends java.lang.String> entries)` | Copy the current immutable object by replacing the `clientAttributes` map with the specified map.
    `IToolbarbutton` | `withContext​(java.lang.String value)` | Copy the current immutable object by setting a value for the `context` attribute.
    `IToolbarbutton` | `withCtrlKeys​(java.lang.String value)` | Copy the current immutable object by setting a value for the `ctrlKeys` attribute.
    `IToolbarbutton` | `withDir​(java.lang.String value)` | Copy the current immutable object by setting a value for the `dir` attribute.
    `IToolbarbutton` | `withDisabled​(boolean value)` | Copy the current immutable object by setting a value for the `disabled` attribute.
    `IToolbarbutton` | `withDraggable​(java.lang.String value)` | Copy the current immutable object by setting a value for the `draggable` attribute.
    `IToolbarbutton` | `withDroppable​(java.lang.String value)` | Copy the current immutable object by setting a value for the `droppable` attribute.
    `IToolbarbutton` | `withEventListenerMap​(EventListenerMap value)` | Copy the current immutable object by setting a value for the `eventListenerMap` attribute.
    `IToolbarbutton` | `withFocus​(boolean value)` | Copy the current immutable object by setting a value for the `focus` attribute.
    `IToolbarbutton` | `withHeight​(java.lang.String value)` | Copy the current immutable object by setting a value for the `height` attribute.
    `IToolbarbutton` | `withHflex​(java.lang.String value)` | Copy the current immutable object by setting a value for the `hflex` attribute.
    `IToolbarbutton` | `withHoverImage​(java.lang.String value)` | Copy the current immutable object by setting a value for the `hoverImage` attribute.
    `IToolbarbutton` | `withHref​(java.lang.String value)` | Copy the current immutable object by setting a value for the `href` attribute.
    `IToolbarbutton` | `withIconSclass​(java.lang.String value)` | Copy the current immutable object by setting a value for the `iconSclass` attribute.
    `IToolbarbutton` | `withIconSclasses​(java.lang.String... elements)` | Copy the current immutable object with elements that replace the content of `iconSclasses`.
    `IToolbarbutton` | `withIconTooltip​(java.lang.String value)` | Copy the current immutable object by setting a value for the `iconTooltip` attribute.
    `IToolbarbutton` | `withIconTooltips​(java.lang.String... elements)` | Copy the current immutable object with elements that replace the content of `iconTooltips`.
    `IToolbarbutton` | `withId​(java.lang.String value)` | Copy the current immutable object by setting a value for the `id` attribute.
    `IToolbarbutton` | `withImage​(java.lang.String value)` | Copy the current immutable object by setting a value for the `image` attribute.
    `IToolbarbutton` | `withLabel​(java.lang.String value)` | Copy the current immutable object by setting a value for the `label` attribute.
    `IToolbarbutton` | `withLeft​(java.lang.String value)` | Copy the current immutable object by setting a value for the `left` attribute.
    `IToolbarbutton` | `withMode​(java.lang.String mode)` | Returns a copy of `this` immutable component with the specified `mode`.
    `default IToolbarbutton` | `withMode​(IToolbarbutton.Mode mode)` | Returns a copy of `this` immutable component with the specified `mode`.
    `IToolbarbutton` | `withMold​(java.lang.String value)` | Copy the current immutable object by setting a value for the `mold` attribute.
    `IToolbarbutton` | `withOrient​(java.lang.String value)` | Copy the current immutable object by setting a value for the `orient` attribute.
    `IToolbarbutton` | `withPopup​(java.lang.String value)` | Copy the current immutable object by setting a value for the `popup` attribute.
    `IToolbarbutton` | `withPreloadImage​(boolean value)` | Copy the current immutable object by setting a value for the `preloadImage` attribute.
    `IToolbarbutton` | `withRenderdefer​(int value)` | Copy the current immutable object by setting a value for the `renderdefer` attribute.
    `IToolbarbutton` | `withSclass​(java.lang.String value)` | Copy the current immutable object by setting a value for the `sclass` attribute.
    `IToolbarbutton` | `withStyle​(java.lang.String value)` | Copy the current immutable object by setting a value for the `style` attribute.
    `IToolbarbutton` | `withTabindex​(java.lang.Integer value)` | Copy the current immutable object by setting a value for the `tabindex` attribute.
    `IToolbarbutton` | `withTarget​(java.lang.String value)` | Copy the current immutable object by setting a value for the `target` attribute.
    `IToolbarbutton` | `withTooltip​(java.lang.String value)` | Copy the current immutable object by setting a value for the `tooltip` attribute.
    `IToolbarbutton` | `withTooltiptext​(java.lang.String value)` | Copy the current immutable object by setting a value for the `tooltiptext` attribute.
    `IToolbarbutton` | `withTop​(java.lang.String value)` | Copy the current immutable object by setting a value for the `top` attribute.
    `IToolbarbutton` | `withType​(java.lang.String value)` | Copy the current immutable object by setting a value for the `type` attribute.
    `IToolbarbutton` | `withUpload​(java.lang.String value)` | Copy the current immutable object by setting a value for the `upload` attribute.
    `IToolbarbutton` | `withVflex​(java.lang.String value)` | Copy the current immutable object by setting a value for the `vflex` attribute.
    `IToolbarbutton` | `withVisible​(boolean value)` | Copy the current immutable object by setting a value for the `visible` attribute.
    `IToolbarbutton` | `withWidgetClass​(java.lang.String value)` | Copy the current immutable object by setting a value for the `widgetClass` attribute.
    `IToolbarbutton` | `withWidgetListeners​(java.util.Map<java.lang.String,​? extends java.lang.String> entries)` | Copy the current immutable object by replacing the `widgetListeners` map with the specified map.
    `IToolbarbutton` | `withWidgetOverrides​(java.util.Map<java.lang.String,​? extends java.lang.String> entries)` | Copy the current immutable object by replacing the `widgetOverrides` map with the specified map.
    `IToolbarbutton` | `withWidth​(java.lang.String value)` | Copy the current immutable object by setting a value for the `width` attribute.
    `IToolbarbutton` | `withZclass​(java.lang.String value)` | Copy the current immutable object by setting a value for the `zclass` attribute.
    `IToolbarbutton` | `withZIndex​(int value)` | Copy the current immutable object by setting a value for the `zIndex` attribute.

    - ### Methods inherited from interface org.zkoss.stateless.sul.IButtonBase

      `checkOrient, getAutodisable, getDir, getHref, getOrient, getTarget, getType, getUpload, isDisabled, withAutodisable, withDir, withDir, withDisabled, withHref, withOrient, withOrient, withTarget, withType, withType, withUpload`

    - ### Methods inherited from interface org.zkoss.stateless.sul.IComponent

      `getAction, getActions, getClientAttributes, getId, getMold, getWidgetListeners, getWidgetOverrides, isVisible, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withActions, withActions, withClientAttribute, withClientAttributes, withId, withMold, withVisible, withWidgetClass, withWidgetListener, withWidgetListeners, withWidgetOverride, withWidgetOverrides`

    - ### Methods inherited from interface org.zkoss.stateless.sul.IHtmlBasedComponent

      `getClientAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTooltiptext, getTop, getVflex, getWidth, getZclass, getZIndex, isFocus, withClientAction, withDraggable, withDroppable, withFocus, withHeight, withHflex, withLeft, withRenderdefer, withSclass, withStyle, withTabindex, withTabindex, withTooltiptext, withTop, withVflex, withWidth, withZclass, withZIndex`

    - ### Methods inherited from interface org.zkoss.stateless.sul.ILabelElement

      `getLabel, withLabel`

    - ### Methods inherited from interface org.zkoss.stateless.sul.ILabelImageElement

      `getHoverImage, getIconSclass, getIconSclasses, getIconTooltip, getIconTooltips, getImage, isPreloadImage, withHoverImage, withIconSclass, withIconSclasses, withIconTooltip, withIconTooltips, withImage, withPreloadImage`

    - ### Methods inherited from interface org.zkoss.stateless.sul.IXulElement

      `getContext, getCtrlKeys, getPopup, getTooltip, withContext, withCtrlKeys, withPopup, withTooltip`

- - ### Field Detail

    - #### DEFAULT

          static final IToolbarbutton DEFAULT

      Constant for default attributes of this immutable component.

  - ### Method Detail

    - #### getWidgetClass

          default java.lang.String getWidgetClass()

      Returns the client widget class.

      Default: `"zul.wgt.Toolbarbutton"`

      Specified by:
        `getWidgetClass` in interface `IComponent<IToolbarbutton>`

    - #### getMode

          default java.lang.String getMode()

      Returns the current mode.

      Default: `"default"`

    - #### withMode

          IToolbarbutton withMode​(java.lang.String mode)

      Returns a copy of `this` immutable component with the specified `mode`.

      Sets the mode to `"default"` and `"toggle"`

      Parameters:
        `mode` - The mode of this component.

        Default: `"default"`.

      Returns:
        A modified copy of the `this` object

    - #### withMode

          default IToolbarbutton withMode​(IToolbarbutton.Mode mode)

      Returns a copy of `this` immutable component with the specified `mode`.

      Sets the mode to `"default"` and `"toggle"`

      Parameters:
        `mode` - The mode of this component.

        Default: `"default"`.

      Returns:
        A modified copy of the `this` object

    - #### isChecked

          default boolean isChecked()

      Returns whether it is checked.

      Default: `false`.

    - #### withChecked

          IToolbarbutton withChecked​(boolean checked)

      Returns a copy of `this` immutable component with the specified `checked`.

      Sets whether it is checked.

      Parameters:
        `checked` - Whether it is checked.

        Default: `false`.

      Returns:
        A modified copy of the `this` object

    - #### of

          static IToolbarbutton of​(java.lang.String label)

      Returns the instance with the given label.
      Parameters:
        `label` - The label that the component

    - #### of

          static IToolbarbutton of​(java.lang.String label,
                                   java.lang.String image)

      Returns the instance with the given label and image.
      Parameters:
        `label` - The label that the button holds.
        `image` - The image that the button holds.

    - #### ofImage

          static IToolbarbutton ofImage​(java.lang.String image)

      Returns the instance with the given image.
      Parameters:
        `image` - The image that the button holds.

    - #### ofMode

          static IToolbarbutton ofMode​(IToolbarbutton.Mode mode)

      Returns the instance with the given mode.
      Parameters:
        `mode` - The button mode

    - #### ofOrient

          static IToolbarbutton ofOrient​(IButtonBase.Orient orient)

      Returns the instance with the given orient.
      Parameters:
        `orient` - The button orient

    - #### ofDir

          static IToolbarbutton ofDir​(IButtonBase.Direction dir)

      Returns the instance with the given dir.
      Parameters:
        `dir` - The button dir

    - #### ofId

          static IToolbarbutton ofId​(java.lang.String id)

      Returns the instance with the given id.
      Parameters:
        `id` - The id to identify this component

    - #### withId

          IToolbarbutton withId​(java.lang.String value)

      Copy the current immutable object by setting a value for the `id` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for id
      Returns:
        A modified copy of the `this` object

    - #### withAction

          IToolbarbutton withAction​(@Nullable
                                    ActionHandler value)

      Copy the current immutable object by setting a value for the `action` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for action (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withActions

          IToolbarbutton withActions​(ActionHandler... elements)

      Copy the current immutable object with elements that replace the content of `actions`.
      Parameters:
        `elements` - The elements to set
      Returns:
        A modified copy of `this` object

    - #### withActions

          IToolbarbutton withActions​(java.lang.Iterable<? extends ActionHandler> elements)

      Copy the current immutable object with elements that replace the content of `actions`. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `elements` - An iterable of actions elements to set
      Returns:
        A modified copy of `this` object

    - #### withVisible

          IToolbarbutton withVisible​(boolean value)

      Copy the current immutable object by setting a value for the `visible` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for visible
      Returns:
        A modified copy of the `this` object

    - #### withMold

          IToolbarbutton withMold​(java.lang.String value)

      Copy the current immutable object by setting a value for the `mold` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for mold
      Returns:
        A modified copy of the `this` object

    - #### withEventListenerMap

          IToolbarbutton withEventListenerMap​(@Nullable
                                              EventListenerMap value)

      Copy the current immutable object by setting a value for the `eventListenerMap` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for eventListenerMap (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withWidgetListeners

          IToolbarbutton withWidgetListeners​(java.util.Map<java.lang.String,​? extends java.lang.String> entries)

      Copy the current immutable object by replacing the `widgetListeners` map with the specified map. Nulls are not permitted as keys or values. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `entries` - The entries to be added to the widgetListeners map
      Returns:
        A modified copy of `this` object

    - #### withWidgetOverrides

          IToolbarbutton withWidgetOverrides​(java.util.Map<java.lang.String,​? extends java.lang.String> entries)

      Copy the current immutable object by replacing the `widgetOverrides` map with the specified map. Nulls are not permitted as keys or values. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `entries` - The entries to be added to the widgetOverrides map
      Returns:
        A modified copy of `this` object

    - #### withClientAttributes

          IToolbarbutton withClientAttributes​(java.util.Map<java.lang.String,​? extends java.lang.String> entries)

      Copy the current immutable object by replacing the `clientAttributes` map with the specified map. Nulls are not permitted as keys or values. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `entries` - The entries to be added to the clientAttributes map
      Returns:
        A modified copy of `this` object

    - #### withLeft

          IToolbarbutton withLeft​(@Nullable
                                  java.lang.String value)

      Copy the current immutable object by setting a value for the `left` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for left (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withTop

          IToolbarbutton withTop​(@Nullable
                                 java.lang.String value)

      Copy the current immutable object by setting a value for the `top` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for top (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withZIndex

          IToolbarbutton withZIndex​(int value)

      Copy the current immutable object by setting a value for the `zIndex` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for zIndex
      Returns:
        A modified copy of the `this` object

    - #### withHeight

          IToolbarbutton withHeight​(@Nullable
                                    java.lang.String value)

      Copy the current immutable object by setting a value for the `height` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for height (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withWidth

          IToolbarbutton withWidth​(@Nullable
                                   java.lang.String value)

      Copy the current immutable object by setting a value for the `width` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for width (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withTooltiptext

          IToolbarbutton withTooltiptext​(@Nullable
                                         java.lang.String value)

      Copy the current immutable object by setting a value for the `tooltiptext` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for tooltiptext (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withZclass

          IToolbarbutton withZclass​(@Nullable
                                    java.lang.String value)

      Copy the current immutable object by setting a value for the `zclass` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for zclass (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withSclass

          IToolbarbutton withSclass​(@Nullable
                                    java.lang.String value)

      Copy the current immutable object by setting a value for the `sclass` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for sclass (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withStyle

          IToolbarbutton withStyle​(@Nullable
                                   java.lang.String value)

      Copy the current immutable object by setting a value for the `style` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for style (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withDraggable

          IToolbarbutton withDraggable​(java.lang.String value)

      Copy the current immutable object by setting a value for the `draggable` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for draggable
      Returns:
        A modified copy of the `this` object

    - #### withFocus

          IToolbarbutton withFocus​(boolean value)

      Copy the current immutable object by setting a value for the `focus` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for focus
      Returns:
        A modified copy of the `this` object

    - #### withDroppable

          IToolbarbutton withDroppable​(java.lang.String value)

      Copy the current immutable object by setting a value for the `droppable` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for droppable
      Returns:
        A modified copy of the `this` object

    - #### withVflex

          IToolbarbutton withVflex​(@Nullable
                                   java.lang.String value)

      Copy the current immutable object by setting a value for the `vflex` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for vflex (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withHflex

          IToolbarbutton withHflex​(@Nullable
                                   java.lang.String value)

      Copy the current immutable object by setting a value for the `hflex` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for hflex (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withRenderdefer

          IToolbarbutton withRenderdefer​(int value)

      Copy the current immutable object by setting a value for the `renderdefer` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for renderdefer
      Returns:
        A modified copy of the `this` object

    - #### withClientAction

          IToolbarbutton withClientAction​(@Nullable
                                          java.lang.String value)

      Copy the current immutable object by setting a value for the `clientAction` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for clientAction (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withTabindex

          IToolbarbutton withTabindex​(@Nullable
                                      java.lang.Integer value)

      Copy the current immutable object by setting a value for the `tabindex` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for tabindex (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withCtrlKeys

          IToolbarbutton withCtrlKeys​(@Nullable
                                      java.lang.String value)

      Copy the current immutable object by setting a value for the `ctrlKeys` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for ctrlKeys (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withContext

          IToolbarbutton withContext​(@Nullable
                                     java.lang.String value)

      Copy the current immutable object by setting a value for the `context` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for context (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withPopup

          IToolbarbutton withPopup​(@Nullable
                                   java.lang.String value)

      Copy the current immutable object by setting a value for the `popup` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for popup (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withTooltip

          IToolbarbutton withTooltip​(@Nullable
                                     java.lang.String value)

      Copy the current immutable object by setting a value for the `tooltip` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for tooltip (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withLabel

          IToolbarbutton withLabel​(java.lang.String value)

      Copy the current immutable object by setting a value for the `label` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for label
      Returns:
        A modified copy of the `this` object

    - #### withIconSclass

          IToolbarbutton withIconSclass​(@Nullable
                                        java.lang.String value)

      Copy the current immutable object by setting a value for the `iconSclass` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for iconSclass (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withIconSclasses

          IToolbarbutton withIconSclasses​(java.lang.String... elements)

      Copy the current immutable object with elements that replace the content of `iconSclasses`. The array is cloned before being saved as attribute values.
      Parameters:
        `elements` - The non-null elements for iconSclasses
      Returns:
        A modified copy of `this` object

    - #### withIconTooltip

          IToolbarbutton withIconTooltip​(@Nullable
                                         java.lang.String value)

      Copy the current immutable object by setting a value for the `iconTooltip` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for iconTooltip (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withIconTooltips

          IToolbarbutton withIconTooltips​(java.lang.String... elements)

      Copy the current immutable object with elements that replace the content of `iconTooltips`. The array is cloned before being saved as attribute values.
      Parameters:
        `elements` - The non-null elements for iconTooltips
      Returns:
        A modified copy of `this` object

    - #### withImage

          IToolbarbutton withImage​(@Nullable
                                   java.lang.String value)

      Copy the current immutable object by setting a value for the `image` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for image (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withHoverImage

          IToolbarbutton withHoverImage​(@Nullable
                                        java.lang.String value)

      Copy the current immutable object by setting a value for the `hoverImage` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for hoverImage (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withPreloadImage

          IToolbarbutton withPreloadImage​(boolean value)

      Copy the current immutable object by setting a value for the `preloadImage` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for preloadImage
      Returns:
        A modified copy of the `this` object

    - #### withDir

          IToolbarbutton withDir​(java.lang.String value)

      Copy the current immutable object by setting a value for the `dir` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for dir
      Returns:
        A modified copy of the `this` object

    - #### withOrient

          IToolbarbutton withOrient​(java.lang.String value)

      Copy the current immutable object by setting a value for the `orient` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for orient
      Returns:
        A modified copy of the `this` object

    - #### withType

          IToolbarbutton withType​(java.lang.String value)

      Copy the current immutable object by setting a value for the `type` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for type
      Returns:
        A modified copy of the `this` object

    - #### withDisabled

          IToolbarbutton withDisabled​(boolean value)

      Copy the current immutable object by setting a value for the `disabled` attribute. A value equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for disabled
      Returns:
        A modified copy of the `this` object

    - #### withAutodisable

          IToolbarbutton withAutodisable​(@Nullable
                                         java.lang.String value)

      Copy the current immutable object by setting a value for the `autodisable` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for autodisable (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withTarget

          IToolbarbutton withTarget​(@Nullable
                                    java.lang.String value)

      Copy the current immutable object by setting a value for the `target` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for target (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withUpload

          IToolbarbutton withUpload​(@Nullable
                                    java.lang.String value)

      Copy the current immutable object by setting a value for the `upload` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for upload (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withHref

          IToolbarbutton withHref​(@Nullable
                                  java.lang.String value)

      Copy the current immutable object by setting a value for the `href` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for href (can be `null`)
      Returns:
        A modified copy of the `this` object

    - #### withWidgetClass

          IToolbarbutton withWidgetClass​(java.lang.String value)

      Copy the current immutable object by setting a value for the `widgetClass` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for widgetClass
      Returns:
        A modified copy of the `this` object