Package org.zkoss.stateless.sul

## Interface ICheckbox

- All Superinterfaces:
    `IAnyGroup<ICheckbox>`, `ICheckboxBase<ICheckbox>`, `IChildrenOfInputgroup<ICheckbox>`, `IComponent<ICheckbox>`, `IHtmlBasedComponent<ICheckbox>`, `ILabelElement<ICheckbox>`, `ILabelImageElement<ICheckbox>`, `IXulElement<ICheckbox>`

      public interface ICheckbox
      extends ICheckboxBase<ICheckbox>, IAnyGroup<ICheckbox>

  Immutable `Checkbox` component

  ### Support @Action

  Name | Action Type
  --- | ---
  onCheck | ActionData: `CheckData` Denotes when a component is checked or unchecked.
  onFocus | Denotes when a component gets the focus. Remember event listeners execute at the server, so the focus at the client might be changed when the event listener for `onFocus` got executed.
  onBlur | Denotes when a component loses the focus. Remember event listeners execute at the server, so the focus at the client might be changed when the event listener for `onBlur` got executed.

  ### Support Molds

  Name | Snapshot
  --- | ---
  `"default"` |
  `"switch"` |
  `"toggle"` |
  `"tristate"` | Allowing users to set the `indeterminate` state, in addition to the checked and unchecked states. In `tristate` mold, when users click on the checkbox, it will switch between checked, unchecked and indeterminate states. This is different from the `default` mold which has only checked and unchecked states.

  Author:
    katherine
  See Also:
    `Checkbox`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface | Description
    --- | --- | ---
    `static class` | `ICheckbox.Builder` | Builds instances of type `ICheckbox`.
    `static class` | `ICheckbox.Updater` | Builds an updater of type `ICheckbox` for `UiAgent.smartUpdate(Locator, SmartUpdater)`.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static ICheckbox` | `DEFAULT` | Constant for default attributes of this immutable component.
    `static ICheckbox` | `SWITCH` | Constant for switch mold attributes of this immutable component.
    `static ICheckbox` | `TOGGLE` | Constant for toggle mold attributes of this immutable component.
    `static ICheckbox` | `TRISTATE` | Constant for tristate mold attributes of this immutable component.

  - ### Method Summary

    All Methods Static Methods Instance Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default java.lang.String` | `getWidgetClass()` | Returns the client widget class.
    `static ICheckbox` | `of​(java.lang.String label)` | Returns the instance with the given label.
    `static ICheckbox` | `of​(java.lang.String label, java.lang.String image)` | Returns the instance with the given label and image.
    `static ICheckbox` | `ofId​(java.lang.String id)` | Returns the instance with the given id.
    `static ICheckbox` | `ofImage​(java.lang.String image)` | Returns the instance with the given image.

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

      `getAutodisable, getName, getValue, isChecked, isDisabled, isIndeterminate, withAutodisable, withChecked, withDisabled, withIndeterminate, withName, withValue`

    - ### 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 ICheckbox DEFAULT

      Constant for default attributes of this immutable component.

    - #### SWITCH

          static final ICheckbox SWITCH

      Constant for switch mold attributes of this immutable component.

    - #### TOGGLE

          static final ICheckbox TOGGLE

      Constant for toggle mold attributes of this immutable component.

    - #### TRISTATE

          static final ICheckbox TRISTATE

      Constant for tristate mold attributes of this immutable component.

  - ### Method Detail

    - #### getWidgetClass

          default java.lang.String getWidgetClass()

      Returns the client widget class.

      Default: `"zul.wgt.Checkbox"`

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

    - #### of

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

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

    - #### of

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

      Returns the instance with the given label and image.
      Parameters:
        `label` - The label of the component
        `image` - The image of the component

    - #### ofImage

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

      Returns the instance with the given image.
      Parameters:
        `image` - The image of the component

    - #### ofId

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

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