org.zkoss.zul
Class Decimalbox

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.InputElement
                  extended by org.zkoss.zul.impl.FormatInputElement
                      extended by org.zkoss.zul.impl.NumberInputElement
                          extended by org.zkoss.zul.Decimalbox
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Component, Disable, Readonly, Scope, ComponentCtrl, Constrainted

public class Decimalbox
extends NumberInputElement

An edit box for holding BigDecimal.

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

Author:
tomyeh
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.zkoss.zk.ui.HtmlBasedComponent
HtmlBasedComponent.ExtraCtrl
 
Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent
AbstractComponent.Children
 
Field Summary
static int AUTO
          Used with setScale(int) to denote that the scale is decided by what user has entered.
 
Fields inherited from class org.zkoss.zul.impl.InputElement
_value
 
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
Decimalbox()
           
Decimalbox(java.math.BigDecimal value)
           
 
Method Summary
protected  java.lang.Object coerceFromString(java.lang.String value)
          Coerces the value passed to InputElement.setText(java.lang.String).
protected  java.lang.String coerceToString(java.lang.Object value)
          Coerces the value passed to InputElement.setText(java.lang.String).
 double doubleValue()
          Returns the value in double.
 int getScale()
          Returns the scale for the decimal number storing in this component, or AUTO if the scale is decided automatically (based on what user has entered).
 java.math.BigDecimal getValue()
          Returns the value (in BigDecimal), might be null unless a constraint stops it.
 java.lang.String getZclass()
          Returns the ZK Cascading Style class(es) for this component.
 int intValue()
          Returns the value in integer.
 long longValue()
          Returns the value in long.
protected  java.lang.Object marshall(java.lang.Object value)
          Marshall value to be sent to the client if needed.
protected  void renderProperties(ContentRenderer renderer)
          Renders the content of this component, excluding the enclosing tags and children.
 void setRawValue(java.lang.Object value)
          Sets the raw value directly.
 void setScale(int scale)
          Sets the scale for the decimal number storing in this component, or AUTO if the scale is decided automatically (based on what user has entered).
 void setValue(java.math.BigDecimal value)
          Sets the value (in BigDecimal).
 void setValue(java.lang.String str)
           
 short shortValue()
          Returns the value in short.
protected  java.lang.Object unmarshall(java.lang.Object value)
          Unmarshall value returned from client if needed.
 
Methods inherited from class org.zkoss.zul.impl.NumberInputElement
formatNumber, getDefaultFormat, getDefaultLocale, getLocale, getRoundingMode, setLocale, setLocale, setRoundingMode, setRoundingMode, toNumberOnly
 
Methods inherited from class org.zkoss.zul.impl.FormatInputElement
getFormat, getRealFormat, setFormat
 
Methods inherited from class org.zkoss.zul.impl.InputElement
checkUserError, clearErrorMessage, clearErrorMessage, clone, getCols, getConstraint, getErrorMessage, getInstant, getMaxlength, getName, getPlaceholder, getRawText, getRawValue, getTabindex, getTargetValue, getText, getType, isChildable, isDisabled, isInplace, isMultiline, isReadonly, isValid, onWrongValue, select, service, setCols, setConstraint, setConstraint, setDisabled, setErrorMessage, setInplace, setInstant, setMaxlength, setName, setPlaceholder, setReadonly, setSelectedText, setSelectionRange, setTabindex, setText, setValueDirectly, showCustomError, validate
 
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, getExtraCtrl, 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, addScopeListener, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, beforeParentChanged, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableClientUpdate, equals, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotation, getAnnotations, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getChildren, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRoot, getSpaceOwner, getStubonly, getTemplate, getTemplateNames, getUuid, getWidgetAttribute, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasFellow, hasFellow, insertBefore, invalidate, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeChild, removeEventListener, removeForward, removeForward, removeScopeListener, render, render, render, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setTemplate, setVisible, setVisibleDirectly, setWidgetAttribute, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, willPassivate, willPassivate, willSerialize, willSerialize
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

AUTO

public static final int AUTO
Used with setScale(int) to denote that the scale is decided by what user has entered.

See Also:
Constant Field Values
Constructor Detail

Decimalbox

