Class Checkbox
- java.lang.Object
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Component
,Disable
,Scope
,ComponentCtrl
- Direct Known Subclasses:
Radio
public class Checkbox extends LabelImageElement implements Disable
A checkbox.Event:
- org.zkoss.zk.ui.event.CheckEvent is sent when a checkbox is checked or unchecked by user.
- Author:
- tomyeh
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Checkbox.State
This class is the return state for getState()-
Nested classes/interfaces inherited from class org.zkoss.zul.impl.LabelImageElement
LabelImageElement.ExtraCtrl
-
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.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_PAGE_ATTACHED, AFTER_PAGE_DETACHED, AFTER_PARENT_CHANGED, CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getAutodisable()
Returns a list of component IDs that shall be disabled when the user clicks this checkbox.java.lang.String
getName()
Returns the name of this component.Checkbox.State
getState()
Returns the current state according to isIndeterminate() and isChecked().<T> T
getValue()
Returns the value.java.lang.String
getZclass()
Returns the Style of checkbox labelboolean
isChecked()
Returns whether it is checked.protected boolean
isChildable()
Default: not childable.boolean
isDisabled()
Returns whether it is disabled.boolean
isIndeterminate()
Return whether checkbox is in indeterminate state.protected void
renderProperties(ContentRenderer renderer)
Renders the content of this component, excluding the enclosing tags and children.void
service(AuRequest request, boolean everError)
Processes an AU request.void
setAutodisable(java.lang.String autodisable)
Sets a list of component IDs that shall be disabled when the user clicks this checkbox.void
setChecked(boolean checked)
Sets whether it is checked, changing checked will set indeterminate to false.void
setDisabled(boolean disabled)
Sets whether it is disabled.void
setIndeterminate(boolean indeterminate)
Set whether checkbox is in indeterminate state.void
setMold(java.lang.String mold)
Sets the mold to render this component.void
setName(java.lang.String name)
Sets the name of this component.<T> void
setValue(T value)
Sets the value.protected void
updateByClient(java.lang.String name, java.lang.Object value)
Called when the widget running at the client asks the server to update a value.-
Methods inherited from class org.zkoss.zul.impl.LabelImageElement
clone, getExtraCtrl, getHoverImage, getHoverImageContent, getIconSclass, getIconSclasses, getIconTooltip, getIconTooltips, getImage, getImageContent, getPropertyAccess, isImageAssigned, setHoverImage, setHoverImageContent, setHoverImageContent, setIconSclass, setIconSclasses, setIconTooltip, setIconTooltips, setImage, setImageContent, setImageContent
-
Methods inherited from class org.zkoss.zul.impl.LabelElement
getLabel, renderCrawlable, setLabel
-
Methods inherited from class org.zkoss.zul.impl.XulElement
getContext, getCtrlKeys, getPopup, 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, 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, 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, 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, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize
-
-
-
-
Method Detail
-
isIndeterminate
public boolean isIndeterminate()
Return whether checkbox is in indeterminate state. Default: false.- Returns:
- true if checkbox is indeterminate
- Since:
- 8.6.0
-
setIndeterminate
public void setIndeterminate(boolean indeterminate)
Set whether checkbox is in indeterminate state.- Parameters:
indeterminate
- whether checkbox is indeterminate- Since:
- 8.6.0
-
getAutodisable
public java.lang.String getAutodisable()
Returns a list of component IDs that shall be disabled when the user clicks this checkbox.- Since:
- 6.0.0
-
setAutodisable
public void setAutodisable(java.lang.String autodisable)
Sets a list of component IDs that shall be disabled when the user clicks this checkbox.To represent the checkbox itself, the developer can specify
self
. For example,<checkbox id="ok" autodisable="self,cancel"/>
is the same as<checkbox id="ok" autodisable="ok,cancel"/>
that will disable both the ok and cancel checkboxes when an user clicks it.The checkbox being disabled will be enabled automatically once the client receives a response from the server. In other words, the server doesn't notice if a checkbox is disabled with this method.
However, if you prefer to enable them later manually, you can prefix with '+'. For example,
<checkbox id="ok" autodisable="+self,+cancel"/>
Then, you have to enable them manually such as
if (something_happened){ ok.setDisabled(false); cancel.setDisabled(false);
Default: null.
- Since:
- 5.0.0
-
isDisabled
public boolean isDisabled()
Returns whether it is disabled.Default: false.
- Specified by:
isDisabled
in interfaceDisable
-
setDisabled
public void setDisabled(boolean disabled)
Sets whether it is disabled.- Specified by:
setDisabled
in interfaceDisable
-
isChecked
public boolean isChecked()
Returns whether it is checked.Default: false.
-
setChecked
public void setChecked(boolean checked)
Sets whether it is checked, changing checked will set indeterminate to false.
-
getState
public Checkbox.State getState()
Returns the current state according to isIndeterminate() and isChecked().- Returns:
- CHECKED, UNCHECKED or INDETERMINATE
- Since:
- 9.0.0
-
getValue
public <T> T getValue()
Returns the value.Default: null. (since 6.5.0)
- Since:
- 5.0.4
-
setValue
public <T> void setValue(T value)
Sets the value.- Parameters:
value
- the value;- Since:
- 5.0.4
-
getName
public java.lang.String getName()
Returns the name of this component.Default: null.
Don't use this method if your application is purely based on ZK's event-driven model.
The name is used only to work with "legacy" Web application that handles user's request by servlets. It works only with HTTP/HTML-based browsers. It doesn't work with other kind of clients.
-
setName
public void setName(java.lang.String name)
Sets the name of this component.Don't use this method if your application is purely based on ZK's event-driven model.
The name is used only to work with "legacy" Web application that handles user's request by servlets. It works only with HTTP/HTML-based browsers. It doesn't work with other kind of clients.
- Parameters:
name
- the name of this component.
-
isChildable
protected boolean isChildable()
Default: not childable.- Overrides:
isChildable
in classAbstractComponent
-
setMold
public void setMold(java.lang.String mold)
Description copied from interface:Component
Sets the mold to render this component.- Specified by:
setMold
in interfaceComponent
- Overrides:
setMold
in classAbstractComponent
- Parameters:
mold
- the mold. If null or empty, "default" is assumed.- See Also:
ComponentDefinition
-
getZclass
public java.lang.String getZclass()
Returns the Style of checkbox labelDefault: "z-checkbox"
Since 3.5.1
- Overrides:
getZclass
in classHtmlBasedComponent
- See Also:
HtmlBasedComponent.getSclass()
-
renderProperties
protected void renderProperties(ContentRenderer renderer) throws java.io.IOException
Description copied from class:HtmlBasedComponent
Renders the content of this component, excluding the enclosing tags and children.- Overrides:
renderProperties
in classLabelImageElement
- Throws:
java.io.IOException
-
service
public void service(AuRequest request, boolean everError)
Processes an AU request.Default: in addition to what are handled by
HtmlBasedComponent.service(org.zkoss.zk.au.AuRequest, boolean)
, it also handles onCheck.- Specified by:
service
in interfaceComponentCtrl
- Overrides:
service
in classHtmlBasedComponent
everError
- whether any error ever occurred before processing this request.- Since:
- 5.0.0
- See Also:
AbstractComponent.setAuService(org.zkoss.zk.au.AuService)
-
updateByClient
protected void updateByClient(java.lang.String name, java.lang.Object value)
Description copied from class:AbstractComponent
Called when the widget running at the client asks the server to update a value. The update is caused by an AU request namedsetAttr
(by invoking zk.Widget's smartUpdate at client).By default, it does nothing but log a warning message, since it is not safe to allow the client to update a field arbitrary.
However, if you'd like to allow the update for a particular component you could do one of the following
- For component developers: override this method to update the field
directly. For example,
protected void updateByClient(String name, Object value) { if ("disabled".equals(name)) setDisabled(name, ((Boolean)value).booleanValue()); else super.updateByClient(name, value);
- For application developers: set an attribute called
org.zkoss.zk.ui.updateByClient
to be true. Then, this method will use reflection to find out the setter to update the value. Nothing happens if the method is not found.
Notice: this method will invoke
AbstractComponent.disableClientUpdate(boolean)
to disable any update to the client, when calling the setter.If you want to enable the client update for all instances of a given component (though not recommended for the security reason), you could refer to here.
See also zk.Widget.smartUpdate().
- Overrides:
updateByClient
in classAbstractComponent
- For component developers: override this method to update the field
directly. For example,
-
-