Class Treecol
- All Implemented Interfaces:
Serializable,Cloneable,org.zkoss.zk.ui.Component,org.zkoss.zk.ui.ext.Scope,org.zkoss.zk.ui.sys.ComponentCtrl
Default getZclass(): z-treecol (since 5.0.0)
- Author:
- tomyeh
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.zkoss.zul.impl.HeaderElement
HeaderElement.ExtraCtrlNested 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
_zclassFields inherited from interface org.zkoss.zk.ui.Component
APPLICATION_SCOPE, COMPONENT_SCOPE, DESKTOP_SCOPE, PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, SPACE_SCOPEFields 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 -
Method Summary
Modifier and TypeMethodDescriptionvoidbeforeParentChanged(org.zkoss.zk.ui.Component parent) clone()intReturns the column index, starting from 0.intReturns the maximal length of each item's label.Comparator<?>Returns the ascending sorter, or null if not available.Comparator<?>Returns the descending sorter, or null if not available.Returns the sort direction.getTree()Returns the tree that it belongs to.voidonSort()It invokessort(boolean)to sort list items and maintaingetSortDirection().protected voidrenderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer) voidsetMaxlength(int maxlength) Sets the maximal length of each item's label.voidSets the type of the sorter.voidsetSortAscending(String clsnm) Sets the ascending sorter with the class name, or null for no sorter for the ascending order.voidsetSortAscending(Comparator<?> sorter) Sets the ascending sorter, or null for no sorter for the ascending order.voidsetSortDescending(String clsnm) Sets the descending sorter with the class name, or null for no sorter for the descending order.voidsetSortDescending(Comparator<?> sorter) Sets the descending sorter, or null for no sorter for the descending order.voidsetSortDirection(String sortDir) Sets the sort direction.booleansort(boolean ascending) Sorts the treechildren (Treeitem) based ongetSortAscending()andgetSortDescending(), ifgetSortDirection()doesn't matches the ascending argument.booleansort(boolean ascending, boolean force) Methods inherited from class org.zkoss.zul.impl.HeaderElement
evalCSSFlex, getAlign, getExtraCtrl, getValign, setAlign, setValignMethods inherited from class org.zkoss.zul.impl.LabelImageElement
getHoverImage, getHoverImageContent, getIconSclass, getIconSclasses, getIconTooltip, getIconTooltips, getImage, getImageContent, getPropertyAccess, isImageAssigned, setHoverImage, setHoverImageContent, setHoverImageContent, setIconSclass, setIconSclasses, setIconTooltip, setIconTooltips, setImage, setImageContent, setImageContentMethods inherited from class org.zkoss.zul.impl.LabelElement
getLabel, renderCrawlable, setLabelMethods inherited from class org.zkoss.zul.impl.XulElement
getContext, getCtrlKeys, getPopup, getTooltip, setContext, setContext, setContextAttributes, setCtrlKeys, setPopup, setPopup, setPopupAttributes, setTooltip, setTooltip, setTooltipAttributesMethods inherited from class org.zkoss.zk.ui.HtmlBasedComponent
addSclass, focus, getAction, getClientAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getSkeleton, 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, setSkeleton, setStyle, setTabindex, setTabindex, setTooltiptext, setTop, setTopDirectly, setVflex, setVflex0, setVflexDirectly, setWidth, setWidth0, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectlyMethods 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
-
Constructor Details
-
Treecol
public Treecol() -
Treecol
-
Treecol
-
Treecol
-
-
Method Details
-
getTree
Returns the tree that it belongs to. -
getSortDirection
Returns the sort direction.- Since:
- 5.0.6
Default: "natural".
-
setSortDirection
Sets the sort direction. This does not sort the data, it only serves as an indicator as to how the tree is sorted. (unless the tree has "autosort" attribute)If you use
sort(boolean)to sort treechildren (Treeitem), the sort direction is maintained automatically. If you want to sort it in customized way, you have to set the sort direction manually.- Parameters:
sortDir- one of "ascending", "descending" and "natural"- Throws:
org.zkoss.zk.ui.WrongValueException- Since:
- 5.0.6
-
setSort
public void setSort(String type) throws ClassNotFoundException, InstantiationException, IllegalAccessException Sets the type of the sorter. You might specify either "auto", "auto(FIELD_NAME1[,FIELD_NAME2] ...)", "auto(number)" or "none".If "client" or "client(number)" is specified, the sort functionality will be done by Javascript at client without notifying to server, that is, the order of the component in the row is out of sync.
- "client" : it is treated by a string
- "client(number)" : it is treated by a number
Note: client sorting cannot work in model case.
If "auto" is specified,
setSortAscending(java.util.Comparator<?>)and/orsetSortDescending(java.util.Comparator<?>)are called withTreeitemComparator, ifgetSortDescending()and/orgetSortAscending()are null. If you assigned a comparator to them, it won't be affected. The auto created comparator is case-insensitive.If "auto(FIELD_NAME1, FIELD_NAME2, ...)" is specified,
setSortAscending(java.util.Comparator<?>)and/orsetSortDescending(java.util.Comparator<?>)are called withFieldComparator, ifgetSortDescending()and/orgetSortAscending()are null. If you assigned a comparator to them, it won't be affected. The auto created comparator is case-sensitive.If "auto(LOWER(FIELD_NAME))" or "auto(UPPER(FIELD_NAME))" is specified,
setSortAscending(java.util.Comparator<?>)and/orsetSortDescending(java.util.Comparator<?>)are called withFieldComparator, ifgetSortDescending()and/orgetSortAscending()are null. If you assigned a comparator to them, it won't be affected. The auto created comparator is case-insensitive.If "auto(number)" is specified,
setSortAscending(java.util.Comparator<?>)and/orsetSortDescending(java.util.Comparator<?>)are called withArrayComparator. Notice that the data must be an array and the number-th element must be comparable (Comparable).If "none" is specified, both
setSortAscending(java.util.Comparator<?>)andsetSortDescending(java.util.Comparator<?>)are called with null. Therefore, no more sorting is available to users for this column.- Throws:
IllegalAccessExceptionInstantiationExceptionClassNotFoundException- Since:
- 5.0.6
-
getSortAscending
Returns the ascending sorter, or null if not available.- Since:
- 5.0.6
-
setSortAscending
Sets the ascending sorter, or null for no sorter for the ascending order.- Parameters:
sorter- the comparator used to sort the ascending order.- Since:
- 5.0.6
-
setSortAscending
public void setSortAscending(String clsnm) throws ClassNotFoundException, InstantiationException, IllegalAccessException Sets the ascending sorter with the class name, or null for no sorter for the ascending order.- Throws:
ClassNotFoundExceptionInstantiationExceptionIllegalAccessException- Since:
- 5.0.6
-
getSortDescending
Returns the descending sorter, or null if not available.- Since:
- 5.0.6
-
setSortDescending
Sets the descending sorter, or null for no sorter for the descending order.- Parameters:
sorter- the comparator used to sort the ascending order.- Since:
- 5.0.6
-
setSortDescending
public void setSortDescending(String clsnm) throws ClassNotFoundException, InstantiationException, IllegalAccessException Sets the descending sorter with the class name, or null for no sorter for the descending order.- Throws:
ClassNotFoundExceptionInstantiationExceptionIllegalAccessException- Since:
- 5.0.6
-
getMaxlength
public int getMaxlength()Returns the maximal length of each item's label.Default: 0 (no limit).
-
setMaxlength
public void setMaxlength(int maxlength) Sets the maximal length of each item's label.Default: 0 (no limit).
Notice that maxlength will be applied to this header and all listcell of the same column.
-
getColumnIndex
public int getColumnIndex()Returns the column index, starting from 0. -
sort
public boolean sort(boolean ascending) Sorts the treechildren (Treeitem) based ongetSortAscending()andgetSortDescending(), ifgetSortDirection()doesn't matches the ascending argument.It checks
getSortDirection()to see whether sorting is required, and updatesetSortDirection(java.lang.String)after sorted. For example, ifgetSortDirection()returns "ascending" and the ascending argument is false, nothing happens. To enforce the sorting, you can invokesetSortDirection(java.lang.String)with "natural" before invoking this method. Alternatively, you can invokesort(boolean, boolean)instead.It sorts the rows by use of
Components.sort(java.util.List<? extends org.zkoss.zk.ui.Component>, java.util.Comparator<? super org.zkoss.zk.ui.Component>), if not live data (i.e.,Tree.getModel()is null).On the other hand, it invokes
Sortable.sort(java.util.Comparator<T>, boolean)to sort the treechildren, if live data (i.e.,Tree.getModel()is not null). In other words, if you use the live data, you have to implementSortableto sort the live data explicitly.- Parameters:
ascending- whether to usegetSortAscending(). If the corresponding comparator is not set, it returns false and does nothing.- Returns:
- whether the rows are sorted.
- Throws:
org.zkoss.zk.ui.UiException- ifTree.getModel()is not null butSortableis not implemented.- Since:
- 5.0.6
-
sort
public boolean sort(boolean ascending, boolean force) - Parameters:
ascending- whether to usegetSortAscending(). If the corresponding comparator is not set, it returns false and does nothing.force- whether to enforce the sorting no matter what the sort direction (getSortDirection()) is. If false, this method is the same assort(boolean).- Returns:
- whether the treechildren are sorted.
- Since:
- 5.0.6
-
onSort
public void onSort()It invokessort(boolean)to sort list items and maintaingetSortDirection().- Since:
- 5.0.6
-
getZclass
- Overrides:
getZclassin classorg.zkoss.zk.ui.HtmlBasedComponent
-
renderProperties
- Overrides:
renderPropertiesin classHeaderElement- Throws:
IOException
-
beforeParentChanged
public void beforeParentChanged(org.zkoss.zk.ui.Component parent) - Specified by:
beforeParentChangedin interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
beforeParentChangedin classorg.zkoss.zk.ui.AbstractComponent
-
clone
- Specified by:
clonein interfaceorg.zkoss.zk.ui.Component- Overrides:
clonein classLabelImageElement
-