Package org.zkoss.stateless.sul

## Interface INav

- All Superinterfaces:
    `IChildable<INav,​IChildrenOfNavbar>`, `IChildrenOfInputgroup<INav>`, `IChildrenOfNavbar<INav>`, `IComponent<INav>`, `IHtmlBasedComponent<INav>`, `ILabelElement<INav>`, `ILabelImageElement<INav>`, `IXulElement<INav>`

      public interface INav
      extends ILabelImageElement<INav>, IChildable<INav,​IChildrenOfNavbar>, IChildrenOfNavbar<INav>

  Immutable `Nav` component

  A container is used to display navitems, it should be placed inside a `INavbar`.

  ### Support @Action

  Name | Action Type
  --- | ---
  onOpen | ActionData: `OpenData` Denotes user has opened or closed a nav component.

  Author:
    katherine
  See Also:
    `Nav`

- - ### Nested Class Summary

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

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static INav` | `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
    --- | --- | ---
    `java.lang.String` | `getBadgeText()` | Returns the badge text of the nav
    `default java.lang.String` | `getWidgetClass()` | Returns the client widget class.
    `default boolean` | `isOpen()` | Returns whether this container is open.
    `static INav` | `of​(java.lang.String label)` | Returns the instance with the given label.
    `static INav` | `ofIconSclass​(java.lang.String iconSclass)` | Returns the instance with the given iconSclass.
    `static INav` | `ofId​(java.lang.String id)` | Returns the instance with the given id.
    `INav` | `withBadgeText​(java.lang.String badgeText)` | Returns a copy of `this` immutable component with the specified `badgeText`.
    `INav` | `withOpen​(boolean open)` | Returns a copy of `this` immutable component with the specified `open`.

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

      `getChildren, withChildren, withChildren`

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

      Constant for default attributes of this immutable component.

  - ### Method Detail

    - #### getWidgetClass

          default java.lang.String getWidgetClass()

      Returns the client widget class.

      Default: `"zkmax.nav.Nav"`

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

    - #### getBadgeText

          @Nullable
          java.lang.String getBadgeText()

      Returns the badge text of the nav

      Default: `null`

    - #### withBadgeText

          INav withBadgeText​(@Nullable
                             java.lang.String badgeText)

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

      Sets the badge text of the nav

      Parameters:
        `badgeText` - The badge text of the nav

        Default: `null`.

      Returns:
        A modified copy of the `this` object

    - #### isOpen

          default boolean isOpen()

      Returns whether this container is open.

      Default: `false`.

    - #### withOpen

          INav withOpen​(boolean open)

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

      Sets whether this container is open.

      Parameters:
        `open` - Whether this container is open.

        Default: `false`.

      Returns:
        A modified copy of the `this` object

    - #### of

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

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

    - #### ofIconSclass

          static INav ofIconSclass​(java.lang.String iconSclass)

      Returns the instance with the given iconSclass.
      Parameters:
        `iconSclass` - The iconSclass that the nav holds.

    - #### ofId

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

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