Package org.zkoss.zuti.zul
Class ForEach
- java.lang.Object
-
- org.zkoss.zk.ui.AbstractComponent
-
- org.zkoss.zk.ui.HtmlShadowElement
-
- org.zkoss.zuti.zul.TemplateBasedShadowElement
-
- org.zkoss.zuti.zul.ForEach
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Component
,AfterCompose
,Scope
,ShadowElement
,ShadowElementCtrl
,ComponentCtrl
public class ForEach extends TemplateBasedShadowElement
The basic iteration tag, accepting many different collection types and supporting sub-setting and other functionality like JSTL's forEach- Since:
- 8.0.0
- Author:
- jumperchen
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.zkoss.zk.ui.HtmlShadowElement
HtmlShadowElement.Direction
-
Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent
AbstractComponent.Children, AbstractComponent.ForwardInfo, AbstractComponent.TargetInfo
-
-
Field Summary
Fields Modifier and Type Field Description protected ForEachListDataListener
_dataListener
-
Fields inherited from class org.zkoss.zuti.zul.TemplateBasedShadowElement
_dirtyBinding, ON_BINDING_READY, SHADOW_VARIABLE
-
Fields inherited from class org.zkoss.zk.ui.HtmlShadowElement
_afterComposed, _dynamicValue, BIND_ANNO, BINDER, INIT_ANNO, LOAD_ANNO, ON_REBUILD_SHADOW_TREE_LATER, REFERENCE_ANNO, SAVE_ANNO, SKIP_DISTRIBUTED_CHILDREN_PROPERTY_CHANGE
-
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_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 ForEach()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
compose(Component host)
Composes the shadow element.int
getBegin()
ForEachConverter
getDataConverter()
int
getEnd()
java.lang.Object
getItems()
PropertyAccess
getPropertyAccess(java.lang.String prop)
Returns the corresponding property access object from the given property name, if any.int
getStep()
java.lang.String
getVar()
java.lang.String
getVarStatus()
boolean
isDynamicValue()
Returns whether the shadow element contains a dynamic value, it means the shadow element cannot be destroyed after evaluated.protected boolean
isEffective()
Returns whether the shadow element is effectivevoid
onParentChanged(Component parent)
Called after the parent changed.void
removeFromParent()
void
setBegin(int begin)
void
setEnd(int end)
void
setItems(java.lang.Object items)
void
setStep(int step)
void
setVar(java.lang.String var)
void
setVarStatus(java.lang.String varStatus)
-
Methods inherited from class org.zkoss.zuti.zul.TemplateBasedShadowElement
addBindingListener, afterCompose, clone, detach, docheck0, isBindingReady, isDirtyBinding, onChildAdded, onChildRemoved, rebuildSubShadowTree, removeBindingListener
-
Methods inherited from class org.zkoss.zk.ui.HtmlShadowElement
afterHostChildAdded, afterHostChildRemoved, asShadow, beforeChildAdded, beforeHostChildAdded, beforeHostChildRemoved, beforeHostParentChanged, beforeParentChanged, clearChildren, destroyIndexCacheMap, getDistributedChildren, getFirstInsertion, getIndex, getIndexCacheMap, getLastInsertion, getNextInsertion, getNextInsertionComponentIfAny, getPreviousInsertion, getPreviousInsertionComponentIfAny, getShadowHost, getShadowHostIfAny, initClone, initIndexCacheMap, inRange, invalidate, isDynamicValue, mergeSubTree, mergeToHost, onHostAttached, onHostChildAdded, onHostChildRemoved, onHostDetached, recreate, resolveVariable, setDynamicValue, setParent, setPrevInsertion, setShadowHost, shrinkRange, stretchRange, toString, updateFirstInsertion, updateLastInsertion, updateNextInsertion, updatePreviousInsertion, updateSubBindingAnnotationCount
-
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, 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, getExtraCtrl, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getForwards, getId, 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, insertBefore, isChildable, isDisabledHostChanged, isInitialized, isInvalidated, isListenerAvailable, isVisible, onPageAttached, onPageDetached, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeCallback, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, renderProperties, renderPropertiesOnly, replace, response, response, response, service, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setClientDataAttribute, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, updateByClient, willPassivate, willPassivate, willSerialize, willSerialize
-
-
-
-
Field Detail
-
_dataListener
protected ForEachListDataListener _dataListener
-
-
Method Detail
-
setItems
public void setItems(java.lang.Object items)
-
getItems
public java.lang.Object getItems()
-
setBegin
public void setBegin(int begin)
-
getBegin
public int getBegin()
-
setEnd
public void setEnd(int end)
-
getEnd
public int getEnd()
-
setStep
public void setStep(int step)
-
getStep
public int getStep()
-
setVar
public void setVar(java.lang.String var)
-
getVar
public java.lang.String getVar()
-
setVarStatus
public void setVarStatus(java.lang.String varStatus)
-
getVarStatus
public java.lang.String getVarStatus()
-
getDataConverter
public ForEachConverter getDataConverter()
-
isEffective
protected boolean isEffective()
Description copied from class:HtmlShadowElement
Returns whether the shadow element is effective- Overrides:
isEffective
in classTemplateBasedShadowElement
-
compose
protected void compose(Component host)
Description copied from class:HtmlShadowElement
Composes the shadow element. It is called byHtmlShadowElement.afterCompose()
if the shadow host is not null. Otherwise, it will skip this method call.The second invocation is ignored. If you want to recreate child components, use
HtmlShadowElement.recreate()
instead.- Overrides:
compose
in classTemplateBasedShadowElement
- Parameters:
host
- the shadow host component, never null.
-
isDynamicValue
public boolean isDynamicValue()
Description copied from interface:ShadowElementCtrl
Returns whether the shadow element contains a dynamic value, it means the shadow element cannot be destroyed after evaluated.- Specified by:
isDynamicValue
in interfaceShadowElementCtrl
- Overrides:
isDynamicValue
in classTemplateBasedShadowElement
-
getPropertyAccess
public PropertyAccess getPropertyAccess(java.lang.String prop)
Description copied from interface:ComponentCtrl
Returns the corresponding property access object from the given property name, if any.- Specified by:
getPropertyAccess
in interfaceComponentCtrl
- Overrides:
getPropertyAccess
in classAbstractComponent
- Parameters:
prop
- the name of the property- Returns:
- null it means not to support for the property name.
-
removeFromParent
public void removeFromParent()
- Overrides:
removeFromParent
in classHtmlShadowElement
-
onParentChanged
public void onParentChanged(Component parent)
Description copied from interface:ComponentCtrl
Called after the parent changed. Usually,ComponentCtrl.onPageDetached(Page)
andComponentCtrl.onPageAttached(Page, Page)
cover all the cases, unless its page is not changed.- Specified by:
onParentChanged
in interfaceComponentCtrl
- Overrides:
onParentChanged
in classAbstractComponent
- Parameters:
parent
- the new parent. If null, it means detachment.
-
-