Package org.zkoss.zul

Class Menuitem

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.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:
    Serialized Form
    • Nested Class Summary

      • 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()  
      Menuitem​(java.lang.String label)  
      Menuitem​(java.lang.String label, java.lang.String src)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void beforeParentChanged​(org.zkoss.zk.ui.Component parent)  
      java.lang.Object clone()  
      java.lang.String getAutodisable()
      Returns a list of component IDs that shall be disabled when the user clicks this menuitem.
      java.lang.String getHref()
      Returns the href.
      java.lang.String getTarget()
      Returns the target frame or window.
      java.lang.String getUpload()  
      java.lang.String getValue()
      Returns the value.
      java.lang.String getZclass()  
      boolean isAutocheck()
      Returns whether the menuitem check mark will update each time the menu item is selected.
      boolean isChecked()
      Returns whether it is checked.
      boolean isCheckmark()
      Returns whether the check mark shall be displayed in front of each item.
      protected boolean isChildable()
      Not childable.
      boolean isDisabled()
      Returns whether it is disabled.
      boolean isTopmost()
      Returns whether this is an top-level menu, i.e., not owning by another Menupopup.
      protected void renderCrawlable​(java.lang.String label)
      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​(java.lang.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 setHref​(java.lang.String href)
      Sets the href.
      void setTarget​(java.lang.String target)
      Sets the target frame or window.
      void setUpload​(java.lang.String upload)  
      void setValue​(java.lang.String value)
      Sets the value.
      protected void updateByClient​(java.lang.String name, java.lang.Object value)  
      • 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, 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, 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 Detail

      • Menuitem

        public Menuitem()
      • Menuitem

        public Menuitem​(java.lang.String label)
      • Menuitem

        public Menuitem​(java.lang.String label,
                        java.lang.String src)
    • Method Detail

      • 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 java.lang.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 java.lang.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​(java.lang.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 java.lang.String getValue()
        Returns the value.

        Default: "".

      • setValue

        public void setValue​(java.lang.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 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 org.zkoss.zk.ui.WrongValueException
        Sets the href.
        Throws:
        org.zkoss.zk.ui.WrongValueException
      • 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.
      • isTopmost

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

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

        public void setUpload​(java.lang.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 java.lang.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 java.io.IOException
        Overrides:
        renderProperties in class LabelImageElement
        Throws:
        java.io.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​(java.lang.String name,
                                      java.lang.Object value)
        Overrides:
        updateByClient in class org.zkoss.zk.ui.AbstractComponent