Package org.zkoss.zuti.zul
Class Choose
- java.lang.Object
-
- org.zkoss.zk.ui.AbstractComponent
-
- org.zkoss.zk.ui.HtmlShadowElement
-
- org.zkoss.zuti.zul.TemplateBasedShadowElement
-
- org.zkoss.zuti.zul.Choose
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,Component,AfterCompose,Scope,ShadowElement,ShadowElementCtrl,ComponentCtrl
public class Choose extends TemplateBasedShadowElement
The choose tag works like a Java switch statement in that it lets you choose between a number of alternatives. Where the switch statement has case statements, the choose tag has when tags. A a switch statement has default clause to specify a default action and similar way choose has otherwise as default clause.- Since:
- 8.0.0
- Author:
- jumperchen
- See Also:
When,Otherwise, 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 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 Choose()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbeforeChildAdded(Component child, Component refChild)Default: does nothing.java.lang.Objectclone()Clones the component.protected voidcompose(Component host)Composes the shadow element.voiddetach()Removes the relation points between shadow host and this shadow element.protected java.util.Set<java.lang.String>getDynamicKeys()booleanisDynamicValue()Returns whether the shadow element contains a dynamic value, it means the shadow element cannot be destroyed after evaluated.booleanisEffective()Returns whether the shadow element is effectivevoidmergeSubTree()Merge the all sub-tree into the parent's insertions, unlikeAbstractComponent.appendChild(Component)voidonChildRemoved(Component child)Default: handles special event listeners.protected voidrebuildSubShadowTree()Rebuilds the shadow tree if the shadow element contains a dynamic value, it should be alive, otherwise, it will be detached.voidrecreate()Detaches all child components and then recreate them by use ofHtmlShadowElement.compose(org.zkoss.zk.ui.Component).-
Methods inherited from class org.zkoss.zuti.zul.TemplateBasedShadowElement
addBindingListener, afterCompose, docheck0, isBindingReady, isDirtyBinding, onChildAdded, removeBindingListener
-
Methods inherited from class org.zkoss.zk.ui.HtmlShadowElement
afterHostChildAdded, afterHostChildRemoved, asShadow, beforeHostChildAdded, beforeHostChildRemoved, beforeHostParentChanged, beforeParentChanged, clearChildren, destroyIndexCacheMap, getDistributedChildren, getFirstInsertion, getIndex, getIndexCacheMap, getLastInsertion, getNextInsertion, getNextInsertionComponentIfAny, getPreviousInsertion, getPreviousInsertionComponentIfAny, getShadowHost, getShadowHostIfAny, initClone, initIndexCacheMap, inRange, invalidate, isDynamicValue, mergeToHost, onHostAttached, onHostChildAdded, onHostChildRemoved, onHostDetached, removeFromParent, 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, getPropertyAccess, 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, onParentChanged, 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
-
-
-
-
Method Detail
-
beforeChildAdded
public void beforeChildAdded(Component child, Component refChild)
Description copied from class:AbstractComponentDefault: does nothing.- Specified by:
beforeChildAddedin interfaceComponentCtrl- Overrides:
beforeChildAddedin classHtmlShadowElement- Parameters:
child- the child to be added (never null).refChild- another child component that the new child will be inserted before it. If null, the new child will be the last child.- See Also:
ComponentCtrl.beforeChildAdded(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component)
-
onChildRemoved
public void onChildRemoved(Component child)
Description copied from class:AbstractComponentDefault: handles special event listeners.- Specified by:
onChildRemovedin interfaceComponentCtrl- Overrides:
onChildRemovedin classTemplateBasedShadowElement- See Also:
ComponentCtrl.onChildRemoved(org.zkoss.zk.ui.Component)
-
compose
protected void compose(Component host)
Description copied from class:HtmlShadowElementComposes 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:
composein classTemplateBasedShadowElement- Parameters:
host- the shadow host component, never null.
-
getDynamicKeys
protected java.util.Set<java.lang.String> getDynamicKeys()
-
isEffective
public boolean isEffective()
Description copied from class:HtmlShadowElementReturns whether the shadow element is effective- Overrides:
isEffectivein classTemplateBasedShadowElement
-
rebuildSubShadowTree
protected void rebuildSubShadowTree()
Description copied from class:HtmlShadowElementRebuilds the shadow tree if the shadow element contains a dynamic value, it should be alive, otherwise, it will be detached.- Overrides:
rebuildSubShadowTreein classTemplateBasedShadowElement
-
isDynamicValue
public boolean isDynamicValue()
Description copied from interface:ShadowElementCtrlReturns whether the shadow element contains a dynamic value, it means the shadow element cannot be destroyed after evaluated.- Specified by:
isDynamicValuein interfaceShadowElementCtrl- Overrides:
isDynamicValuein classTemplateBasedShadowElement
-
detach
public void detach()
Description copied from class:HtmlShadowElementRemoves the relation points between shadow host and this shadow element.- Specified by:
detachin interfaceComponent- Specified by:
detachin interfaceShadowElement- Overrides:
detachin classTemplateBasedShadowElement
-
mergeSubTree
public void mergeSubTree()
Description copied from class:HtmlShadowElementMerge the all sub-tree into the parent's insertions, unlikeAbstractComponent.appendChild(Component)- Overrides:
mergeSubTreein classHtmlShadowElement
-
clone
public java.lang.Object clone()
Description copied from interface:ComponentClones the component. All of its children and descendants are cloned. Also, ID are preserved.- Specified by:
clonein interfaceComponent- Overrides:
clonein classTemplateBasedShadowElement- Returns:
- the new component. Notice that it doesn't belong to any page, nor desktop. It doesn't have a parent, either.
-
recreate
public void recreate()
Description copied from class:HtmlShadowElementDetaches all child components and then recreate them by use ofHtmlShadowElement.compose(org.zkoss.zk.ui.Component).- Specified by:
recreatein interfaceShadowElement- Overrides:
recreatein classHtmlShadowElement
-
-