org.zkoss.zul
Class Button

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.Button
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, HtmlBasedComponent, Component, Disable, Scope, ComponentCtrl, Button, LabelElement, LabelImageElement, XulElement
Direct Known Subclasses:
Fileupload, MessageboxDlg.Button, Toolbarbutton

public class Button
extends LabelImageElement
implements Button

A button.

Default getZclass(): z-button.(since 3.5.0)

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
protected  java.lang.String _upload
           
 
Fields inherited from class org.zkoss.zk.ui.HtmlBasedComponent
_height, _left, _top, _width, _zclass
 
Fields inherited from class org.zkoss.zk.ui.AbstractComponent
_visible
 
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
Button()
           
Button(java.lang.String label)
           
Button(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 button.
 java.lang.String getDir()
          Returns the direction.
 java.lang.String getHref()
          Returns the href that the browser shall jump to, if an user clicks this button.
 java.lang.String getOrient()
          Returns the orient.
 int getTabindex()
          Returns the tab order of this component.
 java.lang.String getTarget()
          Returns the target frame or window.
 java.lang.String getUpload()
          Returns non-null if this button is used for file upload, or null otherwise.
 java.lang.String getZclass()
          Returns the ZK Cascading Style class(es) for this component.
protected  boolean isChildable()
          No child is allowed.
 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 setAutodisable(java.lang.String autodisable)
          Sets whether to disable the button after the user clicks it.
 void setDir(java.lang.String dir)
          Sets the direction.
 void setDisabled(boolean disabled)
          Sets whether it is disabled.
 void setHref(java.lang.String href)
          Sets the href.
 void setOrient(java.lang.String orient)
          Sets the orient.
 void setTabindex(int tabindex)
          Sets the tab order of this component.
 void setTarget(java.lang.String target)
          Sets the target frame or window.
 void setUpload(java.lang.String upload)
          Sets the JavaScript class at the client to handle the upload if this button is used for file upload.
 
Methods inherited from class org.zkoss.zul.impl.LabelImageElement
getHoverImage, getImage, getImageContent, getSrc, isImageAssigned, newExtraCtrl, setHoverImage, setHoverImageContent, setHoverImageContent, setImage, setImageContent, setImageContent, setSrc
 
Methods inherited from class org.zkoss.zul.impl.LabelElement
getLabel, setLabel
 
Methods inherited from class org.zkoss.zul.impl.XulElement
getAction, getContext, getCtrlKeys, getPopup, getTooltip, setAction, setContext, setContext, setCtrlKeys, setPopup, setPopup, setTooltip, setTooltip
 
Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent
focus, getDraggable, getDroppable, getHeight, getHflex, getLeft, getSclass, getStyle, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, service, setClass, setDraggable, setDroppable, setFocus, setHeight, setHflex, setLeft, setSclass, setStyle, setTooltiptext, setTop, setVflex, setWidth, setZclass, setZindex, setZIndex
 
Methods inherited from class org.zkoss.zk.ui.AbstractComponent
addAnnotation, addAnnotation, addClientEvent, addEventHandler, addEventListener, addForward, addForward, addForward, addForward, addMoved, addScopeListener, addSharedAnnotationMap, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, beforeParentChanged, clone, containsVariable, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableClientUpdate, equals, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotation, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getChildren, getClientEvents, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getExtraCtrl, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNamespace, getNextSibling, getPage, getParent, getPreviousSibling, getRoot, getSpaceOwner, getUuid, getVariable, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasFellow, hasFellow, insertBefore, invalidate, isInvalidated, isListenerAvailable, isVisible, newChildren, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, onWrongValue, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeChild, removeEventListener, removeForward, removeForward, removeScopeListener, render, render, render, response, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setVariable, setVisible, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, unsetVariable, updateByClient, willPassivate, willPassivate, willSerialize, willSerialize
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.zkoss.zul.impl.api.LabelImageElement
getHoverImage, getImage, getImageContent, setHoverImage, setHoverImageContent, setHoverImageContent, setImage, setImageContent, setImageContent
 
Methods inherited from interface org.zkoss.zul.impl.api.LabelElement
getLabel, setLabel
 
Methods inherited from interface org.zkoss.zul.impl.api.XulElement
getAction, getContext, getCtrlKeys, getPopup, getTooltip, setAction, setContext, setContext, setCtrlKeys, setPopup, setPopup, setTooltip, setTooltip
 
Methods inherited from interface org.zkoss.zk.ui.api.HtmlBasedComponent
focus, getHeight, getLeft, getSclass, getStyle, getTooltiptext, getTop, getWidth, getZindex, getZIndex, setDraggable, setDroppable, setFocus, setHeight, setLeft, setSclass, setStyle, setTooltiptext, setTop, setWidth, setZclass, setZindex, setZIndex
 
Methods inherited from interface org.zkoss.zk.ui.Component
addEventListener, addForward, addForward, addForward, addForward, appendChild, applyProperties, clone, containsVariable, detach, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getChildren, getDefinition, getDesktop, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNamespace, getNextSibling, getPage, getParent, getPreviousSibling, getRoot, getSpaceOwner, getUuid, getVariable, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttributeOrFellow, hasFellow, hasFellow, insertBefore, invalidate, isInvalidated, isListenerAvailable, isVisible, removeAttribute, removeAttribute, removeChild, removeEventListener, removeForward, removeForward, setAttribute, setAttribute, setAuService, setId, setMold, setPage, setPageBefore, setParent, setVariable, setVisible, setWidgetListener, setWidgetOverride, unsetVariable
 
Methods inherited from interface org.zkoss.zk.ui.ext.Scope
addScopeListener, getAttribute, hasAttribute, removeAttribute, removeScopeListener, setAttribute
 

Field Detail

_upload

protected java.lang.String _upload
Constructor Detail

Button

public Button()

Button

public Button(java.lang.String label)

Button

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

isDisabled

public boolean isDisabled()
Returns whether it is disabled.

Default: false.

Specified by:
isDisabled in interface Disable
Specified by:
isDisabled in interface Button

setDisabled

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

Specified by:
setDisabled in interface Disable
Specified by:
setDisabled in interface Button

getAutodisable

public java.lang.String getAutodisable()
Returns a list of component IDs that shall be disabled when the user clicks this button.

To represent the button itself, the developer can specify self. For example, <button id="ok" autodisable="self,cancel"/> is the same as <button id="ok" autodisable="ok,cancel"/> that will disable both the ok and cancel buttons when an user clicks it.

The button 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 button is disabled with this method.

However, if you prefer to enable them later manually, you can prefix with '+'. For example, <button 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

setAutodisable

public void setAutodisable(java.lang.String autodisable)
Sets whether to disable the button after the user clicks it.

Since:
5.0.0

getDir

public java.lang.String getDir()
Returns the direction.

Default: "normal".

Specified by:
getDir in interface Button

setDir

public void setDir(java.lang.String dir)
            throws WrongValueException
Sets the direction.

Specified by:
setDir in interface Button
Parameters:
dir - either "normal" or "reverse".
Throws:
WrongValueException

getOrient

public java.lang.String getOrient()
Returns the orient.

Default: "horizontal".

Specified by:
getOrient in interface Button

setOrient

public void setOrient(java.lang.String orient)
               throws WrongValueException
Sets the orient.

Specified by:
setOrient in interface Button
Parameters:
orient - either "horizontal" or "vertical".
Throws:
WrongValueException

getHref

public java.lang.String getHref()
Returns the href that the browser shall jump to, if an user clicks this button.

Default: null. If null, the button has no function unless you specify the onClick event listener.

If it is not null, the onClick event won't be sent.

Specified by:
getHref in interface Button

setHref

public void setHref(java.lang.String href)
Sets the href.

Specified by:
setHref in interface Button

getTarget

public java.lang.String getTarget()
Returns the target frame or window.

Note: it is useful only if href (setHref(java.lang.String)) is specified (i.e., use the onClick listener).

Default: null.

Specified by:
getTarget in interface Button

setTarget

public void setTarget(java.lang.String target)
Sets the target frame or window.

Specified by:
setTarget in interface Button
Parameters:
target - the name of the frame or window to hyperlink.

getTabindex

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

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

Specified by:
getTabindex in interface Button

setTabindex

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

Specified by:
setTabindex in interface Button
Throws:
WrongValueException

getUpload

public java.lang.String getUpload()
Returns non-null if this button is used for file upload, or null otherwise. Refer to setUpload(java.lang.String) for more details.

Since:
5.0.0

setUpload

public void setUpload(java.lang.String upload)
Sets the JavaScript class at the client to handle the upload if this button is used for file upload.

Default: null.

For example, the following example declares a button for file upload:

<button label="Upload" upload="true"
 onUpload="handle(event.media)"/>

As shown above, after the file is uploaded, an instance of UploadEvent is sent this component.

If you want to customize the handling of the file upload at the client, you can specify a JavaScript class when calling this method: <button upload="foo.Upload"/>

Another options for the upload can be specified as follows:

<button label="Upload" upload="true,maxsize=-1,native"

Parameters:
upload - a JavaScript class to handle the file upload at the client, or "true" if the default class is used, or null or "false" to disable the file download (and then this button behaves like a normal button).
Since:
5.0.0

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 Render Special Properties

Overrides:
renderProperties in class LabelImageElement
Throws:
java.io.IOException

getZclass

public java.lang.String getZclass()
Description copied from class: HtmlBasedComponent
Returns the ZK Cascading Style class(es) for this component. It usually depends on the implementation of the mold (@{link #getMold}).

Default: null (the default value depends on element).

HtmlBasedComponent.setZclass(java.lang.String)) will completely replace the default style of a component. In other words, the default style of a component is associated with the default value of HtmlBasedComponent.getZclass(). Once it is changed, the default style won't be applied at all. If you want to perform small adjustments, use HtmlBasedComponent.setSclass(java.lang.String) instead.

Specified by:
getZclass in interface HtmlBasedComponent
Overrides:
getZclass in class HtmlBasedComponent
See Also:
HtmlBasedComponent.getSclass()

isChildable

protected boolean isChildable()
No child is allowed.

Overrides:
isChildable in class AbstractComponent


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