org.zkoss.zul
Class Checkbox

java.lang.Object
  extended by org.zkoss.zk.ui.AbstractComponent
      extended by org.zkoss.zk.ui.HtmlBasedComponent
          extended by org.zkoss.zul.impl.XulElement
              extended by org.zkoss.zul.impl.LabelElement
                  extended by org.zkoss.zul.impl.LabelImageElement
                      extended by org.zkoss.zul.Checkbox
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:

  1. 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/interfaces inherited from class org.zkoss.zul.impl.LabelImageElement
LabelImageElement.ExtraCtrl
 
Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent
AbstractComponent.Children
 
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
CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE
 
Constructor Summary
Checkbox()
           
Checkbox(java.lang.String label)
           
Checkbox(java.lang.String label, java.lang.String image)
           
 
Method Summary
 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.
 int getTabindex()
          Returns the tab order of this component.
<T> T
getValue()
          Returns the value.
 java.lang.String getZclass()
          Returns the Style of checkbox label Default: "z-checkbox" Since 3.5.1
 boolean isChecked()
          Returns whether it is checked.
protected  boolean isChildable()
          Default: not childable.
 boolean isDisabled()
          Returns whether it is disabled.
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.
 void setDisabled(boolean disabled)
          Sets whether it is disabled.
 void setName(java.lang.String name)
          Sets the name of this component.
 void setTabindex(int tabindex)
          Sets the tab order 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, getImage, getImageContent, getSrc, isImageAssigned, setHoverImage, setHoverImageContent, setHoverImageContent, setIconSclass, setImage, setImageContent, setImageContent, setSrc
 
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, setCtrlKeys, setPopup, setPopup, setTooltip, setTooltip
 
Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent
focus, getAction, getDraggable, getDroppable, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, setAction, setClass, setDraggable, setDroppable, setFocus, setHeight, setHeightDirectly, setHflex, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTooltiptext, setTop, setTopDirectly, setVflex, setWidth, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectly
 
Methods inherited from class org.zkoss.zk.ui.AbstractComponent
addAnnotation, addAnnotation, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addRedrawCallback, addScopeListener, addShadowRoot, addShadowRootBefore, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, beforeParentChanged, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableBindingAnnotation, disableClientUpdate, enableBindingAnnotation, equals, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotation, getAnnotations, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getChildren, getClientAttribute, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRedrawCallback, getRoot, getShadowRoots, getShadowVariable, getShadowVariable0, getSpaceOwner, getSpecialRendererOutput, getStubonly, getSubBindingAnnotationCount, getTemplate, getTemplateNames, getUuid, getWidgetAttribute, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasBindingAnnotation, hasFellow, hasFellow, hasSubBindingAnnotation, insertBefore, invalidate, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetAttribute, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Checkbox

public Checkbox()

Checkbox

public Checkbox(java.lang.String label)

Checkbox

public Checkbox(java.lang.String label,
                java.lang.String image)
Method Detail

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 interface Disable

setDisabled

public void setDisabled(boolean disabled)
Sets whether it is disabled.

Specified by:
setDisabled in interface Disable

isChecked

public boolean isChecked()
Returns whether it is checked.

Default: false.


setChecked

public void setChecked(boolean checked)
Sets whether it is checked.


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.

getTabindex

public int getTabindex()
Returns the tab order of this component.

Default: 0 (means the same as browser's default).


setTabindex

public void setTabindex(int tabindex)
                 throws WrongValueException
Sets the tab order of this component.

Throws:
WrongValueException

isChildable

protected boolean isChildable()
Default: not childable.

Overrides:
isChildable in class AbstractComponent

getZclass

public java.lang.String getZclass()
Returns the Style of checkbox label

Default: "z-checkbox"

Since 3.5.1

Overrides:
getZclass in class HtmlBasedComponent
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.

See also ZK Client-side Reference: Property Rendering

Overrides:
renderProperties in class LabelImageElement
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 interface ComponentCtrl
Overrides:
service in class HtmlBasedComponent
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 named setAttr (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

  1. 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);
  2. 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.
  3. 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 class AbstractComponent


Copyright © 2005-2011 Potix Corporation. All Rights Reserved. SourceForge.net Logo