Package org.zkoss.zul

Class Menu

  • 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.sys.ComponentCtrl

    public class Menu
    extends LabelImageElement
    implements org.zkoss.zk.ui.ext.Disable
    An element, much like a button, that is placed on a menu bar. When the user clicks the menu element, the child Menupopup of the menu will be displayed. This element is also used to create submenus (of Menupopup.

    Default getZclass(): z-mean. (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
    • 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
      Menu()  
      Menu​(java.lang.String label)  
      Menu​(java.lang.String label, java.lang.String src)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void beforeChildAdded​(org.zkoss.zk.ui.Component child, org.zkoss.zk.ui.Component refChild)  
      void beforeParentChanged​(org.zkoss.zk.ui.Component parent)  
      java.lang.Object clone()  
      java.lang.String getContent()
      Returns the embedded content (i.e., HTML tags) that is shown as part of the description.
      Menupopup getMenupopup()
      Returns the Menupopup it owns, or null if not available.
      java.lang.String getZclass()  
      boolean insertBefore​(org.zkoss.zk.ui.Component child, org.zkoss.zk.ui.Component refChild)  
      boolean isDisabled()
      Returns whether it is disabled.
      boolean isTopmost()
      Returns whether this is an top-level menu, i.e., not owning by another Menupopup.
      void onChildRemoved​(org.zkoss.zk.ui.Component child)  
      void open()
      Opens the menupopup that belongs to the menu.
      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 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.
      • 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, 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, invalidate, isChildable, isDisabledHostChanged, isInitialized, isInvalidated, isListenerAvailable, isVisible, onChildAdded, 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

      • Menu

        public Menu()
      • Menu

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

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

      • isTopmost

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

        public Menupopup getMenupopup()
        Returns the Menupopup it owns, or null if not available.
      • 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.

        Default: empty ("").

        Since:
        5.0.0
      • 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.

        There is a way to create Colorbox automatically by using #color=#RRGGBB, usage example setContent("#color=#FFFFFF")

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

        Since:
        5.0.0
      • isDisabled

        public boolean isDisabled()
        Returns whether it is disabled.

        Default: false.

        Specified by:
        isDisabled in interface org.zkoss.zk.ui.ext.Disable
        Since:
        8.0.3
      • setDisabled

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

        public void open()
        Opens the menupopup that belongs to the menu.

        Note that this function is only applied when it is topmost menu, i.e. the parent of the menu is Menubar

        Since:
        6.0.0
      • getZclass

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

        protected void renderProperties​(org.zkoss.zk.ui.sys.ContentRenderer renderer)
                                 throws java.io.IOException
        Overrides:
        renderProperties in class LabelImageElement
        Throws:
        java.io.IOException
      • 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
      • beforeChildAdded

        public void beforeChildAdded​(org.zkoss.zk.ui.Component child,
                                     org.zkoss.zk.ui.Component refChild)
        Specified by:
        beforeChildAdded in interface org.zkoss.zk.ui.sys.ComponentCtrl
        Overrides:
        beforeChildAdded in class org.zkoss.zk.ui.AbstractComponent
      • onChildRemoved

        public void onChildRemoved​(org.zkoss.zk.ui.Component child)
        Specified by:
        onChildRemoved in interface org.zkoss.zk.ui.sys.ComponentCtrl
        Overrides:
        onChildRemoved in class org.zkoss.zk.ui.AbstractComponent
      • insertBefore

        public boolean insertBefore​(org.zkoss.zk.ui.Component child,
                                    org.zkoss.zk.ui.Component refChild)
        Specified by:
        insertBefore in interface org.zkoss.zk.ui.Component
        Overrides:
        insertBefore 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
      • 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 onClick.

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