Package org.zkoss.zul

Class Menuitem

java.lang.Object
org.zkoss.zk.ui.AbstractComponent
All Implemented Interfaces:
Serializable, Cloneable, org.zkoss.zk.ui.Component, org.zkoss.zk.ui.ext.Disable, org.zkoss.zk.ui.ext.Scope, org.zkoss.zk.ui.ext.Uploadable, org.zkoss.zk.ui.sys.ComponentCtrl

public class Menuitem extends LabelImageElement implements org.zkoss.zk.ui.ext.Disable, org.zkoss.zk.ui.ext.Uploadable
A single choice in a Menupopup element. It acts much like a button but it is rendered on a menu.

Default getZclass(): z-menuitem. (since 3.5.0)

Author:
tomyeh
See Also:
  • 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

    org.zkoss.zk.ui.AbstractComponent.Children, org.zkoss.zk.ui.AbstractComponent.ForwardInfo, org.zkoss.zk.ui.AbstractComponent.TargetInfo

    Nested classes/interfaces inherited from interface org.zkoss.zk.ui.ext.Uploadable

    org.zkoss.zk.ui.ext.Uploadable.Error
  • 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
     
     
    Menuitem(String label, String src)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    beforeParentChanged(org.zkoss.zk.ui.Component parent)
     
     
    Returns a list of component IDs that shall be disabled when the user clicks this menuitem.
    Returns the href.
    Returns the target frame or window.
     
    Returns the value.
     
    boolean
    Returns whether the menuitem check mark will update each time the menu item is selected.
    boolean
    Returns whether it is checked.
    boolean
    Returns whether the check mark shall be displayed in front of each item.
    protected boolean
    Not childable.
    boolean
    Returns whether it is disabled.
    boolean
    Returns whether this is an top-level menu, i.e., not owning by another Menupopup.
    protected void
    Renders the crawlable information.
    protected void
    renderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer)
     
    void
    service(org.zkoss.zk.au.AuRequest request, boolean everError)
    Processes an AU request.
    void
    setAutocheck(boolean autocheck)
    Sets whether the menuitem check mark will update each time the menu item is selected.
    void
    setAutodisable(String autodisable)
    Sets a list of component IDs that shall be disabled when the user clicks this menuitem.
    void
    setChecked(boolean checked)
    Sets whether it is checked.
    void
    setCheckmark(boolean checkmark)
    Sets whether the check mark shall be displayed in front of each item.
    void
    setDisabled(boolean disabled)
    Sets whether it is disabled.
    void
    Sets the href.
    void
    setTarget(String target)
    Sets the target frame or window.
    void
    setUpload(String upload)
     
    void
    Sets the value.
    protected void
     

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

    getLabel, setLabel

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

    addSclass, evalCSSFlex, focus, getAction, getClientAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getSkeleton, getStyle, getTabindex, getTabindexInteger, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, removeSclass, removeSclass, setAction, setClass, setClientAction, setDraggable, setDroppable, setFocus, setHeight, setHeight0, setHeightDirectly, setHflex, setHflex0, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setSkeleton, 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, 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, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Menuitem

      public Menuitem()
    • Menuitem

      public Menuitem(String label)
    • Menuitem

      public Menuitem(String label, String src)
  • Method Details

    • isCheckmark

      public boolean isCheckmark()
      Returns whether the check mark shall be displayed in front of each item.

      Default: false.

      Since:
      3.5.0
    • setCheckmark

      public void setCheckmark(boolean checkmark)
      Sets whether the check mark shall be displayed in front of each item.

      Note the checkbox can be checked only if isAutocheck() is true

      Since:
      3.5.0
    • getZclass

      public String getZclass()
      Overrides:
      getZclass in class org.zkoss.zk.ui.HtmlBasedComponent
    • setDisabled

      public void setDisabled(boolean disabled)
      Sets whether it is disabled.
      Specified by:
      setDisabled in interface org.zkoss.zk.ui.ext.Disable
      Since:
      3.0.1
    • isDisabled

      public boolean isDisabled()
      Returns whether it is disabled.

      Default: false.

      Specified by:
      isDisabled in interface org.zkoss.zk.ui.ext.Disable
      Since:
      3.0.1
    • getAutodisable

      public String getAutodisable()
      Returns a list of component IDs that shall be disabled when the user clicks this menuitem.
      Since:
      5.0.7
    • setAutodisable

      public void setAutodisable(String autodisable)
      Sets a list of component IDs that shall be disabled when the user clicks this menuitem.

      To represent the menuitem itself, the developer can specify self. For example, <menuitem id="ok" autodisable="self,cancel"/> is the same as <menuitem id="ok" autodisable="ok,cancel"/> that will disable both the ok and cancel menuitem when an user clicks it.

      The menuitem being disabled will be enabled automatically once the client receives a response from the server. In other words, the server doesn't notice if a menuitem is disabled with this method.

      However, if you prefer to enable them later manually, you can prefix with '+'. For example, <menuitem id="ok" autodisable="+self,+cancel"/>

      Then, you have to enable them manually such as

      if (something_happened){
        ok.setDisabled(false);
        cancel.setDisabled(false);
      

      Default: null.

      Since:
      5.0.7
    • getValue

      public String getValue()
      Returns the value.

      Default: "".

    • setValue

      public void setValue(String value)
      Sets the value.
    • isChecked

      public boolean isChecked()
      Returns whether it is checked.

      Default: false.

    • setChecked

      public void setChecked(boolean checked)
      Sets whether it is checked.

      This only applies when isCheckmark() = true. (since 3.5.0)

    • isAutocheck

      public boolean isAutocheck()
      Returns whether the menuitem check mark will update each time the menu item is selected.

      Default: false.

    • setAutocheck

      public void setAutocheck(boolean autocheck)
      Sets whether the menuitem check mark will update each time the menu item is selected.

      This only applies when isCheckmark() = true. (since 3.5.0)

    • getHref

      public String getHref()
      Returns the href.

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

    • setHref

      public void setHref(String href) throws org.zkoss.zk.ui.WrongValueException
      Sets the href.
      Throws:
      org.zkoss.zk.ui.WrongValueException
    • getTarget

      public 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(String target)
      Sets the target frame or window.
      Parameters:
      target - the name of the frame or window to hyperlink.
    • isTopmost

      public boolean isTopmost()
      Returns whether this is an top-level menu, i.e., not owning by another Menupopup.
    • getUpload

      public String getUpload()
      Specified by:
      getUpload in interface org.zkoss.zk.ui.ext.Uploadable
    • setUpload

      public void setUpload(String upload)
      Specified by:
      setUpload in interface org.zkoss.zk.ui.ext.Uploadable
    • beforeParentChanged

      public void beforeParentChanged(org.zkoss.zk.ui.Component parent)
      Specified by:
      beforeParentChanged in interface org.zkoss.zk.ui.sys.ComponentCtrl
      Overrides:
      beforeParentChanged in class org.zkoss.zk.ui.AbstractComponent
    • clone

      public Object clone()
      Specified by:
      clone in interface org.zkoss.zk.ui.Component
      Overrides:
      clone in class LabelImageElement
    • isChildable

      protected boolean isChildable()
      Not childable.
      Overrides:
      isChildable in class org.zkoss.zk.ui.AbstractComponent
    • renderProperties

      protected void renderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer) throws IOException
      Overrides:
      renderProperties in class LabelImageElement
      Throws:
      IOException
    • renderCrawlable

      protected void renderCrawlable(String label) throws IOException
      Description copied from class: LabelElement
      Renders the crawlable information. It is called by LabelElement.renderProperties(org.zkoss.zk.ui.sys.ContentRenderer), and designed to be overridden if the deriving class wants to generate it differently.

      Default: org.zkoss.zul.impl.Utils.renderCrawlableText(label)

      Overrides:
      renderCrawlable in class LabelElement
      Throws:
      IOException
    • service

      public void service(org.zkoss.zk.au.AuRequest request, boolean everError)
      Processes an AU request.

      Default: in addition to what are handled by HtmlBasedComponent.service(org.zkoss.zk.au.AuRequest, boolean), it also handles onCheck.

      Specified by:
      service in interface org.zkoss.zk.ui.sys.ComponentCtrl
      Overrides:
      service in class org.zkoss.zk.ui.HtmlBasedComponent
      Since:
      5.0.0
    • updateByClient

      protected void updateByClient(String name, Object value)
      Overrides:
      updateByClient in class org.zkoss.zk.ui.AbstractComponent