Class Organigram
- java.lang.Object
-
- org.zkoss.zk.ui.AbstractComponent
-
- org.zkoss.zk.ui.HtmlBasedComponent
-
- org.zkoss.zul.impl.XulElement
-
- org.zkoss.zkmax.zul.Organigram
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,org.zkoss.zk.ui.Component,org.zkoss.zk.ui.ext.Scope,org.zkoss.zk.ui.sys.ComponentCtrl
public class Organigram extends org.zkoss.zul.impl.XulElementA container which can be used to draw a hierarchical organizational chart, you can specify aTreeModelto render the data.Event:
SelectEventis sent when user changes the selection.
To retrieve what is selected in Organigram with a
TreeSelectableModel, you shall useTreeSelectableModel.isPathSelected(int[])to check whether the current path is selected inTreeSelectableModelrather than usinggetSelectedItem(). That is, you shall operate on the item of theTreeSelectableModelrather than on theOrgitemof theOrganigramif you use theTreeSelectableModelandTreeModel.To retrieve what are opened nodes in Organigram with a
TreeOpenableModel, you shall useTreeOpenableModel.isPathOpened(int[])to check whether the current path is opened inTreeOpenableModelrather than usingOrgitem.isOpen(). That is, you shall operate on the item of theTreeOpenableModelrather than on theOrgitemof theOrganigramif you use theTreeOpenableModelandTreeModel.- Since:
- 8.6.0
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Organigram()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbeforeChildAdded(org.zkoss.zk.ui.Component child, org.zkoss.zk.ui.Component insertBefore)voidclear()Clears all child Orgitems (Orgitem.java.lang.Objectclone()intgetItemCount()Returns the number of childOrgitem.<T> OrgitemRenderer<T>getItemRenderer()Returns the renderer to render each item, or null if the default renderer is used.java.util.Collection<Orgitem>getItems()Returns a readonly list of all descendingOrgitem(children's children and so on).<T> org.zkoss.zul.TreeModel<T>getModel()Returns the tree model associated with this Organigram, or null if this Organigram is not associated with any tree data model.OrgchildrengetOrgchildren()Returns the Orgchildren that this Organigram owns.OrgitemgetSelectedItem()Returns the selected item.intgetVisibleItemCount()Returns the number of visible descendantOrgitem.java.lang.StringgetZclass()booleaninsertBefore(org.zkoss.zk.ui.Component newChild, org.zkoss.zk.ui.Component refChild)voidonChildRemoved(org.zkoss.zk.ui.Component child)voidonInitRender()Handles a private event, onInitRender.voidonPageAttached(org.zkoss.zk.ui.Page newpage, org.zkoss.zk.ui.Page oldpage)voidonPageDetached(org.zkoss.zk.ui.Page page)voidrenderItem(Orgitem item)Renders the specifiedOrgitem, if not loaded yet, withgetItemRenderer().protected voidrenderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer)voidservice(org.zkoss.zk.au.AuRequest request, boolean everError)voidsessionDidActivate(org.zkoss.zk.ui.Page page)voidsessionWillPassivate(org.zkoss.zk.ui.Page page)voidsetItemRenderer(java.lang.String clsnm)Sets the renderer by use of a class name.voidsetItemRenderer(OrgitemRenderer<?> renderer)Sets the renderer which is used to render each item ifgetModel()is not null.voidsetModel(org.zkoss.zul.TreeModel<?> model)Sets the tree model associated with this Organigram.voidsetSelectedItem(Orgitem selectedItem)Deselects previous selected item and selects the given item.-
Methods inherited from class org.zkoss.zul.impl.XulElement
getContext, getCtrlKeys, getPopup, getPropertyAccess, getTooltip, setContext, setContext, setContextAttributes, setCtrlKeys, setPopup, setPopup, setPopupAttributes, setTooltip, setTooltip, setTooltipAttributes
-
Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent
addSclass, evalCSSFlex, focus, getAction, getClientAction, getDraggable, getDroppable, getExtraCtrl, 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, 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, invalidate, isChildable, isDisabledHostChanged, isInitialized, isInvalidated, isListenerAvailable, isVisible, onChildAdded, 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, 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
-
-
-
-
Method Detail
-
getOrgchildren
public Orgchildren getOrgchildren()
Returns the Orgchildren that this Organigram owns.- Returns:
- Orgchildren
-
getItems
public java.util.Collection<Orgitem> getItems()
Returns a readonly list of all descendingOrgitem(children's children and so on).Note: the performance of the size method of returned collection is no good.
- Returns:
- readonly list of all descending
Orgitem
-
getItemCount
public int getItemCount()
Returns the number of childOrgitem. The same asgetItems().size().Note: the performance of this method is no good.
- Returns:
- the number of child
Orgitem.
-
getVisibleItemCount
public int getVisibleItemCount()
Returns the number of visible descendantOrgitem. Descendants include direct children, grand children and so on.- Returns:
- the number of visible descendant
Orgitem.
-
getSelectedItem
public Orgitem getSelectedItem()
Returns the selected item. Note: Organigram only accepts one selected item.- Returns:
- the selected item.
-
setSelectedItem
public void setSelectedItem(Orgitem selectedItem)
Deselects previous selected item and selects the given item. Note: Organigram only accepts one selected item.- Parameters:
selectedItem- the item will be selected
-
clear
public void clear()
Clears all child Orgitems (Orgitem.Note: after clear,
getOrgchildren()won't be null, but it has no child.
-
beforeChildAdded
public void beforeChildAdded(org.zkoss.zk.ui.Component child, org.zkoss.zk.ui.Component insertBefore)- Specified by:
beforeChildAddedin interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
beforeChildAddedin classorg.zkoss.zk.ui.AbstractComponent
-
insertBefore
public boolean insertBefore(org.zkoss.zk.ui.Component newChild, org.zkoss.zk.ui.Component refChild)- Specified by:
insertBeforein interfaceorg.zkoss.zk.ui.Component- Overrides:
insertBeforein classorg.zkoss.zk.ui.AbstractComponent
-
onChildRemoved
public void onChildRemoved(org.zkoss.zk.ui.Component child)
- Specified by:
onChildRemovedin interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
onChildRemovedin classorg.zkoss.zk.ui.AbstractComponent
-
onPageAttached
public void onPageAttached(org.zkoss.zk.ui.Page newpage, org.zkoss.zk.ui.Page oldpage)- Specified by:
onPageAttachedin interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
onPageAttachedin classorg.zkoss.zk.ui.AbstractComponent
-
onPageDetached
public void onPageDetached(org.zkoss.zk.ui.Page page)
- Specified by:
onPageDetachedin interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
onPageDetachedin classorg.zkoss.zk.ui.AbstractComponent
-
clone
public java.lang.Object clone()
- Specified by:
clonein interfaceorg.zkoss.zk.ui.Component- Overrides:
clonein classorg.zkoss.zul.impl.XulElement
-
sessionWillPassivate
public void sessionWillPassivate(org.zkoss.zk.ui.Page page)
- Specified by:
sessionWillPassivatein interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
sessionWillPassivatein classorg.zkoss.zk.ui.AbstractComponent
-
sessionDidActivate
public void sessionDidActivate(org.zkoss.zk.ui.Page page)
- Specified by:
sessionDidActivatein interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
sessionDidActivatein classorg.zkoss.zk.ui.AbstractComponent
-
getModel
public <T> org.zkoss.zul.TreeModel<T> getModel()
Returns the tree model associated with this Organigram, or null if this Organigram is not associated with any tree data model.- Returns:
- the tree model associated with this Organigram
-
setModel
public void setModel(org.zkoss.zul.TreeModel<?> model)
Sets the tree model associated with this Organigram.- Parameters:
model- the tree model to associate, or null to dissociate any previous model.- Throws:
org.zkoss.zk.ui.UiException- if failed to initialize with the model
-
onInitRender
public void onInitRender()
Handles a private event, onInitRender. It is used only for implementation, and you rarely need to invoke it explicitly.
-
getItemRenderer
public <T> OrgitemRenderer<T> getItemRenderer()
Returns the renderer to render each item, or null if the default renderer is used.
-
setItemRenderer
public void setItemRenderer(OrgitemRenderer<?> renderer)
Sets the renderer which is used to render each item ifgetModel()is not null.Note: changing a render will cause the Organigram to re-render.
- Parameters:
renderer- the renderer, or null to use the default.
-
setItemRenderer
public void setItemRenderer(java.lang.String clsnm) throws java.lang.ClassNotFoundException, java.lang.NoSuchMethodException, java.lang.IllegalAccessException, java.lang.InstantiationException, java.lang.reflect.InvocationTargetExceptionSets the renderer by use of a class name. It creates an instance automatically.- Parameters:
clsnm- the class name of renderer- Throws:
java.lang.ClassNotFoundExceptionjava.lang.NoSuchMethodExceptionjava.lang.IllegalAccessExceptionjava.lang.InstantiationExceptionjava.lang.reflect.InvocationTargetException
-
renderItem
public void renderItem(Orgitem item)
Renders the specifiedOrgitem, if not loaded yet, withgetItemRenderer().It does nothing if
getModel()returns null.- Parameters:
item- the item to be rendered
-
service
public void service(org.zkoss.zk.au.AuRequest request, boolean everError)- Specified by:
servicein interfaceorg.zkoss.zk.ui.sys.ComponentCtrl- Overrides:
servicein classorg.zkoss.zk.ui.HtmlBasedComponent
-
renderProperties
protected void renderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer) throws java.io.IOException- Overrides:
renderPropertiesin classorg.zkoss.zul.impl.XulElement- Throws:
java.io.IOException
-
getZclass
public java.lang.String getZclass()
- Overrides:
getZclassin classorg.zkoss.zk.ui.HtmlBasedComponent
-
-