Class MeshElement

java.lang.Object
org.zkoss.zk.ui.AbstractComponent
org.zkoss.zk.ui.HtmlBasedComponent
org.zkoss.zul.impl.XulElement
org.zkoss.zul.impl.MeshElement
All Implemented Interfaces:
Serializable, Cloneable, org.zkoss.zk.ui.Component, org.zkoss.zk.ui.ext.Scope, org.zkoss.zk.ui.sys.ComponentCtrl, Paginated
Direct Known Subclasses:
Grid, Listbox, Tree

public abstract class MeshElement extends XulElement implements Paginated
The fundamental class for mesh elements such as Grid, Listbox, and Tree.
Since:
5.0.6
Author:
henrichen
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static class 
     

    Nested classes/interfaces inherited from class org.zkoss.zk.ui.HtmlBasedComponent

    org.zkoss.zk.ui.HtmlBasedComponent.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
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     

    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
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    Internal check if there is any use of vflex and height before setRows
    boolean
     
    int
    Returns the active page (starting from 0).
    int
    Returns the number of pages.
    int
    Returns the page size, a.k.a., the number rows per page.
    Returns how to position the paging of mesh element at the client screen.
    Return column span hint of this component.
    protected abstract boolean
     
    boolean
    Returns whether the auto-paging facility is turned on when mold is "paging".
    boolean
    Returns whether the Paging component of this component is disabled.
    boolean
    Returns whether sizing grid/listbox/tree column width by its content.
    boolean
    Returns whether distributes remaining empty space of this component to ANY column.
    protected abstract Paginal
    pgi()
    Returns the instance of the @{link Paginal}
    protected void
    renderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer)
     
    void
    setActivePage(int pg)
    Sets the active page (starting from 0).
    void
    setAutopaging(boolean autopaging)
    Sets whether the auto-paging facility is turned on when mold is "paging".
    void
    setPageSize(int pgsz)
    Sets the page size, a.k.a., the number rows per page.
    void
    setPagingDisabled(boolean pagingDisabled)
    Sets whether to disable the Paging component of this component
    void
    setPagingPosition(String pagingPosition)
    Sets how to position the paging of mesh element at the client screen.
    void
    setSizedByContent(boolean byContent)
    Sets whether sizing grid/listbox/tree column width by its content; it equals set hflex="min" on each column.
    void
    setSpan(boolean span)
    Sets whether distributes remaining empty space of this component to ALL columns proportionally.
    void
    Sets column span hint of this component.

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

    addSclass, focus, getAction, getClientAction, getDraggable, getDroppable, getExtraCtrl, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getSkeleton, getStyle, getTabindex, getTabindexInteger, getTooltiptext, getTop, getVflex, getWidth, getZclass, getZindex, getZIndex, removeSclass, removeSclass, service, 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, beforeParentChanged, 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
  • Field Details

  • Constructor Details

    • MeshElement

      public MeshElement()
  • Method Details

    • getSpan

      public String getSpan()
      Return column span hint of this component.

      Default: null

      Returns:
      column span hint of this component.
      Since:
      5.0.6
      See Also:
    • setSpan

      public void setSpan(String span)
      Sets column span hint of this component.

      String number span indicates how this component distributes remaining empty space to the specified column(0-based). "0" means distribute remaining empty space to the 1st column; "1" means distribute remaining empty space to the 2nd column, etc.. The spanning column will grow to fit the extra remaining space.

      Special span hint with "true" means span ALL columns proportionally per their original widths while null or "false" means NOT spanning any column.

      Default: null. That is, NOT span any column.

      Note span is meaningful only if there is remaining empty space for columns.

      Parameters:
      span - the column span hint.
      Since:
      5.0.6
      See Also:
    • setSpan

      public void setSpan(boolean span)
      Sets whether distributes remaining empty space of this component to ALL columns proportionally.

      Default: false. That is, NOT span any column.

      Note span is meaningful only if there is remaining empty space for columns.

      Parameters:
      span - whether to span the width of ALL columns to occupy the whole mesh element(grid/listbox/tree).
      Since:
      5.0.5
    • isSpan

      public boolean isSpan()
      Returns whether distributes remaining empty space of this component to ANY column.

      Default: false.

      Returns:
      whether distributes remaining empty space of this component to ANY column.
      Since:
      5.0.5
      See Also:
    • setSizedByContent

      public void setSizedByContent(boolean byContent)
      Sets whether sizing grid/listbox/tree column width by its content; it equals set hflex="min" on each column.

      Default: false.

      Parameters:
      byContent -
      Since:
      5.0.0
    • isSizedByContent

      public boolean isSizedByContent()
      Returns whether sizing grid/listbox/tree column width by its content. Default is false.
      Since:
      5.0.0
      See Also:
    • setAutopaging

      public void setAutopaging(boolean autopaging)
      Sets whether the auto-paging facility is turned on when mold is "paging". If it is set to true, the setPageSize(int) is ignored; rather, the page size is automatically determined by the height of the Listbox dynamically. Note: Due to performance concern, Autopaging functionality does not support Detail components.
      Parameters:
      autopaging - true to turn on the auto-paging facility.
      Since:
      5.0.2
    • isAutopaging

      public boolean isAutopaging()
      Returns whether the auto-paging facility is turned on when mold is "paging". If it is set to true, the setPageSize(int) is ignored; rather, the page size is automatically determined by the height of the Listbox dynamically.
      Returns:
      whether the "autopaging" facility is turned on.
      Since:
      5.0.2
    • setPagingPosition

      public void setPagingPosition(String pagingPosition)
      Sets how to position the paging of mesh element at the client screen. It is meaningless if the mold is not in "paging".
      Parameters:
      pagingPosition - how to position. It can only be "bottom" (the default), or "top", or "both".
      Since:
      3.0.4
    • isAutohidePaging

      protected abstract boolean isAutohidePaging()
    • getPagingPosition

      public String getPagingPosition()
      Returns how to position the paging of mesh element at the client screen. It is meaningless if the mold is not in "paging".
      Specified by:
      getPagingPosition in interface Paginated
      Since:
      3.0.4
    • pgi

      protected abstract Paginal pgi()
      Returns the instance of the @{link Paginal}
    • getPageSize

      public int getPageSize()
      Returns the page size, a.k.a., the number rows per page.
      Throws:
      IllegalStateException - if pgi() returns null, i.e., mold is not "paging" and no external controller is specified.
    • setPageSize

      public void setPageSize(int pgsz) throws org.zkoss.zk.ui.WrongValueException
      Sets the page size, a.k.a., the number rows per page.
      Throws:
      IllegalStateException - if pgi() returns null, i.e., mold is not "paging" and no external controller is specified.
      org.zkoss.zk.ui.WrongValueException
    • getPageCount

      public int getPageCount()
      Returns the number of pages. Note: there is at least one page even no item at all.
      Since:
      3.0.4
    • getActivePage

      public int getActivePage()
      Returns the active page (starting from 0).
      Since:
      3.0.4
    • setActivePage

      public void setActivePage(int pg) throws org.zkoss.zk.ui.WrongValueException
      Sets the active page (starting from 0).
      Throws:
      org.zkoss.zk.ui.WrongValueException
      Since:
      3.0.4
    • isPagingDisabled

      public boolean isPagingDisabled()
      Description copied from interface: Paginated
      Returns whether the Paging component of this component is disabled.

      Default: false.

      Specified by:
      isPagingDisabled in interface Paginated
      Returns:
      whether the paging component of this component is disabled
      Since:
      8.0.3
    • setPagingDisabled

      public void setPagingDisabled(boolean pagingDisabled)
      Sets whether to disable the Paging component of this component
      Specified by:
      setPagingDisabled in interface Paginated
      Parameters:
      pagingDisabled -
      Since:
      8.0.3
    • checkBeforeSetRows

      protected void checkBeforeSetRows() throws org.zkoss.zk.ui.UiException
      Internal check if there is any use of vflex and height before setRows
      Throws:
      org.zkoss.zk.ui.UiException
    • renderProperties

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

      public boolean evalCSSFlex()
      Overrides:
      evalCSSFlex in class org.zkoss.zk.ui.HtmlBasedComponent