Package org.zkoss.zul

Class Decimalbox

All Implemented Interfaces:
Serializable, Cloneable, org.zkoss.zk.ui.Component, org.zkoss.zk.ui.ext.Disable, org.zkoss.zk.ui.ext.Readonly, org.zkoss.zk.ui.ext.Scope, org.zkoss.zk.ui.sys.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:
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.zkoss.zk.ui.HtmlBasedComponent

    org.zkoss.zk.ui.HtmlBasedComponent.ExtraCtrl

    Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent

    org.zkoss.zk.ui.AbstractComponent.Children, org.zkoss.zk.ui.AbstractComponent.ForwardInfo, org.zkoss.zk.ui.AbstractComponent.TargetInfo
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    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

    _cols, _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

    AFTER_CHILD_ADDED, AFTER_CHILD_REMOVED, AFTER_CLONED, 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
     
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Object
    Coerces the value passed to InputElement.setText(java.lang.String).
    protected String
    Coerces the value passed to InputElement.setText(java.lang.String).
    double
    Returns the value in double.
    org.zkoss.zk.ui.sys.PropertyAccess
     
    int
    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).
    Returns the value (in BigDecimal), might be null unless a constraint stops it.
     
    int
    Returns the value in integer.
    long
    Returns the value in long.
    protected Object
    Marshall value to be sent to the client if needed.
    protected void
    renderProperties(org.zkoss.zk.ui.sys.ContentRenderer renderer)
     
    void
     
    void
    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
     
    void
    Sets the value (in BigDecimal).
    short
    Returns the value in short.
    protected Object
    Unmarshall value returned from client if needed.

    Methods inherited from class org.zkoss.zul.impl.FormatInputElement

    getFormat, getRealFormat, setFormat

    Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent

    addSclass, evalCSSFlex, focus, getAction, getClientAction, getDraggable, getDroppable, getExtraCtrl, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getSkeleton, 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, setSkeleton, 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, getStubonlyDescendants, 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, 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, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setStubonlyDescendants, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

  • Constructor Details

    • Decimalbox

      public Decimalbox()
    • Decimalbox

      public Decimalbox(BigDecimal value) throws org.zkoss.zk.ui.WrongValueException
      Throws:
      org.zkoss.zk.ui.WrongValueException
  • Method Details

    • getValue

      public BigDecimal getValue() throws org.zkoss.zk.ui.WrongValueException
      Returns the value (in BigDecimal), might be null unless a constraint stops it.
      Throws:
      org.zkoss.zk.ui.WrongValueException - if user entered a wrong value
    • doubleValue

      public double doubleValue() throws org.zkoss.zk.ui.WrongValueException
      Returns the value in double. If null, zero is returned.
      Throws:
      org.zkoss.zk.ui.WrongValueException
    • intValue

      public int intValue() throws org.zkoss.zk.ui.WrongValueException
      Returns the value in integer. If null, zero is returned.
      Throws:
      org.zkoss.zk.ui.WrongValueException
    • longValue

      public long longValue() throws org.zkoss.zk.ui.WrongValueException
      Returns the value in long. If null, zero is returned.
      Throws:
      org.zkoss.zk.ui.WrongValueException
    • shortValue

      public short shortValue() throws org.zkoss.zk.ui.WrongValueException
      Returns the value in short. If null, zero is returned.
      Throws:
      org.zkoss.zk.ui.WrongValueException
    • setValue

      public void setValue(BigDecimal value) throws org.zkoss.zk.ui.WrongValueException
      Sets the value (in BigDecimal).
      Throws:
      org.zkoss.zk.ui.WrongValueException - if value is wrong
    • setValue

      public void setValue(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 String getZclass()
      Overrides:
      getZclass in class org.zkoss.zk.ui.HtmlBasedComponent
    • marshall

      protected Object marshall(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 Object unmarshall(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(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:
    • setConstraint

      public void setConstraint(String constr)
      Overrides:
      setConstraint in class InputElement
      Parameters:
      constr - a list of constraints separated by comma. Example: no positive, no zero
      Since:
      10.2.0
    • coerceFromString

      protected Object coerceFromString(String value) throws org.zkoss.zk.ui.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:
      org.zkoss.zk.ui.WrongValueException
    • coerceToString

      protected String coerceToString(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(org.zkoss.zk.ui.sys.ContentRenderer renderer) throws IOException
      Overrides:
      renderProperties in class NumberInputElement
      Throws:
      IOException
    • getPropertyAccess

      public org.zkoss.zk.ui.sys.PropertyAccess getPropertyAccess(String prop)
      Specified by:
      getPropertyAccess in interface org.zkoss.zk.ui.sys.ComponentCtrl
      Overrides:
      getPropertyAccess in class NumberInputElement