Package org.zkoss.zkmax.zul

## Class Navitem

- java.lang.Object
- - org.zkoss.zk.ui.AbstractComponent
  - - org.zkoss.zk.ui.HtmlBasedComponent
    - - org.zkoss.zul.impl.XulElement
      - - org.zkoss.zul.impl.LabelElement
        - - org.zkoss.zul.impl.LabelImageElement
          - - org.zkoss.zkmax.zul.Navitem

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`, `Component`, `Disable`, `Scope`, `ComponentCtrl`

      public class Navitem
      extends LabelImageElement
      implements Disable

  A single choice in a `Navbar` or `Nav` element. It acts much like a button but it is rendered on a navbar or nav.

  Default `getZclass()`: z-navitem.

  Since:
    7.0.0
  Author:
    RaymondChao
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.zkoss.zul.impl.LabelImageElement

      `LabelImageElement.ExtraCtrl`

    - ### Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent

      `AbstractComponent.Children, AbstractComponent.ForwardInfo, AbstractComponent.TargetInfo`

  - ### Field Summary

    - ### Fields inherited from class org.zkoss.zk.ui.HtmlBasedComponent

      `_zclass`

    - ### Fields inherited from interface org.zkoss.zk.ui.Component

      `APPLICATION_SCOPE, COMPONENT_SCOPE, DESKTOP_SCOPE, PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, SPACE_SCOPE`

    - ### Fields inherited from interface org.zkoss.zk.ui.sys.ComponentCtrl

      `AFTER_CHILD_ADDED, AFTER_CHILD_REMOVED, AFTER_CLONED, AFTER_PAGE_ATTACHED, AFTER_PAGE_DETACHED, AFTER_PARENT_CHANGED, CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Navitem()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `beforeParentChanged​(Component parent)` | Default: If parent is null, execute the @Destroy method if any.
    `java.lang.String` | `getBadgeText()` | Returns the badge text of the navitem
    `java.lang.String` | `getContent()` | Returns the embedded content (i.e., HTML tags) that is shown as part of the description.
    `java.lang.String` | `getHref()` | Returns the href.
    `Navbar` | `getNavbar()` | Returns the navigation bar that it belongs to.
    `java.lang.String` | `getTarget()` | Returns the target frame or window.
    `java.lang.String` | `getZclass()` | Returns the ZK Cascading Style class for this component.
    `boolean` | `isDisabled()` | Returns whether it is disabled.
    `boolean` | `isSelected()` | Returns whether it is selected.
    `boolean` | `isTopmost()` | Returns whether this is in a top-level navbar, i.e., not owning by another `Nav`.
    `protected void` | `renderProperties​(ContentRenderer renderer)` | Renders the content of this component, excluding the enclosing tags and children.
    `void` | `setBadgeText​(java.lang.String badgeText)` | Sets the badge text of the navitem
    `void` | `setContent​(java.lang.String content)` | Sets the embedded content (i.e., HTML tags) that is shown as part of the description.
    `void` | `setDisabled​(boolean disabled)` | Sets whether it is disabled.
    `void` | `setHref​(java.lang.String href)` | Sets the href.
    `void` | `setSelected​(boolean selected)` | Sets whether it is selected.
    `void` | `setTarget​(java.lang.String target)` | Sets the target frame or window.

    - ### Methods inherited from class org.zkoss.zul.impl.LabelImageElement

      `clone, getExtraCtrl, getHoverImage, getHoverImageContent, getIconSclass, getIconSclasses, getIconTooltip, getIconTooltips, getImage, getImageContent, getPropertyAccess, isImageAssigned, setHoverImage, setHoverImageContent, setHoverImageContent, setIconSclass, setIconSclasses, setIconTooltip, setIconTooltips, setImage, setImageContent, setImageContent`

    - ### Methods inherited from class org.zkoss.zul.impl.LabelElement

      `getLabel, renderCrawlable, setLabel`

    - ### Methods inherited from class org.zkoss.zul.impl.XulElement

      `getContext, getCtrlKeys, getPopup, getTooltip, setContext, setContext, setContextAttributes, setCtrlKeys, setPopup, setPopup, setPopupAttributes, setTooltip, setTooltip, setTooltipAttributes`

    - ### Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent

      `addSclass, evalCSSFlex, focus, getAction, getClientAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTabindexInteger, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, removeSclass, removeSclass, service, setAction, setClass, setClientAction, setDraggable, setDroppable, setFocus, setHeight, setHeight0, setHeightDirectly, setHflex, setHflex0, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTabindex, setTabindex, setTooltiptext, setTop, setTopDirectly, setVflex, setVflex0, setVflexDirectly, setWidth, setWidth0, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectly`

    - ### Methods inherited from class org.zkoss.zk.ui.AbstractComponent

      `addAnnotation, addCallback, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addRedrawCallback, addScopeListener, addShadowRoot, addShadowRootBefore, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, destroyIndexCacheMap, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableBindingAnnotation, disableClientUpdate, disableHostChanged, enableBindingAnnotation, enableHostChanged, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getCallback, getChildren, getClientAttribute, getClientDataAttribute, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getForwards, getId, getIndexCacheMap, getLastChild, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRedrawCallback, getRoot, getShadowFellowIfAny, getShadowRoots, getShadowVariable, getShadowVariable, getShadowVariable0, getSpaceOwner, getSpecialRendererOutput, getStubonly, getSubBindingAnnotationCount, getTemplate, getTemplateNames, getUuid, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasBindingAnnotation, hasFellow, hasFellow, hasSubBindingAnnotation, initIndexCacheMap, insertBefore, invalidate, isChildable, isDisabledHostChanged, isInitialized, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, onParentChanged, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeCallback, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, renderPropertiesOnly, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setClientDataAttribute, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize`

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

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### Navitem

          public Navitem()

  - ### Method Detail

    - #### getHref

          public java.lang.String getHref()

      Returns the href.

      Default: null. If null, the button has no function unless you specify the onClick handler.

    - #### setHref

          public void setHref​(java.lang.String href)
                       throws WrongValueException

      Sets the href.
      Throws:
        `WrongValueException`

    - #### getContent

          public java.lang.String getContent()

      Returns the embedded content (i.e., HTML tags) that is shown as part of the description.

      It is useful to show the description in more versatile way.

    - #### setContent

          public void setContent​(java.lang.String content)

      Sets the embedded content (i.e., HTML tags) that is shown as part of the description.

      It is useful to show the description in more versatile way.

      Default: empty ("").

      Deriving class can override it to return whatever it wants other than null.

      ### Security Note

      Unlike other methods, the content assigned to this method is generated directly to the browser without escaping. Thus, it is better not to have something input by the user to avoid any XSS attach.

      Note: since 10.0.0, the content is sanitized by default to avoid XSS attack, and please don't use JavaScript in the content.

    - #### getTarget

          public java.lang.String getTarget()

      Returns the target frame or window.

      Note: it is useful only if href (`setHref(java.lang.String)`) is specified (i.e., use the onClick listener).

      Default: null.

    - #### setTarget

          public void setTarget​(java.lang.String target)

      Sets the target frame or window.
      Parameters:
        `target` - the name of the frame or window to hyperlink.

    - #### getNavbar

          public Navbar getNavbar()

      Returns the navigation bar that it belongs to.

    - #### isSelected

          public boolean isSelected()

      Returns whether it is selected.

      Default: false.

    - #### setSelected

          public void setSelected​(boolean selected)

      Sets whether it is selected.

    - #### setDisabled

          public void setDisabled​(boolean disabled)

      Sets whether it is disabled.
      Specified by:
        `setDisabled` in interface `Disable`

    - #### isDisabled

          public boolean isDisabled()

      Returns whether it is disabled.

      Default: false.

      Specified by:
        `isDisabled` in interface `Disable`

    - #### getBadgeText

          public java.lang.String getBadgeText()

      Returns the badge text of the navitem
      Since:
        9.6.0

    - #### setBadgeText

          public void setBadgeText​(java.lang.String badgeText)

      Sets the badge text of the navitem
      Since:
        9.6.0

    - #### getZclass

          public java.lang.String getZclass()

      Description copied from class: `HtmlBasedComponent`
      Returns the ZK Cascading Style class for this component. It usually depends on the implementation of the mold (`AbstractComponent.getMold()`).

      Default: null (the default value depends on element).

      `HtmlBasedComponent.setZclass(java.lang.String)`) will completely replace the default style of a component. In other words, the default style of a component is associated with the default value of `HtmlBasedComponent.getZclass()`. Once it is changed, the default style won't be applied at all. If you want to perform small adjustments, use `HtmlBasedComponent.setSclass(java.lang.String)` instead.

      Overrides:
        `getZclass` in class `HtmlBasedComponent`
      See Also:
        `HtmlBasedComponent.getSclass()`

    - #### isTopmost

          public boolean isTopmost()

      Returns whether this is in a top-level navbar, i.e., not owning by another `Nav`.

    - #### beforeParentChanged

          public void beforeParentChanged​(Component parent)

      Description copied from class: `AbstractComponent`
      Default: If parent is null, execute the @Destroy method if any.
      Specified by:
        `beforeParentChanged` in interface `ComponentCtrl`
      Overrides:
        `beforeParentChanged` in class `AbstractComponent`
      Parameters:
        `parent` - the new parent. If null, it means detachment.
      See Also:
        `ComponentCtrl.beforeParentChanged(org.zkoss.zk.ui.Component)`

    - #### renderProperties

          protected void renderProperties​(ContentRenderer renderer)
                                   throws java.io.IOException

      Description copied from class: `HtmlBasedComponent`
      Renders the content of this component, excluding the enclosing tags and children.

      See also ZK Client-side Reference: Property Rendering

      Overrides:
        `renderProperties` in class `LabelImageElement`
      Throws:
        `java.io.IOException`