public Decimalbox()

Decimalbox

public Decimalbox(java.math.BigDecimal value)
           throws WrongValueException
Throws:
WrongValueException
Method Detail

getValue

public java.math.BigDecimal getValue()
                              throws WrongValueException
Returns the value (in BigDecimal), might be null unless a constraint stops it.

Throws:
WrongValueException - if user entered a wrong value

doubleValue

public double doubleValue()
                   throws WrongValueException
Returns the value in double. If null, zero is returned.

Throws:
WrongValueException

intValue

public int intValue()
             throws WrongValueException
Returns the value in integer. If null, zero is returned.

Throws:
WrongValueException

longValue

public long longValue()
               throws WrongValueException
Returns the value in long. If null, zero is returned.

Throws:
WrongValueException

shortValue

public short shortValue()
                 throws WrongValueException
Returns the value in short. If null, zero is returned.

Throws:
WrongValueException

setValue

public void setValue(java.math.BigDecimal value)
              throws WrongValueException
Sets the value (in BigDecimal).

Throws:
WrongValueException - if value is wrong

setValue

public void setValue(java.lang.String str)

getScale

public int getScale()
Returns the scale for the decimal number storing in this component, or AUTO if the scale is decided automatically (based on what user has entered).

Default: AUTO.


setScale

public void setScale(int scale)
Sets the scale for the decimal number storing in this component, or AUTO if the scale is decided automatically (based on what user has entered).

For example, set the scale of 1234.1234 to 2, the result will be 1234.12

Default: AUTO.


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 (AbstractComponent.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.

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

marshall

protected java.lang.Object marshall(java.lang.Object value)
Description copied from class: InputElement
Marshall value to be sent to the client if needed.

Overrides it if the value to be sent to the client is not JSON Compatible.

Overrides:
marshall in class InputElement
Parameters:
value - the value to be sent to the client
Returns:
the marshalled value

unmarshall

protected java.lang.Object unmarshall(java.lang.Object value)
Description copied from class: InputElement
Unmarshall value returned from client if needed.

Overrides it if the value returned is not JSON Compatible.

Overrides:
unmarshall in class InputElement
Parameters:
value - the value returned from client
Returns:
the unmarshalled value

setRawValue

public void setRawValue(java.lang.Object value)
Description copied from class: InputElement
Sets the raw value directly. The caller must make sure the value is correct (or intend to be incorrect), because this method doesn't do any validation.

If you feel confusing with setValue, such as Textbox.setValue(java.lang.String), it is usually better to use setValue instead. This method is reserved for developer that really want to set an 'illegal' value (such as an empty string to a textbox with no-empty constraint).

Note: since 3.0.1, the value will be re-validate again if InputElement.getText() or others (such as Intbox.getValue()) is called. In other words, it is assumed that the specified value is not validated yet -- the same state when this component is created. If you want to avoid the re-validation, you have to invoke InputElement.clearErrorMessage().

Like setValue, the result is returned back to the server by calling InputElement.getText().

Overrides:
setRawValue in class InputElement
See Also:
InputElement.getRawValue()

coerceFromString

protected java.lang.Object coerceFromString(java.lang.String value)
                                     throws WrongValueException
Description copied from class: InputElement
Coerces the value passed to InputElement.setText(java.lang.String).

Deriving note:
If you want to store the value in other type, say BigDecimal, you have to override InputElement.coerceToString(java.lang.Object) and InputElement.coerceFromString(java.lang.String) to convert between a string and your targeting type.

Moreover, when Textbox is called, it calls this method with value = null. Derives shall handle this case properly.

Specified by:
coerceFromString in class InputElement
Throws:
WrongValueException

coerceToString

protected java.lang.String coerceToString(java.lang.Object value)
Description copied from class: InputElement
Coerces the value passed to InputElement.setText(java.lang.String).

Default: convert null to an empty string.

Deriving note:
If you want to store the value in other type, say BigDecimal, you have to override InputElement.coerceToString(java.lang.Object) and InputElement.coerceFromString(java.lang.String) to convert between a string and your targeting type.

Specified by:
coerceToString in class InputElement

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 NumberInputElement
Throws:
java.io.IOException


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